Page tree
Skip to end of metadata
Go to start of metadata

Backup your existing system

  1. Backup $MOOGSOFT_HOME.
  2. Take a snapshot (for VMs).
  3. Backup MySQL.

Stop Services and Processes

  1. moog_farmd: 

    service moogfarmd stop
  2. apache-tomcat: 

    service apache-tomcat stop
  3. LAMs. Either via their service scripts:

    service <lam_service_name> stop

    Alternatively, stop their running processes using:

    kill <pid>
  4. Ensure all the above processes have been stopped before continuing. 

    service <service_name> status
  5. Disable the events_analyser and moog_indexer from running during the upgrade process:

    1. Run the following command to comment out the relevant lines in crontab:

      (crontab -l | sed -e 's/^\(.*moog_indexer.*\)$/#\1/' -e 's/^\(.*events_analyser.*\)$/#\1/') | crontab -
    2. Run the following command to stop any running moog_indexer or events_analyser processes:

      ps -ef | grep java | egrep 'events_analyser|moog_indexer' | awk '{print $2}' | xargs kill 2>/dev/null

Upgrade AIOps

Upgrade Mechanism

  1. Single host from a remote repository:

    yum upgrade moogsoft-db-6.1.5 moogsoft-lams-6.1.5 moogsoft-mooms-6.1.5 moogsoft-search-6.1.5 moogsoft-server-6.1.5 moogsoft-ui-6.1.5 moogsoft-utils-6.1.5 moogsoft-common-6.1.5
  2. Single host from same machine (assumes the RPMs have been downloaded locally and are in the current folder):

    yum upgrade moogsoft-*6.1.5*.rpm
  3. Distributed upgrades: select the relevant update commands to run depending on which package(s) are upgradeed on the current host. For example:

    1. HOST1:

       yum upgrade moogsoft-server-6.1.5 moogsoft-ui-6.1.5
    2. HOST2:

       yum upgrade moogsoft-db-6.1.5 moogsoft-search-6.1.5
    3. HOST3:

       yum upgrade moogsoft-lams-6.1.5 moogsoft-utils-6.1.5 moogsoft-mooms-6.1.5

Merge Latest Config File Changes

'.rpmsave' versions of files will need to be manually merged/compared with the new versions of those files (any new properties should be added to the older versions of the files).

An example of the process to do this:

  • Rename the new versions of the files (without the .rpmsave extension) to end with '.bak'
  • Merge the .rpmsave file with the new '.bak' file by adding new properties/config where needed so the structure matches the new version of the file
  • Rename the .rpmsave file to delete the '.rpmsave' extension

Upgrade the Database 

  • Scripted (suitable for single host upgrade using the generic automated script):

    $MOOGSOFT_HOME/bin/utils/ -m /usr/share/moogsoft/etc/moog/schema_upgrades/6.1.4-6.1.5/615_moogdb_upgrade_all.sql -r /usr/share/moogsoft/etc/moog/schema_upgrades/6.1.4-6.1.5/615_moog_reference_upgrade_all.sql 
  • Manual (replace moogdb and moog_reference database names as appropriate):

    mysql -h localhost -P 3306 -u root moogdb < $MOOGSOFT_HOME/etc/moog/schema_upgrades/6.1.4-6.1.5/615_moogdb_upgrade_all.sql
    mysql -h localhost -P 3306 -u root moog_reference < $MOOGSOFT_HOME/etc/moog/schema_upgrades/6.1.4-6.1.5/615_moog_reference_upgrade_all.sql
    cat <(echo "SET FOREIGN_KEY_CHECKS=0; ") $MOOGSOFT_HOME/etc/moog/moog_sigdb/stored_procedures/*.sql | mysql -h localhost -P 3306 -u root moogdb
    cat <(echo "SET FOREIGN_KEY_CHECKS=0; ") $MOOGSOFT_HOME/etc/moog/moog_sigdb/triggers/*.sql | mysql -h localhost -P 3306 -u root moogdb
    cat <(echo "SET FOREIGN_KEY_CHECKS=0; ") $MOOGSOFT_HOME/etc/moog/moog_referencedb/stored_procedures/*.sql | mysql -h localhost -P 3306 -u root moog_reference

Upgrade the Apache-Tomcat Webapps

Stop apache-tomcat:

service apache-tomcat stop

Check the tomcat process has stopped before continuing:

service apache-tomcat status
  • If the service/systemctl command hangs on RHEL7, you will need to kill the apache-tomcat java process manually

Scripted (recommended for standard/single-host installs): 

$MOOGSOFT_HOME/bin/utils/ -w
  • If tomcat startup/shutdown failures are reported (such as: Web apps are not rebuilding, please check catalina.out) when running the above command then tomcat should be forcibly shutdown (using kill -9 on the apache-tomcat java PID) then the step repeated

Alternative manual steps:

  • Stop apache-tomcat: service apache-tomcat stop
  • Check the apache-tomcat java process is no longer running: service apache-tomcat status
  • Delete the existing extracted webapps: rm -rf /usr/share/apache-tomcat/webapps/{moogpoller,moogsvr,toolrunner,graze,events}
  • Copy in the new webapp WAR files (and replace the old ones): cp -f $MOOGSOFT_HOME/lib/{moogpoller,moogsvr,toolrunner,graze,events}.war $APPSERVER_HOME/webapps/
  • Restart apache-tomcat: service apache-tomcat start


The following command needs to be run to extract Integrations and SolutionPaks:

$MOOGSOFT_HOME/bin/utils/ -x

Check Services and Start Moogfarmd

Confirm all required Services are running by checking their status and start moogfarmd using the following commands:

service apache-tomcat status
service moogfarmd start
service nginx status
service elasticsearch status

Please note: Before using the UI it is important to clear out your browser cache and local storage. If you don't do this, the browser may be using old cached versions of files which will lead to problems

Re-enable the moog_indexer and events_analyser cronjobs using the following command:

(crontab -l | sed -e 's/^\#\+\(.*moog_indexer.*\)/\1/' -e 's/^\#\+\(.*events_analyser.*\)/\1/') | crontab -


Manual Verification of Upgrade

Carry out the following basic steps to ensure the upgrade to 6.1.5 was successful:

  • Ensure the $MOOGSOFT_HOME/etc/VERSION.txt file contains just "6.1.5"
  • Check that the last entry in the moogdb.schema_upgrades table in MySQL is the 6.1.5 upgrade entry
  • Check that the UI login page displays "Version 6.1.5" at the top
  • Check that the UI "Support Information" window correctly indicates the current version as 6.1.5 and shows the correct schema upgrade history

Automated Verification of Upgrade

Confirm all Moog files have been deployed correctly within $MOOGSOFT_HOME using this utility:


Confirm all apache-tomcat files have been deployed correctly within $MOOGSOFT_HOME using this utility:


Confirm that all the steps are successful. If there are some webapp differences then this can be resolved using -w which will extract the webapps with the right files:


Confirm that all the steps are successful. If there are some schema differences, they may be valid (e.g.: custom_info, or 'view' related) but if there are more substantial differences then it would be worth investigating further to check if all the pre-requisite upgrade scripts have been applied in the right order:

mysql -u root <moogdb_database_name> -e "select * from schema_upgrades;"
mysql -u root <moog_reference_database_name> -e "select * from schema_upgrades;"
  • No labels