October 27, 2020

Out Here In The Fields

…of musings and ramblings

Installing Kie Server & Drools Workbench Part 1: WildFly Application Server

4 min read

Red Hat Decision Manager (RHDM) is great BRMS platform. But as affordable as Red Hat subscription compared to its’ Oracle or IBM counterparts, it’s still not cheap. Alternatively, or if you think you’re too cool for enterprise support, you can start with Drools and when you or your organization decide the platform is essential enough to warrant the cost for enterprise level support, You can obtain RHDM  subscription from Red Hat.

For this post, we will be using:

The first part of this two parter will cover WildFly Application Server installation.

Installing Java and other tools

You can either use Oracle Java, or as what I’m using for this post, OpenJDK by doing:

[root@devdm ~]# yum install java

For the sake of this tutorial, we’ll be needing wget, netstat, and unzip as well:

[root@devdm ~]# yum install wget net-tools unzip
Installing WildFly 11

Get WildFly 11 installer:

[root@devdm ~]# wget http://download.jboss.org/wildfly/11.0.0.Final/wildfly-11.0.0.Final.zip

Unzip the… zipped package

[root@devdm ~]# unzip wildfly-11.0.0.Final.zip

..and move and rename the package:

[root@devdm ~]# cp -R wildfly-11.0.0.Final /opt/wildfly11

Let’s make some change to startup script:

[root@devdm ~]# vi /opt/wildfly11/bin/standalone.conf

There are a couple of things we need to set on standalone.conf. The first is the path for JAVA_HOME which should point to your java installation, and JBOSS_HOME which you should point to the WildFly install directory. Mine look like this

JAVA_HOME="/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.181-3.b13.el7_5.x86_64/jre"
JBOSS_HOME="/opt/wildfly11"

Next, we need to update the network configuration by editing:

vi /opt/wildfly11/standalone/configuration/standalone.xml

Find these lines, and change the  “127.0.0.1” to “0.0.0.0”  so that our wildfly install can accept traffic from any interface on the server.  Don’t forget to save.

<wsdl-host>${jboss.bind.address:0.0.0.0}</wsdl-host>
<inet-address value="${jboss.bind.address.management:0.0.0.0}"/>
<inet-address value="${jboss.bind.address:0.0.0.0}"/>

Create management account for WildFly by executing:

[root@devdm ~]# cd /opt/wildfly11/bin/
[root@devdm bin]# ./add-user.sh

I’ll highlight the option we should pick:

[root@devdm bin]# ./add-user.sh

What type of user do you wish to add? 
a) Management User (mgmt-users.properties) 
b) Application User (application-users.properties)
(a): a

Enter the details of the new user to add.
Using realm 'ManagementRealm' as discovered from the existing property files.
Username : manager
Password recommendations are listed below. To modify these restrictions edit the add-user.properties configuration file.
- The password should be different from the username
- The password should not be one of the following restricted values {root, admin, administrator}
- The password should contain at least 8 characters, 1 alphabetic character(s), 1 digit(s), 1 non-alphanumeric symbol(s)
Password : 
Re-enter Password : 
What groups do you want this user to belong to? (Please enter a comma separated list, or leave blank for none)[ ]: admin
About to add user 'manager' for realm 'ManagementRealm'
Is this correct yes/no? yes
Added user 'manager' to file '/opt/wildfly11/standalone/configuration/mgmt-users.properties'
Added user 'manager' to file '/opt/wildfly11/domain/configuration/mgmt-users.properties'
Added user 'manager' with groups admin to file '/opt/wildfly11/standalone/configuration/mgmt-groups.properties'
Added user 'manager' with groups admin to file '/opt/wildfly11/domain/configuration/mgmt-groups.properties'
Is this new user going to be used for one AS process to connect to another AS process? 
e.g. for a slave host controller connecting to the master or for a Remoting connection for server to server EJB calls.
yes/no? yes
To represent the user add the following to the server-identities definition <secret value="ErVteG5vUtynrZTQ5NiE=" />

Before we fire up our WildFly install, let’s open up some port on our firewall:

firewall-cmd --zone=public --add-port=8080/tcp --permanent 
firewall-cmd --zone=public --add-port=9990/tcp --permanent 
firewall-cmd --reload

Save, and let’s try starting up our WildFly instance

[root@devdm ~]# cd /opt/wildfly11/bin/
[root@devdm bin]# nohup ./standalone.sh &

If it’s up, nohup.out should show:

12:11:37,973 INFO [org.jboss.as] (Controller Boot Thread) WFLYSRV0025: WildFly Full 11.0.0.Final (WildFly Core 3.0.8.Final) started in 6918ms - Started 292 of 553 services (347 services are lazy, passive or on-demand)

You can also check whether WildFly is listening on the configured ports

[root@devdm /]# netstat -plnt
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name 
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1200/master 
tcp 0 0 0.0.0.0:8443 0.0.0.0:* LISTEN 1710/java 
tcp 0 0 0.0.0.0:9990 0.0.0.0:* LISTEN 1710/java 
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 1710/java 
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 983/sshd 
tcp6 0 0 ::1:25 :::* LISTEN 1200/master 
tcp6 0 0 :::22 :::* LISTEN 983/sshd

Point your browser to http://your.server.ip.address:8080 to get to your WildFly installation


And click on the “Administration Console” link to get to…the… Administration Console. Input the ManagementRealm user and password when prompted:

We are now ready to deploy the kie-server and Drools Workbench. On to part 2!

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Copyright © All rights reserved. | Newsphere by AF themes.