Maximo

Expand all | Collapse all

Apply database configuration changes to a clustered environment

  • 1.  Apply database configuration changes to a clustered environment

    Posted Fri July 23, 2021 06:26 PM


    For a clustered Maximo environment:


    What method do you recommend for applying database configuration changes? Example: add a custom field to the WORKORDER table.

    A. Use admin mode and Apply Configuration Changes action in Database Configuration?
    B. Use dbconfig command?
    C. Shut down all but one JVM then run Apply Configuration Changes?
    D. Other?

    Thanks.


  • 2.  RE: Apply database configuration changes to a clustered environment

    Posted Mon July 26, 2021 07:50 AM
    I found in an old clustered environment that when putting the system into admin node that it did not always spread to all JVMs.  Therefore I would ensure I was logged into a specific JVM and turn on admin mode. After a few minutes waiting for users to sign out I would turn the other JVMS off.  Wait for them to shutdown, confirm my IT backup had finished, run DB config (within Maximo)​ then turn off admin mode and start up the other JVMs.

    ------------------------------
    David Shaw
    Consultant
    SRO Solutions
    ------------------------------



  • 3.  RE: Apply database configuration changes to a clustered environment

    Posted Mon July 26, 2021 08:36 AM
    David is correct that admin mode can be problematic when dealing with clustered environments. Sometimes it's simply delayed (due to a long running cron task or report for example). Other times it may never go into admin mode without a restart. Specifically, I found that a JVM reloading a cache while admin mode is pending will prevent it from ever entering admin mode. This could be via a cron task that reloads cache (such as bulletin board) or a user on that JVM making a change (screen change, automation script change, etc.) that updates caches. A few weeks ago I had tested a fix to this issue for 7.6.1.2 which seemed to work perfectly. Since then I've switched jobs so I'm not sure on exact ETA. 

    The IBM recommended approach, however, is to shut down all JVMs but one to do the configuration and then start them back up. In newer versions there is automation in place to do this automatically. Specifically, if the system property mxe.adminmode.stopstartclusters is set to 1 and the necessary credentials are provided for WebSphere in the WAS.AdminPassword and WAS.AdminUserName system properties (assuming you password protect WebSphere, which you should) then Maximo should automatically try to stop and start the other JVMs for you. 

    The challenge with this approach is you need to ensure you have proper downtime recorded for your monitoring systems. If your admins in Maximo can do admin mode but can't schedule downtime in the monitoring system, it's something you need to ensure you have coordinated. And your admins need to be able to verify the health of each JVM after the maintenance which isn't always possible. For example, you need to hit server1:9080, server2:9080, etc. and verify everything started up correctly.

    ------------------------------
    Steven Shull
    ------------------------------



  • 4.  RE: Apply database configuration changes to a clustered environment

    Posted Mon July 26, 2021 02:13 PM

    IBM:

    The recommended approach if you are using the Database Configuration application is to shutdown all JVM's but one and then enter Admin Mode from the Database Configuration application and perform the configuration.

    See this technote:
    Some of the servers on this cluster are in Admin mode and some are not
    https://www.ibm.com/support/pages/some-servers-cluster-are-admin-mode-and-some-are-not
    "Regarding the use of Admin Mode in a clustered environment we recommend that when you are planning to go into admin mode that you shut down all the JVMs but one"

    If you prefer, you may choose to shutdown all application servers and use the command line DBConfig.bat tool.
    Both methods are supported.