JBoss EAP Scripts

Scripts for JBoss Cluster Application Server

Cluster setup for JBoss can be configured in All Components Setup or Separate Component topology.

All Components topology:

  • VM 1 is Domain Controller, Host Controller, and Service Link for Host 1
  • VM 2 is Host Controller for Host 2

Separate Component topology:

  • VM 1 is Domain Controller
  • VM 2 is Service Link
  • VM 3 is Host Controller for Host 1
  • VM 4 is Host Controller for Host 2

 

Table B-1 Scripts for JBoss EAP Cluster Application Server

Scripts
Execute On
Description
All Components Setup Cluster Topology:
VVM1 is Domain Controller, Host 1 with RC and Service Link on HostSL and VM2 is Host2 with RC

startServiceCatalogCluster

VM1

Start the following servers on VM1: a) Domain Controller, b) Process Controller, c) Managed server for Service Link, d) Managed server for Service Catalog.


Note startServiceCatalogCluster script is used to check whether the exploded $JBOSS_HOME/content/RequestCenter.war and $JBOSS_HOME/content/ISEE.war are already available. If yes, then the script will not create the content folder. If not, then it will explode the WAR files from /dist folder and create the content folder under these directories. This is applicable for VM1 and VM2 in All Components topology and for VM 3 and VM 4 in Separate Component topology.


 

startServiceCatalogOnHC1

VM1

Start the Managed server for Service Catalog on VM1

startServiceLinkOnHC1

VM1

Start the Managed server for Service Link on VM1.

startServiceCatalogOnHC2

VM1

Start the Managed server for Service Catalog on VM2.

startServiceCatalogOnHC3

VM1

Start the Managed server for Service Catalog on VM3. (Reserved for when user wants to add Host Controller 3.)

startServiceCatalogOnHC4

VM1

Start the Managed server for Service Catalog on VM4. (Reserved for when user wants to add Host Controller 4.)

startServiceCatalogOnHC5

VM1

Start the Managed server for Service Catalog on VM5. (Reserved for when user wants to add Host Controller 5.)

startServiceCatalogOnHC6

VM1

Start the Managed server for Service Catalog on VM6. (Reserved for when user wants to add Host Controller 6.)

deployServiceCatalogCluster all

VM1

Deploy the followings: a) ISEE.war, b) RequestCenter.war

deployServiceCatalogCluster RC

VM1

Deploy RequestCenter.war

deployServiceCatalogCluster SL

VM1

Deploy ISEE.war

shutdownAllOnHC1

VM1

Stop the following servers on VM1: a) Domain Controller, b) Process Controller, c) Managed server for Service Link, d) Managed server for Service Catalog.


Note After running this script, a message “press a key to continue” is displayed at the end of console log of host controller saying. To shutdown the HC, press any key and to exit this window hit Ctrl+C.


forceStopAllOnHC

VM1

If for some reasons, the shutDownAllOnHC1 script doesn't work, then execute this script to force stop the following servers on VM1: a) Domain Controller, b) Process Controller, c) Managed server for Service Link, d) Managed server for Service Catalog

stopServiceCatalogOnHC1

VM1

Stop the Managed server for Service Catalog on VM1.

stopServiceLinkOnHC1

VM1

Stop the Managed server for Service Link on VM1.

stopServiceCatalogOnHC2

VM1

Stop the Managed server for Service Catalog on VM2.

shutdownAllOnHC2

VM1

Stop both the Process Controller and the Managed server on VM2.

stopServiceCatalogOnHC3

VM1

Stop the Managed server for Service Catalog on VM3. (Reserved for when user wants to add HC3.)

shutdownAllOnHC3

VM1

Stop both the Process Controller and the Managed server on VM3. (Reserved for when user wants to add HC3.)

stopServiceCatalogOnHC4

VM1

Stop the Managed server for Service Catalog on VM4. (Reserved for when user wants to add HC4.)

shutdownAllOnHC4

VM1

Stop both the Process Controller and the Managed server on VM4. (Reserved for when user wants to add HC4.)

stopServiceCatalogOnHC5

VM1

Stop the Managed server for Service Catalog on VM5. (Reserved for when user wants to add HC5.)

shutdownAllOnHC5

VM1

Stop both the Process Controller and the Managed server on VM5. (Reserved for when user wants to add HC5.)

stopServiceCatalogOnHC6

VM1

Stop the Managed server for Service Catalog on VM6. (Reserved for when user wants to add HC6.)

shutdownAllOnHC6

VM1

Stop both the Process Controller and the Managed server on VM6. (Reserved for when user wants to add HC6.)

undeployServiceCatalogCluster all

VM1

Undeploy the followings: a) ISEE.war, b) RequestCenter.war

undeployServiceCatalogCluster RC

VM1

Undeploy RequestCenter.war

undeployServiceCatalogCluster SL

VM1

Undeploy ISEE.war

pre-customizationOnDC.cmd ALL

VM1

Take a backup of the RC.war and/or new ISEE.war. Create a folder /temp under the installation directory and unzips the RC and ISEE for customization.

post-customizationOnDC.cmd

VM1

Delete the RC and ISEE from dist and the old content directory. Create a new RC.war and ISEE.war using the customized files in /temp. Move the newly created RC.war and ISEE war to dist folder. Create content folders with new RC.war and new ISEE.war

killalljava

VM1

Kill all running Java processes

startServiceCatalogCluster

VM2

Start the following servers: a) Process Controller, b) Managed server for Service Catalog.

The script is used to check whether the exploded $JBOSS_HOME/content/RequestCenter.war and $JBOSS_HOME/content/ISEE.war are already available. If yes, then the script will not create the content folder. If not, then it will explode the WAR files from /dist folder and create the content folder under these directories.

forceStopAllOnHC

VM2

Force stop: a) Process Controller, b) Managed server for Service Catalog.

apply-customizationOnRC

VM2

Apply all new RC.war content in the Node2 RC.war

 

If customer adds another VM as HC3

startServiceCatalogCluster

VM3

Start the following servers: a) Process Controller, b) Managed server for Service Catalog.

forceStopAllOnHC

VM3

Force stop: a) Process Controller, b) Managed server for Service Catalog.

apply-customizationOnRC.cmd

VM3

Apply all new RC.war content in the Node2 RC.war

If customer adds another VM as HC4

startServiceCatalogCluster

VM4

Start the following servers: a) Process Controller, b) Managed server for Service Catalog.

forceStopAllOnHC

VM4

Force stop: a) Process Controller, b) Managed server for Service Catalog.

apply-customizationOnRC.cmd

VM4

Apply all new RC.war content in the Node2 RC.war

If customer adds another VM as HC5

startServiceCatalogCluster

VM5

Start the following servers: a) Process Controller, b) Managed server for Service Catalog.

forceStopAllOnHC

VM5

Force stop: a) Process Controller, b) Managed server for Service Catalog.

apply-customizationOnRC.cmd

VM5

Apply all new RC.war content in the Node2 RC.war

If customer adds another VM as HC6

startServiceCatalogCluster

VM6

Start the following servers: a) Process Controller, b) Managed server for Service Catalog.

forceStopAllOnHC

VM6

Force stop: a) Process Controller, b) Managed server for Service Catalog.

apply-customizationOnRC.cmd

VM6

Apply all new RC.war content in the Node2 RC.war

Separate Component Cluster Topology:
VM1 is Domain Controller, VM2 for Service Link, VM3 is HC1, VM4 is HC2

startServiceCatalogCluster

VM1

Start the Domain Controller on VM1.

startServiceCatalogOnHC1

VM1

Start the Managed server for Service Catalog on VM3.

startServiceCatalogOnHC2

VM1

Start the Managed server for Service Catalog on VM4.

startServiceCatalogOnHC3

VM1

Start the Managed server for Service Catalog on VM5. (Reserved for when user wants to add HC3.)

startServiceCatalogOnHC4

VM1

Start the Managed server for Service Catalog on VM6. (Reserved for when user wants to add HC4.)

deployServiceCatalogCluster RC

VM1

Deploy RequestCenter.war

stopDomainController

VM1

Stop the Domain Controller on VM1.

stopServiceCatalogOnHC1

VM1

Stop the Managed server for Service Catalog on VM3.

shutdownAllOnHC1

VM1

Stop both the Process Controller and the Managed server on VM3.

stopServiceCatalogOnHC2

VM1

Stop the Managed server for Service Catalog on VM4.

shutdownAllOnHC2

VM1

Stop both the Process Controller and the Managed server on VM4

stopServiceCatalogOnHC3

VM1

Stop the Managed server for Service Catalog on VM5. (Reserved for when user wants to add HC3.)

shutdownAllOnHC3

VM1

Stop both the Process Controller and the Managed server on VM5. (Reserved for when user wants to add HC3.)

stopServiceCatalogOnHC4

VM1

Stop the Managed server for Service Catalog on VM6. (Reserved for when user wants to add HC4.)

shutdownAllOnHC4

VM1

Stop both the Process Controller and the Managed server on VM6. (Reserved for when user wants to add HC4.)

undeployServiceCatalogCluster RC

VM1

Undeploy RequestCenter.war

startServiceLinkOnHC1

VM1

Start Service Link from Domain Controller.

stopServiceLinkOnHC1

VM1

Stop Service Link from Domain Controller.

killalljava

VM1

Kill all running Java processes

VM1 is Domain Controller, VM2 for Service Link, VM3 is HC1, and VM4 is HC2

apply-customizationOnSL

VM2

Apply customization on Node.

startServiceCatalogCluster

VM2

Start Service Link on VM2.

forceStopAllOnHC

VM2

Force stop: a) Process Controller, b) Managed server for Service Catalog.

VM1 is Domain Controller, VM2 for Service Link, VM3 is HC1, and VM4 is HC2

startServiceCatalogCluster

VM4

Start the following servers: a) Process Controller, b) Managed server for Service Catalog.

The script is used to check whether the exploded $JBOSS_HOME/content/RequestCenter.war and $JBOSS_HOME/content/ISEE.war are already available. If yes, then the script will not create the content folder. If not, then it will explode the WAR files from /dist folder and create the content folder under these directories.

forceStopAllOnHC

VM4

Force stop: a) Process Controller, b) Managed server for Service Catalog.

apply-customizationOnRC

VM4

Apply customization on Node.

If customer adds another VM as HC3

startServiceCatalogCluster

VM5

Start the following servers: a) Process Controller, b) Managed server for Service Catalog.

forceStopAllOnHC

VM5

Force stop: a) Process Controller, b) Managed server for Service Catalog.

apply-customizationOnRC

VM5

Apply customization on Node.

If customer adds another VM as HC4

startServiceCatalogCluster

VM6

Start the following servers: a) Process Controller, b) Managed server for Service Catalog.

forceStopAllOnHC

VM6

Force stop: a) Process Controller, b) Managed server for Service Catalog.

apply-customizationOnRC

VM6

Apply customization on Node.

Adding Subsequent Host Nodes Manually in JBoss Cluster

Before You Begin

1. Run the GUI Installer for the host controller setup on the subsequent node, vm<N>, where N is the number of the node.

2. Select the Host Controller in the Node Type Selection panel followed by Host1 as the cluster node.

3. Do not run any of the startup-scripts.


Step 1 Rename host1.xml to host<N>.xml. The file, host1.xml is present under the InstallationDirectory/jboss-eap-7.0/domain/configuration directory .

Step 2 Follow the below steps to create a new user:

a. Execute add-user.sh or add-user.bat script from InstallationDirectory/jboss-eap-7.0/bin location.

b. Enter a to select the Management User.

c. Provide HOST<N> as the Username.

d. Provide HOST<N> as the Password.

e. Enter yes to use the entered password.

f. Re-Enter HOST<N> for Password confirmation.

g. Press Enter to pass the management group information

h. Enter yes to add the user 'HOST<N>' for realm 'ManagementRealm'.

i. Enter no for the interconnection of AS process.


Note • The new user needs to be created in the machine having host Controller(host<N>) and domain controller (host1) as well.

  • Verify that the user is added in the InstallationDirectory/jboss-eap-7.0/domain/configuration/mgmt-users.properties


 

Step 3 Perform the following changes in host<N>.xml:

 

a. Change the name of Host from HOST1 to HOST<N>.location for host<N>.xml. This file is available in the C:\Installation_directory\jboss-eap-7.0\domain\configuration

<host name="HOST5" xmlns="urn:jboss:domain:2.2”>

 

b. Change the secret value in the <server-identities> section. The secret value can be obtained from the website www.motobit.com :

<secret value="SE9TVDU=“/>
 

Enter the URL http://www.motobit.com/util/base64-decoder-encoder.asp

•Enter HOST<N> in the text box (without any extra space or newline).

•Click on Convert the Source Data button.

 

c. Change the name of the server instance from server-host1-RC to server-host<N>-RC to avoid name conflicts:

<server name="server-host<N>-RC" group="main-server-group" auto-start="true”>
 

d. Change the CONTROLLER_TYPE from host1 to host<N> in setEnv.cmd script in InstallationDirectory/bin directory .

e. Delete the logs and servers directories from InstallationDirectory/jboss-eap-7.0/domain , if exists.

Step 4 The following changes need to be done in startServiceCatalogCluster.cmd script in InstallationDirectory/bin directory .

a. Add the following code snippet in BOLD in the script file:

#Below if condition is applicable for the windows OS platform
 
if "%CONTROLLER_TYPE%"=="host<N>" (
if exist "%JBOSS-EAP_BASE_DIR%\configuration\domain.xml" rename "%JBOSS-EAP_BASE_DIR%\configuration\domain.xml" "domain_backup.xml"
)
 
#Below if condition is applicable for the Linux OS platform
 
#pause 'Press [Enter] key to continue6...'
FILE=${JBOSS-EAP_BASE_DIR}/configuration/host<N>.xml
if [ "${CONTROLLER_TYPE}" == "host<N>" ]
then
if [ -f "$FILE" ]
then
/bin/mv -i ${JBOSS-EAP_BASE_DIR}/configuration/host<N>.xml ${JBOSS-EAP_BASE_DIR}/configuration/host.xml
fi
fi

 

b. Add the following code snippet in BOLD in the script file:

if "%CONTROLLER_TYPE%" =="host<N>" if exist "%JBOSS-EAP_BASE_DIR%\configuration\host<N>.xml" rename "%JBOSS-EAP_BASE_DIR%\configuration\host<N>.xml" "host.xml"
 
If the Platform is Linux OS , skip the step b and proceed. above if condition only applicable for the windows OS platform.
 

Step 5 Start the server with startServiceCatalogCluster.cmd or sh and once it is up, verify from the JBoss EAP admin server console under the domain whether the host<N> is registered.

Step 6 Addition of scripts for both 4-VM Cluster and 2-VM Cluster in the VM-1 machine (machine containing the domain controller)

a. Copy shutdownAllOnHC1.cmd and rename the copied script as shutdownAllOnHC<N>.cmd

b. Copy startServiceCatalogOnHC1.cmd and rename the copied script as s tartServiceCatalogOnHC<N>.cmd

c. Copy stopServiceCatalogOnHC1.cmd and rename the copied script as stopServiceCatalogOnHC<N>.cmd


Note In the Linux platform if new scripts does not have the read/write permission, you should manually assign the read/write permission before executing.


 

d. Perform the below operations in the stopServiceCatalogOnHC<N>.cmd script file cautiously:

    • Rename HOST1 to HOST<N>.
    • Rename host1 to host<N>.


 

Configuring Plugin for IIS Web Server

This section provides information on how to configure the plugin for IIS web server (version 8.x) on a Windows Server 2012 R2 machine to redirect to clustered JBoss EAP application servers (version 10.1.0.Final).

To configure plugin got IIS Web Server:


Step 1 Add Web Server Role for IIS.

Step 2 Install Tomcat Plugin.

Step 3 Copy WAR Directories.

Step 4 Create Virtual Directories for IIS.

Step 5 Modify Plugin Properties.

Step 6 Configure Instance-ID for JBoss EAP.

Step 7 Test IIS.


 

Add Web Server Role for IIS


Step 1 Navigate to Service Manager Dashboard > Manage Tab > Add Roles and Features.

Step 2 Add the role Web Server (IIS) on your Windows Server 2012 R2 operating system.
Make sure you select the ISAPI Extensions and ISAPI Filters role services when adding IIS.

Step 3 After adding the Web Server (IIS) Role, start the World Wide Web Publishing Service.

Step 4 Launch a browser and connect to URL = http://localhost.
You should see the Welcome IIS 8.x page.


 

Install Tomcat Plugin


Step 1 Download the PSC 12.x software package from cisco.com and extract it.

Step 2 Cd to <PSC_Software_Extract_Dir>\isapi directory.

Step 3 Copy file tomcat-isapi-redirector-v1.2.37.zip to your IIS web server machine and extract it under the C:\inetpub\isapi directory.


Note Create the isapi sub-directory under C:\inetpub first if necessary.


Step 4 Cd to C:\inetpub\isapi and rename the file isapi_redirect-1.2.37-win64.dll to isapi_redirect.dll.


 

Copy WAR Directories

If you have JBoss EAP installation and your IIS is on a separate machine from JBoss EAP, then perform the following steps to copy WAR directories:

Clustered JBoss EAP installation with Separate Component Topology


Step 1 On the JBoss EAP machine where one of the cluster nodes for RequestCenter is running, cd to the <PSC_Install_Dir>\jboss-eap-7.0\content directory.

Step 2 Copy the entire RequestCenter.war sub-directory from this machine to the IIS machine and place it under the C:\inetpub\WAR\ directory.

Step 3 On the JBoss EAP machine where the ServiceLink server is running, cd to the <PSC_Install_Dir>\jboss-eap-7.0\ServiceLinkServer\deployments directory.

Step 4 Copy the entire ServiceLink.war sub-directory from this machine to the IIS machine and place it under the C:\inetpub\WAR\ directory.


 

Clustered JBoss EAP installation with All Components Topology


Step 1 On the JBoss EAP machine that is the primary cluster node for RequestCenter, cd to the <PSC_Install_Dir>\jboss-eap-7.0\content directory.

Step 2 Copy the entire RequestCenter.war sub-directory from this machine to the IIS machine, and place it under the C:\inetpub\WAR\ directory.

Step 3 On the same JBoss EAP machine, cd to the <PSC_Install_Dir>\jboss-eap-7.0\content directory.

Step 4 Copy the entire ISEE.war sub-directory from this machine to the IIS machine and place it under the C:\inetpub\WAR directory.

Step 5 Rename the folder to C:\inetpub\WAR\ServiceLink.war.


 

Create Virtual Directories for IIS


Step 1 On the IIS machine, launch Internet Information Services (IIS) Manager.

Step 2 Choose Hostname > Sites > Default Web Site.

Step 3 Right click on the Default Web Site and select Add Virtual Directory.

Step 4 On the pop up window, enter the following values, and then click OK:

Alias = RequestCenter
Physical path = <Click the browse button, and select the
“C:\inetpub\WAR\RequestCenter.war” directory.>
 

Step 5 Right click on Default Web Site and select Add Virtual Directory to add another directory.

Step 6 On the pop up window, enter the following values, and then click OK:

Alias = IntegrationServer
Physical path = <Click the browse button, and select the
“C:\inetpub\WAR\ServiceLink.war” directory.>
 

Step 7 Right click on Default Web Site and select Add Virtual Directory to add another directory.

Step 8 On the display window, enter the following values, and then click OK:

Alias = tomcat
Physical path = C:\inetpub\isapi
 

Step 9 Click on Default Web Site node. And on the right pane, double click ISAPI Filters.

Step 10 Click Add link under the Actions column on the right pane.

Step 11 On the pop up window, enter the following values, and then click OK:

Filter name = tomcat
Executable = C:\inetpub\isapi\isapi_redirect.dll
 

Step 12 Click on Default Web Site node. And on the right panel, double click Handler Mappings.

Step 13 Click the Edit Feature Permissions link under the Actions column on the right pane.

Step 14 On the pop up window, select all Read, Script and Execute check boxes, and then click OK.

Step 15 Click on the Hostname node. On the right panel, double click on ISAPI and CGI Restrictions.


Note The Hostname node is the parent node of sites.


Step 16 Click the Add link under the Actions column on the right most pane.

Step 17 On the display window, enter the following values, and then click OK:

ISAPI or CGI path = C:\inetpub\isapi\isapi_redirect.dll
Description = Tomcat ISAPI Filter
Select the checkbox “Allow extension path to execute”.


 

Modify Plugin Properties


Step 1 Modify the file C:\inetpub\isapi\isapi_redirect.properties as follows:

# Configuration file for the Jakarta ISAPI Redirector
# The path to the ISAPI Redirector Extension, relative to the website
# This must be in a virtual directory with execute privileges
extension_uri=/tomcat/isapi_redirect.dll
# Full path to the log file for the ISAPI Redirector
log_file=C:\inetpub\isapi\logs\isapi_redirect.log
# Log level (debug, info, warn, error or trace)
log_level=error
# Full path to the workers.properties file
worker_file=C:\inetpub\isapi\conf\workers.properties
# Full path to the uriworkermap.properties file
worker_mount_file=C:\inetpub\isapi\conf\uriworkermap.properties
 

Step 2 Modify the file C:\inetpub\isapi\conf\uriworkermap.properties as follows:

/RequestCenter=router1
/RequestCenter/*=router1
/RequestCenter/servlet/*=router1
 
/IntegrationServer=router2
/IntegrationServer/*=router2
/IntegrationServer/servlet/*=router2
 
/private/admin/jkstatus=jkstatus
 

Step 3 If you have a clustered JBoss EAP installation (regardless of 4-VM Topology or 2-VM Topology), then modify the file C:\inetpub\isapi\conf\workers.properties as follows:


Note The following is an example for a JBoss EAP installation with 2 cluster nodes of RequestCenter.

  • That is there are 2 RequestCenter servers running on two separate VM’s.
  • If you have 3 or 4 cluster nodes, you just need to follow this example and add a section for rcnode3 and for rcnode4 appropriately.


 

# Define list of workers that will be used for mapping requests worker.list=router1,router2,jkstatus
 
# Define Node1 worker for RequestCenter
worker.node1.port=8009
worker.node1.host=<IP_Address_of_RC1_host>
worker.node1.type=ajp13
worker.node1.lbfactor=1
worker.node1.max_packet_size=65536
 
# Define Node2 worker for RequestCenter
worker.node2.port=8009
worker.node2.host=<IP_Address_of_RC2_host>
worker.node2.type=ajp13
worker.node2.lbfactor=1
worker.node2.max_packet_size=65536
 
# Load-balancing behaviour
worker.router1.type=lb
 
# For clustering, set the line below to node1, node2 etc
worker.router1.balance_workers=node1, node2
 
# Define node worker for SL
 
worker.slnode.port=6009
worker.slnode.host=<IP_Address_of_SL_host>
worker.slnode.type=ajp13
worker.slnode.lbfactor=1
worker.node2.max_packet_size=65536
worker.router2.type=lb
worker.router2.balance_workers=slnode
 
# Define a 'jkstatus' worker using status
worker.jkstatus.port=8009
worker.jkstatus.host=<IP_Address_of_IIS_host>
worker.jkstatus.type=status
worker.jkstatus.max_packet_size=65536
worker.status.type=status
 
 

Step 4 Restart World Wide Web Publishing Service.


 


Note If you have clustered JBoss EAP installation, continue to the next section Configure instance-id for JBoss EAP.


Configure Instance-ID for JBoss EAP

For Separate Component Topology

You must perform the following steps for clustered JBoss EAP installation with Separate Component topology:


Step 1 Log on to the JBoss EAP Domain Controller machine, and stop all JBoss EAP servers.

Step 2 Open file <PSC_Install_Dir>\jboss-eap-7.0\domain\configuration\domain.xml and search for the following line:

<subsystem xmlns="urn:jboss:domain:undertow:3.1">
 

Replace it with the following value:

<subsystem xmlns="urn:jboss:domain:undertow:3.1" instance-id="${jboss.web.instanceId}">

Note This should be replaced at two places in domain.xml file.


 

Step 3 Log on to the Host Controller 1 for RequestCenter, and stop all JBoss EAP servers.

Step 4 Open file <PSC_Install_Dir>\jboss-eap-7.0\domain\configuration\host1_backup.xml, and search for the following section:

<servers>
<server name="server-host1-RC" group="main-server-group" auto-start="true">
<jvm name="default">
<heap size="2048m" max-size="2048m"/>
<permgen size="512m" max-size="512m"/>
<jvm-options>
<!--<option value="-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n"/>-->
<option value="-XX:CompileCommand=exclude,com/newscale/bfw/signon/filters,AuthenticationFilter"/>
<option value="-XX:CompileCommand=exclude,org/apache/xml/dtm/ref/sax2dtm/SAX2DTM,startElement"/>
<option value="-XX:CompileCommand=exclude,org/exolab/castor/xml/Marshaller,marshal"/>
<option value="-XX:CompileCommand=exclude,org/exolab/castor/xml/Marshaller,marshal"/>
<option value="-XX:CompileCommand=exclude,org/apache/xpath/compiler/XPathParser,UnionExpr"/>
</jvm-options>
</jvm>
<socket-bindings socket-binding-group="ha-sockets" port-offset="0"/>
</server>
</servers>
 

Replace it with the following:

 
<servers>
<server name="server-host1-RC" group="main-server-group" auto-start="true">
<jvm name="default">
<heap size="2048m" max-size="2048m"/>
<permgen size="512m" max-size="512m"/>
<jvm-options>
<!--<option value="-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n"/>-->
<option value="-XX:CompileCommand=exclude,com/newscale/bfw/signon/filters,AuthenticationFilter"/>
<option value="-XX:CompileCommand=exclude,org/apache/xml/dtm/ref/sax2dtm/SAX2DTM,startElement"/>
<option value="-XX:CompileCommand=exclude,org/exolab/castor/xml/Marshaller,marshal"/>
<option value="-XX:CompileCommand=exclude,org/exolab/castor/xml/Marshaller,marshal"/>
<option value="-XX:CompileCommand=exclude,org/apache/xpath/compiler/XPathParser,UnionExpr"/>
</jvm-options>
</jvm>
<socket-bindings socket-binding-group="ha-sockets" port-offset="0"/>
<system-properties>
<property name="jboss.web.instanceId" value="rcnode1"/>
</system-properties>
</server>
</servers>
 

Step 5 Log on to the Host Controller 2 for RequestCenter, and stop all JBoss EAP servers.

Step 6 Open file <PSC_Install_Dir>\jboss-eap-7.0\domain\configuration\host2_backup.xml, and search for the following section:

<servers>
<server name="server-host2-RC" group="main-server-group" auto-start="true">
<jvm name="default">
<heap size="2048m" max-size="2048m"/>
<permgen size="512m" max-size="512m"/>
<jvm-options>
<!--<option value="-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n"/>-->
<option value="-XX:CompileCommand=exclude,com/newscale/bfw/signon/filters,AuthenticationFilter"/>
<option value="-XX:CompileCommand=exclude,org/apache/xml/dtm/ref/sax2dtm/SAX2DTM,startElement"/>
<option value="-XX:CompileCommand=exclude,org/exolab/castor/xml/Marshaller,marshal"/>
<option value="-XX:CompileCommand=exclude,org/exolab/castor/xml/Marshaller,marshal"/>
<option value="-XX:CompileCommand=exclude,org/apache/xpath/compiler/XPathParser,UnionExpr"/>
</jvm-options>
</jvm>
<socket-bindings socket-binding-group="ha-sockets" port-offset="0"/>
</server>
</servers>
 

Replace it with the following:

<servers>
<server name="server-host2-RC" group="main-server-group" auto-start="true">
<jvm name="default">
<heap size="2048m" max-size="2048m"/>
<permgen size="512m" max-size="512m"/>
<jvm-options>
<!--<option value="-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n"/>-->
<option value="-XX:CompileCommand=exclude,com/newscale/bfw/signon/filters,AuthenticationFilter"/>
<option value="-XX:CompileCommand=exclude,org/apache/xml/dtm/ref/sax2dtm/SAX2DTM,startElement"/>
<option value="-XX:CompileCommand=exclude,org/exolab/castor/xml/Marshaller,marshal"/>
<option value="-XX:CompileCommand=exclude,org/exolab/castor/xml/Marshaller,marshal"/>
<option value="-XX:CompileCommand=exclude,org/apache/xpath/compiler/XPathParser,UnionExpr"/>
</jvm-options>
</jvm>
<socket-bindings socket-binding-group="ha-sockets" port-offset="0"/>
<system-properties>
<property name="jboss.web.instanceId" value="rcnode2"/>
</system-properties>
</server>
</servers>
 

Step 7 Login to SL Node for Service Link and stop all JBoss EAP Servers.

Step 8 Open File \PSC_install_Dir\jboss-eap-7.0\domain\configuration\hostsl_backup.xml and search for following section:

servers
server name="server-host1-SL" group="other-server-group" auto-start="true"
 
jvm name="default"
heap size="2048m" max-size="2048m"/
jvm-options
option value="-server"/
option value="-XX:NewRatio=1"/
option value="-XX:+HeapDumpOnOutOfMemoryError"/
option value="-XX:HeapDumpPath=domain/servers/server-host1-SL/log"/
/jvm-options
/jvm
socket-bindings socket-binding-group="standard-sockets" port-offset="0"/
/server
/servers
/host
 

Replce with the following:

<servers>
<server name="server-host1-SL" group="other-server-group" auto-start="true">
<system-properties>
<property name="jboss.web.instanceId" value="slnode"/>
</system-properties>
<jvm name="default">
<heap size="2048m" max-size="2048m"/>
<jvm-options>
<option value="-server"/>
<option value="-XX:NewRatio=1"/>
<option value="-XX:+HeapDumpOnOutOfMemoryError"/>
<option value="-XX:HeapDumpPath=domain/servers/server-host1-SL/log"/>
</jvm-options>
</jvm>
<socket-bindings socket-binding-group="standard-sockets" port-offset="0"/>
</server>
</servers>
</host>

Note If you have more than 2 cluster nodes, then repeat Step 5 through Step 8 for each subsequent node. For example,

  • On the 3rd node, you need to modify the file host3_backup.xml and add the system-properties for rcnode3.
  • On the 4th node, you need to modify the file host4_backup.xml and add the system-properties for rcnode4.


 

Step 9 Start up JBoss EAP servers on the Domain Controller machine and on each Host Controller machine.


 

Go to the section Test IIS.

For All Components Topology

Perform the steps in this section only if you have a clustered JBoss EAP installation with All Components topology:


Step 1 Log on to the JBoss EAP Domain Controller machine, and stop all JBoss EAP servers.

Step 2 Open file <PSC_Install_Dir>\jboss-eap-7.0\domain\configuration\domain.xml and search for the following line:

<subsystem xmlns="urn:jboss:domain:undertow:3.1">
 

Replace it with the following value:

<subsystem xmlns="urn:jboss:domain:undertow:3.1" instance-id="${jboss.web.instanceId}">

Note This should be replaced at two places in domain.xml file.


 

Step 3 Open file <PSC_Install_Dir>\jboss-eap-7.0\domain\configuration \hostva_ backup.xml, and search for the following section:

<servers>
<server name="server-host1-RC" group="main-server-group" auto-start="true">
<jvm name="default">
<heap size="2048m" max-size="2048m"/>
<permgen size="512m" max-size="512m"/>
<jvm-options>
<!--<option value="-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n"/>-->
<option value="-XX:CompileCommand=exclude,com/newscale/bfw/signon/filters,AuthenticationFilter"/>
<option value="-XX:CompileCommand=exclude,org/apache/xml/dtm/ref/sax2dtm/SAX2DTM,startElement"/>
<option value="-XX:CompileCommand=exclude,org/exolab/castor/xml/Marshaller,marshal"/>
<option value="-XX:CompileCommand=exclude,org/exolab/castor/xml/Marshaller,marshal"/>
<option value="-XX:CompileCommand=exclude,org/apache/xpath/compiler/XPathParser,UnionExpr"/>
</jvm-options>
</jvm>
<socket-bindings socket-binding-group="ha-sockets" port-offset="0"/>
</server>
<server name="server-host1-SL" group="other-server-group" auto-start="true">
<jvm name="default">
<heap size="2048m" max-size="2048m"/>
<permgen size="512m" max-size="512m"/>
<jvm-options>
<option value="-server"/>
</jvm-options>
</jvm>
<socket-bindings socket-binding-group="standard-sockets" port-offset="0"/>
</server>
</servers>
 

Replace it with the following:

<servers>
<server name="server-host1-RC" group="main-server-group" auto-start="true">
<jvm name="default">
<heap size="2048m" max-size="2048m"/>
<permgen size="512m" max-size="512m"/>
<jvm-options>
<!--<option value="-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n"/>-->
<option value="-XX:CompileCommand=exclude,com/newscale/bfw/signon/filters,AuthenticationFilter"/>
<option value="-XX:CompileCommand=exclude,org/apache/xml/dtm/ref/sax2dtm/SAX2DTM,startElement"/>
<option value="-XX:CompileCommand=exclude,org/exolab/castor/xml/Marshaller,marshal"/>
<option value="-XX:CompileCommand=exclude,org/exolab/castor/xml/Marshaller,marshal"/>
<option value="-XX:CompileCommand=exclude,org/apache/xpath/compiler/XPathParser,UnionExpr"/>
</jvm-options>
</jvm>
<socket-bindings socket-binding-group="ha-sockets" port-offset="0"/>
<system-properties>
<property name="jboss.web.instanceId" value="rcnode1"/>
</system-properties>
</server>
<server name="server-host1-SL" group="other-server-group" auto-start="true">
<jvm name="default">
<heap size="2048m" max-size="2048m"/>
<permgen size="512m" max-size="512m"/>
<jvm-options>
<option value="-server"/>
</jvm-options>
</jvm>
<socket-bindings socket-binding-group="standard-sockets" port-offset="0"/>
<system-properties>
<property name="jboss.web.instanceId" value="slnode"/>
</system-properties>
</server>
</servers>
 

Step 4 Log on to the Host Controller 2 for RequestCenter, and stop all JBoss EAP servers.

Step 5 Open file <PSC_Install_Dir>\jboss-eap-7.0\domain\configuration\host2_backup.xml, and search for the following section:

<servers>
<server name="server-host2-RC" group="main-server-group" auto-start="true">
<jvm name="default">
<heap size="2048m" max-size="2048m"/>
<permgen size="512m" max-size="512m"/>
<jvm-options>
<!--<option value="-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n"/>-->
<option value="-XX:CompileCommand=exclude,com/newscale/bfw/signon/filters,AuthenticationFilter"/>
<option value="-XX:CompileCommand=exclude,org/apache/xml/dtm/ref/sax2dtm/SAX2DTM,startElement"/>
<option value="-XX:CompileCommand=exclude,org/exolab/castor/xml/Marshaller,marshal"/>
<option value="-XX:CompileCommand=exclude,org/exolab/castor/xml/Marshaller,marshal"/>
<option value="-XX:CompileCommand=exclude,org/apache/xpath/compiler/XPathParser,UnionExpr"/>
</jvm-options>
</jvm>
<socket-bindings socket-binding-group="ha-sockets" port-offset="0"/>
</server>
</servers>
 

Replace it with the following:

<servers>
<server name="server-host2-RC" group="main-server-group" auto-start="true">
<jvm name="default">
<heap size="2048m" max-size="2048m"/>
<permgen size="512m" max-size="512m"/>
<jvm-options>
<!--<option value="-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n"/>-->
<option value="-XX:CompileCommand=exclude,com/newscale/bfw/signon/filters,AuthenticationFilter"/>
<option value="-XX:CompileCommand=exclude,org/apache/xml/dtm/ref/sax2dtm/SAX2DTM,startElement"/>
<option value="-XX:CompileCommand=exclude,org/exolab/castor/xml/Marshaller,marshal"/>
<option value="-XX:CompileCommand=exclude,org/exolab/castor/xml/Marshaller,marshal"/>
<option value="-XX:CompileCommand=exclude,org/apache/xpath/compiler/XPathParser,UnionExpr"/>
</jvm-options>
</jvm>
<socket-bindings socket-binding-group="ha-sockets" port-offset="0"/>
<system-properties>
<property name="jboss.web.instanceId" value="rcnode2"/>
</system-properties>
</server>
</servers>
 

Note If you have more than 2 cluster nodes, then repeat Step 4 and Step 5 for each subsequent node. For example,

  • On the 3rd node, you need to modify the file host3_backup.xml and add the system-properties for rcnode3.
  • On the 4th node, you need to modify file host4_backup.xml and add the system-properties for rcnode4.

Step 6 Start up JBoss EAP servers on the Domain Controller machine and on the Host Controller 2 machine.


 

Go to the section Test IIS.

Test IIS

The following section provides information on verifying the connection to Prime Service Catalog.


Step 1 Verify by connecting to the URL http://<IP_Address_of_IIS_Host>/RequestCenter.
If you connected you can see the Login Page of Prime Service Catalog.

Step 2 For clustered JBoss EAP installation with 2 nodes, stop one of the nodes.
And verify that you can still connect to the URL http://<IP_Address_of_IIS_Host>/RequestCenter.


 

Configuring Data Source for SQL in JBoss EAP


Step 1 Log on to the JBoss EAP Admin console (URL example below) with you credentials and click OK. This will take you to JBoss EAP Application administrator console.

URL example:

http://<hostname>:<port>/RequestCenter

where,

<hostname> = The fully qualified domain hostname or the IP address of the computer where you

installed the JBoss EAP server for Service Catalog.

<port> =The HTTP Port number assigned to the JBoss EAP server for Service Catalog. The default value

for HTTP Port number is 8080.

Step 2 Click on Configuration tab > Profiles > HA > Data sources > Non XA, to be able to edit and make changes.

Step 3 Click Add to add a new data source.

Step 4 Choose driver as Custom from the list.

Step 5 Enter Name: SERVICECATALOGDS and JNDI Name: java:/<Name of the data source>

Step 6 Click Next

Step 7 Select driver from the Detected Drivers tab as “Microsoft” and click Next.

Step 8 Enter the connection URL: jdbc:sqlserver://<db_server>:1433;DatabaseName=VM236_RCDB_RC4

Step 9 Enter your credentials.

Step 10 Fill up the various fields under different tabs as mentioned in the table below:

Tab Name

Fieldname

Value

Security

Secure Domain

CiscoSecureDataSource

Connection

Use JTA and Use CCMsECURITY

Both these options should be checked.

Properties

SelectMethod:

sendStringParametersAsUnicode:

Direct

True

Pool

Minimum size is 20, maximum size is 80 and other values set to False.

Validation

 

 

Background Validation

False

Validation Millis

90000

Validate on Match

False

Step 11 Click Enable > Confirm.


Note (Applicable only for JBoss EAP cluster) If the datasource is still disabled, set the datasoure to <enabled = true> in domain.xml file and restart the domain.


Step 12 In the Connection Tab test the connection and you will see the confirmation message: “Successfully created the JDBC connection.”

Step 13 Restart the JBoss EAP server.


 

Configuring Data Source for Oracle in JBoss EAP


Step 1 Log on to the JBoss EAP Admin console (URL example below) with you credentials and click OK. Click on Configuration tab to be able to edit and make changes.

URL example:

http://<hostname>:<port>/RequestCenter

where,

<hostname> = The fully qualified domain hostname or the IP address of the computer where you

installed the JBoss EAP server for Service Catalog.

<port> =The HTTP Port number assigned to the JBoss EAP server for Service Catalog. The default value

for HTTP Port number is 8080.

Step 2 Click on Configuration tab > Profiles > HA > Data sources > Non XA, to be able to edit and make changes.

Step 3 Click Add to add a new data source.

Step 4 Enter Name: SERVICECATALOGDS and JNDI Name: java:/<Name of the data source>

Step 5 Click Next

Step 6 Choose driver from the list as Custom.

Step 7 Select driver from the detected drivers tab as “oracle-thin” and click Next.

Step 8 Enter the connection URL: jdbc:oracle:thin:@//<db_server>:1433;DatabaseName=VM236_RCDB_RC4

Step 9 Enter your credentials.

Step 10 Fill up the various fields under different tabs as mentioned in the table below:

Tab Name

Fieldname

Value

Security

Secure Domain

CiscoSecureDataSource

Connection

Use JTA and Use CCM

Both these options should be checked.

Properties

SelectMethod:

sendStringParametersAsUnicode:

Direct

True

Pool

Minimum size is 20, maximum size is 80 and other values set to False.

Validation

 

 

Background Validation

False

Validation Millis

90000

Validate on Match

False

Step 11 Click Enable > Confirm.


Note (Applicable only for JBoss EAP cluster) If the datasource is still disabled, set the datasoure to <enabled = true> in domain.xml file and restart the domain.


Step 12 In the Connection Tab test the connection and you will see the confirmation message: “Successfully created the JDBC connection.”

Step 13 Restart the JBoss EAP server.