IBM Support

Separating User Interface from other work for Maximo 7.1 on WebSphere 6.1

Question & Answer


Question

What are the steps required to separate a Maximo User Interface application from other Maximo application work for better performance?

Cause

The following describes the steps required to separate a Maximo User Interface (UI) from other application work (an example). This is a great way to improve overall system performance. In this example the Maximo EAR file is deployed to the UI application server (JVM - Java Virtual Machine) and a separate EAR is deployed to another application server (JVM) for other application work (crontasks, escalations, reporting, etc). In this example I used separated out ESCALATIONS.

Answer

In the example configuration below, we will use the following names:
- MXServer is the User Interface application
- MXESC is the Escalations application

Creating an Escalation application server


First, you define the Escalations application. Use the following "example" hardware configuration for a single application server Java Virtual Machine (JVM):

1 CPU and 2GB of RAM memory.

So, using the above example, if you had both a UI application and an Escalations application that would mean that the server environment (32-bit) would have 2 CPUs and 4GB of ram memory.

1. Login to the WebSphere Administrative Console.
2. Click Servers > Application Servers screen, click New.
a. Enter MXESC in the Server name field, click Next.
b. Click Next on the Server template screen.
c. Click Next on the Server specific properties screen.
d. Then click Finish and then click Save to create the new application server
3. Heap size: Click Application servers, then click on each new server > Java and Process Management > Process Definition > Java Virtual Machine and fill in both the Initial and Maximum Heap sizes. Click Apply and then click Save

NOTE: When setting the Initial/Maximum heap size for the MXESC application server JVM, the following recommended heap size should be used for each JVM:
32-bit server = 512MB/1024MB
64-bit server = 1024MB/2048MB.

4. Set the new application server to start in RUNNING mode. Click Application servers, then click on each new server > Java and Process Management > Monitoring Policy > Node restart state, change to RUNNING. Click Apply and then click Save

Update Virtual Hosts


This procedure describes how to verify port numbers used by the application servers. It also explains how to update the virtual host with the port number information. A virtual host enables a single host machine to resemble multiple host machines. Each virtual host has a logical name and a list of one or more DNS aliases by which it is known.
1. To verify port numbers of the application servers, perform the following actions:
a. Servers > Application Servers, click MXEsc.
b. Under the Communications, click Ports.
c. Make a note of the WC_defaulthost port number for use below (usually 9081).
2. Environment > Virtual Hosts, click New.
a. Enter MXESC_host is the Name field, click Apply.
b. Click Host Aliases under Additional Properties.
c. Click New in the Host Alias panel to add 2 Host name and port number values to the host aliases list:
i. Host Name: *, Port: 80 (IBM HTTP Server port), click OK.
ii. Host Name: *, Port: 9081 (same as port number for MXEsc), click OK.
3. Click Save.

Build and deploy multiple EAR files from the same Maximo directory.


You will need to build multiple ear file builds of Maximo where some of the files to be included in each ear file will be different from the next, you do not need multiple instances of the Maximo installation folder.

For each file that will be modified making it different for one ear from the next, make a copy of that file and name it appropriately.

For example, since the User Interface application server requires one ear file that disables the Escalation crontasks and the Escalation application server requires an ear file that enables the Escalation crontasks.

An example of the files that would be unique to each ear file for the above scenario might look like this:

maximo.properties
maximo.propertiesUI
maximo.propertiesESC

Where there are 3 copies of each file, one with the default name, the next named for the User Interface ear, and one named for the Escalation ear.

In this scenario, for two ears you would make two copies of the file buildmaximoear.cmd and give them names such as the following:

buildmaximoear-UI.cmd
buildmaximoear-ESC.cmd

These would be the files you use to build your individual ear files.

These are the steps to change the new cmd files to build your unique ear files:

1. Edit the buildmaximoear-UI.cmd file, and at the top, enter the following shell commands:

copy /Y \IBM\SMP\maximo\applications\maximo\properties\maximo.propertiesUI \IBM\SMP\maximo\applications\maximo\properties\maximo.properties

2. Change the EAR_FILENAME variable to reflect the unique ear file name for the UI and ESC, for example:

set EAR_FILENAME=maximoUI.ear

3. You can then run this build scripts to build the ear files. In this case, the resulting ear file will be named maximoUI.ear.
4. Repeat the above steps to create the maximoESC.ear as well, changing references from UI to ESC.

Prepare and Deploy the UI application server



Since we want all Escalation crontasks to run in the MXESC instance, they are listed here as DONOTRUN for the UI application.
1. Edit the maximo.propertiesUI file and add the donotrun option as below:
mxe.crontask.donotrun= ESCALATION. ESCESCBLTNEXP

Note: You can also use the Target Enable feature to force the Escalation crontasks to run in specific servers.

Also, be sure to go through your list of crontasks and note each instance in the correct case and add it to the mxe.crontask.donotrun parameter in the maximo.properties, each separated by a comma

2. Build the maximoUI.ear file – using the buildmaximoear-UI.cmd.

3. Now that you have created and configured the MXServer application server, you should now deploy your maximoUI.ear (enterprise application - EAR) within to the UI application server.

Note: When mapping modules to servers, make sure you select both MXServer and the webserver1 as the web server:
WebSphere:cell-ctgCell01,server=MXServer
WebSphere:cell-ctgCell01,node=ctgNode01,server=webserver1

4. Also, when mapping virtual hosts to web modules, use the Maximo_host virtual host.
5. Lastly, start/restart the MXServer application server.

1. Prepare and Deploy the Escalation application server


Since we want all crontasks except the ESCALATION crontasks running on the UI instance, they are listed here as DONOTRUN on the MXESC instance.
1. Edit the maximo.propertiesESC file and add the donotrun option as below:
a. mxe.crontask.donotrun=BBCron.BBCRON1, REPORTLOCKRELEASE. REPORTLOCKRELEASE1, REPORTUSAGECLEANUP. REPORTUSAGECLEANUP1


Note: You can also use the Target Enable feature to force the UI crontasks to run in specific servers.

Also, be sure to go through your list of crontasks and note each instance in the correct case and add it to the mxe.crontask.donotrun parameter in the maximo.properties, each separated by a comma

2. Build the maximoESC.ear file – using the buildmaximoear-ESC.cmd.
3. Now that you have created and configured the MXESC application server, you then should deploy your maximoESC.ear (enterprise application - EAR).

Note: When mapping modules to servers, make sure you select both MXESC and the webserver1 as the web server:
b. WebSphere:cell-ctgCell01,server=MXESC
c. WebSphere:cell-ctgCell01,node=ctgNode01,server=webserver1

2. Also, when mapping virtual hosts to web modules, use the MXESC_host virtual host you created above for the Escalation EAR file.

Lastly, start/restart the MXESC application server.

[{"Product":{"code":"SSLKT6","label":"IBM Maximo Asset Management"},"Business Unit":{"code":"BU055","label":"Cognitive Applications"},"Component":"Not Applicable","Platform":[{"code":"PF002","label":"AIX"},{"code":"PF010","label":"HP-UX"},{"code":"PF016","label":"Linux"},{"code":"PF027","label":"Solaris"},{"code":"PF033","label":"Windows"}],"Version":"7.1.1;7.2;7.2.1","Edition":"All Editions","Line of Business":{"code":"LOB02","label":"AI Applications"}},{"Product":{"code":"SSLKTY","label":"Maximo Asset Management for IT"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Component":"Not Applicable","Platform":[{"code":"","label":""}],"Version":"","Edition":"","Line of Business":{"code":"LOB36","label":"IBM Automation"}},{"Product":{"code":"SSKTXT","label":"Tivoli Change and Configuration Management Database"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Component":"Not Applicable","Platform":[{"code":"","label":""}],"Version":"","Edition":"","Line of Business":{"code":"LOB36","label":"IBM Automation"}},{"Product":{"code":"SS6HJK","label":"Tivoli Service Request Manager"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Component":"Not Applicable","Platform":[{"code":"","label":""}],"Version":"","Edition":"","Line of Business":{"code":"LOB36","label":"IBM Automation"}}]

Document Information

Modified date:
17 June 2018

UID

swg21470449