Moogsoft Docs

Distributed Installation for Non-root

You can install the different components of Moogsoft AIOPs to multiple machines in order to distribute the workload. Dividing the workload for AIOps components between multiple machines can provide performance improvement, but it does not provide redundancy or failover. For those features, see High Availability .

Install Moogsoft AIOps on Distributed Hosts

The following procedure outlines the general procedure for installing Moogsoft AIOps

  1. Choose which host each component should be installed on, and run one or more of the following commands on the selected hosts as required by your distributed architecture.

    yum install moogsoft-db
    yum install moogsoft-eula
    yum install moogsoft-lams
    yum install moogsoft-mooms
    yum install moogsoft-search
    yum install moogsoft-server
    yum install moogsoft-ui
    yum install moogsoft-utils
    yum install moogsoft-common
  2. Set the environment variables (via .bashrc ) on each host with the following commands:

    export MOOGSOFT_HOME=/usr/share/moogsoft
    export JAVA_HOME=/usr/java/latest
    export APPSERVER_HOME=/usr/share/apache-tomcat
    export PATH=$PATH:$MOOGSOFT_HOME/bin:$MOOGSOFT_HOME/bin/utils
  3. Download the mysql-connector-5.1.45 jar file :


    wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.45.tar.gz
  4. Extract, rename and move the file to $MOOGSOFT_HOME/lib/cots/nonDist/ as follows:


    tar --strip-components 1 -xvf mysql-connector-java-5.1.45.tar.gz -C $MOOGSOFT_HOME/lib/cots/nonDist/ mysql-connector-java-5.1.45/mysql-connector-java-5.1.45-bin.jar --transform 's/-bin//'


Initializing a distributed installation

Each installed package has its own init script (for example moog_init_ui.sh ). The individual package init scripts make configuring relevant properties more straightforward, such as those in $MOOGSOFT_HOME/config/system.conf .
For example, moog_init_ui.sh includes the following optional arguments:

  • -d Configure system.conf with the hostname and port of the MySQL server
  • -m Configure system.conf with the hostname and port of the MooMS server
  • -s Configure system.conf with the hostname and port of the search (Elasticsearch) server
  • -z Configure system.conf and other UI files with the Zone name and RabbitMQ vhost

Examples of a distributed installations

SERVER1 and SERVER2 are example hostnames. MY_ZONE is an example MooMS Zone name.

Example 1: moogsoft-db on SERVER1 and all other RPMs on SERVER2

The db package can be initialized with basic options but most other packages then need to know its location for their initialization.

  • Initialize the database on SERVER1 :

    moog_init_db.sh -Iu root
  • On SERVER1 , connect to mysql as the root user and grant all access on the moogdb and moog_reference databases to the ermintrude user on SERVER2 :

    GRANT ALL ON moogdb.* TO ermintrude@'SERVER2' IDENTIFIED BY 'm00';
    GRANT ALL ON moog_reference.* TO ermintrude@'SERVER2' IDENTIFIED BY 'm00';
  • Initialize the remaining components on SERVER2 :

    moog_init_mooms.sh -pz MY_ZONE
    moog_init_lams.sh -bz MY_ZONE -d SERVER1:3306
    moog_init_search.sh -d SERVER1:3306
    moog_init_server.sh -bz MY_ZONE -d SERVER1:3306
    moog_init_ui.sh -otwxfz MY_ZONE -d SERVER1:3306