IBM Control Desk is based on the IBM Maximo product – making a very powerful service desk that is rather complicated to install. This blueprint, with our best wishes, goes out to all the people who are trying to install IBM Control Desk for the first time.
Installing IBM Maximo is not an easy task and planning should be done before hand.
This document will assume you have already built your VM with a minimum of 4 VCPU 32Gb Memory and a hard disk drive space of 150GB. Our example was carried out on a bare Metal ESXi version 6.7. No VCentre attached.
We installed version 18.104.22.168 first and later upgrade to 22.214.171.124. Trying to go straight to 126.96.36.199 kept failing, although the documentation says it should be possible.
We assume you have an IBM ID and can download the required images from passport advantage.
As this was a development build and not expecting any high workloads, WebSphere, Maximo and DB2 database were built onto the same VM running Centos 7. In a high workload environment, it would be best to separate the Database from the application and build them on a separate VM’s.
There are a couple of preparation steps that need to be carried out first, to allow the installation to run successfully. This should be done on each Virtual Server.
- Change the permissions on /tmp and /home to 777. This will be change back to original settings once installation has completed.
- Set SELinux to permissive and now to really make your skin crawl, stop the firewall. This is all temporary and will be reversed at the end.
- Check your shared memory size is not less than 268435456 bytes, if it is, increase it with Linux command sysctl -w kernel.shmmax=18446744073692774399.
- Change hard and soft ulimits to 8192 permanently for root, by editing your /etc/security/limits.cong file.
- Install the below libraries:
yum install nss-softokn-freebl.i686
yum install libgcc.i686
yum install glibc.i686
yum install libXtst.i686
yum install compat-libstdc++-33-3.2.3-72.el7.i686cd
yum install compat-libstdc++-33.x86_64
- Increase your port numbers to be ipv4.ip_local_port_range = 1024 65535 by editing your /etc/sysctl.conf file.
Pretend that IBM Maximo is running on Red Hat
As Maximo only works on RHEL and not on Centos, you will have to modify the reporting Red Hat release. Check what is in /etc/centos-release-upstream, copy the portion “Red Hat Enterprise Linux 7.6 (Source)” and replace content of /etc/centos-release. Suggest you make a copy of original file /etc/centos-release just for safe keeping.
That should now cover all the OS pre-requirements to get IBM control desk and Maximo installed.
With your IBM ID, log onto passport advantage and download the following files:
Copy the files to your server, this example they were copied to /Downloads. We found it best to merge these contents to get the installation to work. We created a merged folder /Downloads/merge and extracted all of the above, except for icd_4_maximo_7.6.1_spm.zip.zip into this merged folder. This file icd_4_maximo_7.6.1_spm.zip.zip does not need to be extracted.
Install the IBM Installation Manager
You will require the IBM Installation Manager to be installed. For installation on Linux use this link to get the details for the file and installation instructions.
Now that IBM Installation Manger is installed, we can carry on with what we set out to do. Launch the Installation Manager /opt/IBM/InstallationManager/eclipse/IBMIM, select File, preferences in the top right corner, Add repository. Use the browse button to navigate to your file location, this example /Downloads/merge.
Once you have added all the above repo, exit from the menu, back to the main page. Here you will now select the Installation Icon. Tick all the options that come up, in this example 13 packages were selected. A package validation should start, accept the license when requested. Follow the wizard by inputting your data and selecting next on each screen, until you get the install button. Once the installation of WebSphere and DB2 finishes, you will be presented with a screen to open “IBM Tivoli process automation engine configuration utility” or None. Select None at this stage and click finish.
Increase your heap size at this point. By default, it gets set to 256m, but the Maximo installation keeps failing with an out of memory error with that amount. Edit the below line in script /opt/IBM/WebSphere/AppServer/deploytool/itp/ejbdeploy.sh changing the 256 to 2048 for both Xms and Xmx
Your content goes here. Edit or remove this text inline or in the module Content settings. You can also style every aspect of this content in the module Design settings and even apply custom CSS to this text in the module Advanced settings.
Start the IBM Tivoli process automation engine configuration utility with the following command, ./opt/IBM/SMP/ConfigTool/ConfigUI. Select the first option “Prepare WebSphere Application Server for Configuration” Again this will open a wizard that you need to follow and enter all your own details. These will vary on each installation, but most of the defaults can be kept. Once you have entered your wasadmin password, Select the first option “Use the default authentication mechanism for administrative security” an click the finish button. This can take some time depending on your Virtual Machine setup. This example took approximately 20 minutes. Once complete and you select OK, you will be taken back to the main page of the IBM Tivoli automation suite.
IBM Maximo Configuration
You will now have to Configure a New Deployment. Again a wizard will be opened where you can input the correct details regarding your DB and WebSphere servers. Under the DB instance section enter your installation directory, default is /opt/ibm/db2/V11.1 (version may differ). Supply the instance name port and password e.g ctginst1, 50005, ********
On the next screen we will fill in the Maximo details: database name, Schema, database user and password.
The wizard at this point will now continue with the application server details. Enter your SOAP port, user and a password. For the application security, select a password for each of the users listed, you can use the same one, but this is not very secure.
Select your base language followed by any additional languages that you would like Maximo to make use of.
In the Apply Deployment Operations screen, we deselected the last 2 option “Build the application EAR file” and “Deploy the application EAR file to the application server”. We will run these manually later manually to save some time. In this example, the apply deployment ran for 3 hours.
Keep an eye out on the messages that appear. As this was my first time with the Maximo product, it took me several attempt to get past this stage. Hence the decision to write this document.
Some messages that you will be happy to see are:
CTGIN2213I:unDeployMaximoApplication completed successfully
CTGIN2109I: The database instance was created successfully
Running validation and configuration
When it finally finishes Select No and close the Tivoli Application.
NB: IBM Control Desk is not deployed at this point. Remember we did not tick the last 2 option regarding the EAR file creation and deployment.
This is a good time to do some manual checks
Confirm you do not have any file systems that are close to full by running a df-h command
and confirm the 2 below error logs have nothing to be concerned about in them:
Build the Maximo ear file from command line ./opt/IBM/SMP/maximo/deployment/buildmaximoearwas8.sh
This will take anywhere from 30 minutes to 1 hour to upgrade IBM Maximo
Upgrade IBM Maximo to latest Version 188.8.131.52 (latest at the time of writing)
Go back to passport advantage or fix central and download the follow packages.
Once again extract the files icd_184.108.40.206_part1_spm.zip and icd_220.127.116.11_part1_spm.zip into the same folder e.g merged12. Once again kick off the IBM installation Manager with ./opt/IBM/InstallationManager/eclipse/IBMIM
Go back to file -> preferences. Untick the previously used repositories and assign new ones for the upgrade. Below screen grab explains best.
This time, from the main menu select Update. Make sure to select all Maximo versions listed when the update packages screen is presented. Accept the license once more and select update. Again, when the Installation manager is finished and present the option to select “IBM Tivoli process automation engine configuration utility” select None.
Extract the contents of the file TPAE_7611_IFIX_18.104.22.16891121-0609.zip to /opt/IBM/SMP/maximo folder.
Manually start the Tivoli automation Suite with /opt/IBM/SMP/ConfigTool/ConfigUI, under Deployment Operations select “Update Database and Build and Deploy Application EAR Files”, walk through the wizard but only select the first option “Apply the changes to the Database” on the Apply Deployment Operations page. Leave the two options regarding the EAR file unticked once more. Click finish and let it run. Accept the warning message that you must build and deploy the EAR file. The EAR file takes quite some time, and we only want to do it at the end. Therefore, we keep unselecting these options.
From the command line run the ./opt/IBM/SMP/maximo/tools/maximo/updatedb.sh script.
Now for installation of the ifix
Back to IBM InstallationManager ./opt/IBM/InstallationManager/eclipse/IBMIM, file -> preferences untick previously selected repositories, browse to file TPAE_7611_IFIX_20200824-1011.im.zip
Go back to main screen selecting update option once again, go through the wizard screens and select update at the end. Once complete select Finish.
Now we can manually start the Tivoli automation Suite again /opt/IBM/SMP/ConfigTool/ConfigUI. Select “Update Database and Build and Deploy Application EAR file” you should get a screen like below where you can see there are 3 versions waiting to be deployed.
We still do not want to select the last two option but rather just get the ifix changes into the mix. We will run the same process as we have done twice already and Select “Apply the changes to the database” let it run and accept the warning at the end regarding building and deploying an application EAR file.
Exit back to a command prompt, just before we run the deployment, we need to add an additional configuration, that is to create a cleanup.sh script and add the line running as part of the buildmaximoear.
Found the below hint on the big wide world of the internet, but forgot to make mention of the URL. Thanks to who ever found this out, it worked for me.
- Create filesh in the Maximo deployment folder (typically /opt/IBM/SMP/maximo/deployment) with the following content:
# Permanent Fix for Heap Out of Memory Error When Deploying Maximo on WebSphere
# Author: Kilian Cirera Sant
# See http://www.aktive.cat/blog/2015/01/permanent-fix-for-heap-out-of-memory-error-when-deploying-maximo-on-websphere
# Copyright 2015 Aktive Software & Consulting, S.L.
find $WAS_PATH/profiles/$WAS_APPSRV/temp/$WAS_NODE -type d -name ‘*’ -delete
find $WAS_PATH/profiles/$WAS_APPSRV/wstemp -type d -name ‘*’ -delete
find $WAS_PATH/profiles/$WAS_APPSRV/logs -type d -name ‘max*’ -delete
rm -rf $WAS_PATH/profiles/$WAS_APPSRV/logs/MXServer
rm -rf $WAS_PATH/profiles/$WAS_APPSRV/logs/RMIRegistry
rm -rf $WAS_PATH/profiles/$WAS_APPSRV/logs/ffdc
- Modify the lines that define WAS_PATH, WAS_APPSRV and WAS_NODE with the correct values for your installation.
- Modify the build scriptscmd and buildmaximoearwas8.sh by doing the same in both files:
- Add the following line:
- Right after the line:
- Add the following line:
Double check your heap sizing is still correct and has not been written over by the upgrade and patches we have installed, cat /opt/IBM/WebSphere/AppServer/deploytool/itp/ejbdeploy.sh and confirm the Xms and Xmx are still set to 2048. This is worth checking, if it has changed you could waste the next 3 hours before it fails with an out of memory error.
Time to kick of the deploy and upgrade. Change directory to /opt/IBM/SMP/ConfigTool/scripts and run the command: reconfigurePae.sh -action updateApplication -deploymaximoear
Once this completes log onto your WebSphere console and check that your applications are all good. You can also now log into your Maximo UI and check what version you are running by using the ? icon in the top right hand corner, System Information.
From a System Administration point you have now installed IBM Control Desk on Centos. There will still be a lot of Maximo configuration to be carried out before this becomes a fully functional application.
Remember to set your enforce policy and restart the firewall daemon. Also, you can now change the permissions of /home and /tmp back to what you had them before.
If for example, you had a Development environment and you were now creating a Test environment, you can simply copy the offline database back up and latest log file over to the new Database server. Run a rollforward command on the DB2 to get this DB up to date, “db2 rollforward db db_name to end of logs and stop” This would then include all your Maximo configurations from your Development space.
Richard Whyte has been building enterprise IT solutions for over 20 years. He is known for creating innovative practical solutions that provide a strong foundation for future development, whilst solving immediate problems. Previously the European CTO and Principal Architect for IBM Systems Middleware at IBM, he has an MBA, a degree in Statistics and Computing, is a Chartered Engineer, a Chartered IT Professional, and Fellow of both the Institute of Technology and the British Computer Society.