Single Host Tarball Installation

This topic covers the procedure to install Moogsoft AIOps for the following scenarios:

  • You can perform the installation as the root user or as a user other than root. Be sure to perform all steps as the same user.

  • You can install Moogsoft AIOps to the directory of your choice.

  • You do not need to use a package manager (RPM) to install Moogsoft AIOps .

Before You Begin

Before you run the Moogsoft AIOps installation, perform the following verification and preparation steps:

  1. Choose a CentOS 7 / RHEL 7 system.

    Note

    These instructions are for a new installation and assume you have not previously installed Moogsoft AIOps. If you have defined Moogsoft environment variables such as $MOOGSOFT_HOME for the installation user, remove the environment variables before continuing the installation.

  2. Identify the Linux user you want to use for installation. Use the same user credentials later if for any reason you need to start or stop Moogsoft AIOps processes.

  3. Optionally set the ulimit maximum for open files and max user processes for the installation user. For example, on a busy system you could increase both to 65535. Setting ulimit values requires root permissions.

  4. Choose a working directory to run your installation. The examples in this document use /home/<your_username> as the working directory. The installation directory requires a minimum of 7GB. If you are also storing the MySQL database in the installation directory, you will require more space to allow the growth of log files and storage of artifacts in the database and Elasticsearch.

  5. Download the Moogsoft AIOps non-root installer. You can download this via a web browser from https://speedy.moogsoft.com/installer/ and use the yum user credentials provided by Moogsoft support. Alternatively you can update the following command with your user credentials to download the installer:

    curl -L -O "https://<username>:<password>@speedy.moogsoft.com/installer/moogsoft-aiops-7.2.0.2.tgz"
  6. Unzip and untar the distribution archive in your working directory:

    tar -xf moogsoft-aiops-7.2.0.2.tgz

    The distribution archive moogsoft-aiops-<version>.tgz contains:

    • A README.txt file

    • The installation script: moogsoft-aiops-install-7.2.0.2.sh

    • A Moogsoft AIOps archive: moogsoft-aiops-dist-7.2.0.2.tgz

    • An integrations archive: moogsoft-aiops-integrations-dist-7.2.0.2. tgz

  7. Install MySQL mysql-community-server-5.7.22. For example to install to your working directory:

    • Download the mysql-community-server-5.7.22 distribution package to your working directory:

      curl -L -O https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.22-el7-x86_64.tar.gz
    • Unzip and untar the MySQL distribution package:

      tar -xf mysql-5.7.22-el7-x86_64.tar.gz
    • Add the MySQL binary path to your $PATH environment variable.

      echo "export PATH=$PATH:~/mysql-5.7.22-el7-x86_64/bin" >> ~/.bashrc && \
      source ~/.bashrc

      For instance, using the /home/admin working directory:

      echo "export PATH=$PATH:/home/admin/mysql-5.7.22-el7-x86_64/bin" >> ~/.bashrc && \
      source ~/.bashrc
  8. Install Kernel Asynchronous I/O (AIO) Support for Linux. For example:

    mkdir -p ~/install/libraries/ && cd ~/install/libraries/ && \
    curl -L -O http://mirror.centos.org/centos/7/os/x86_64/Packages/libaio-0.3.109-13.el7.x86_64.rpm && \
    rpm2cpio ./libaio-0.3.109-13.el7.x86_64.rpm | cpio -idmv && \
    rm -f ./libaio-0.3.109-13.el7.x86_64.rpm && \
    rm -f ~/install/libraries/lib64/libaio.so.1 && \
    ln -s ~/install/libraries/lib64/libaio.so.1.0.1 ~/install/libraries/lib64/libaio.so.1 && \
    echo "export LD_LIBRARY_PATH=`pwd`/lib64:\$LD_LIBRARY_PATH" >> ~/.bashrc && \
    source ~/.bashrc && \ 
    cd -
  9. Navigate to your working directory and install libgfortran v4.4.6 or later. For example:

    cd ~/install/libraries/ && \
    curl -L -O http://mirror.centos.org/centos/7/os/x86_64/Packages/libquadmath-4.8.5-36.el7.x86_64.rpm && \
    rpm2cpio ./libquadmath-4.8.5-36.el7.x86_64.rpm | cpio -idmv && \
    rm ./libquadmath-4.8.5-36.el7.x86_64.rpm && \
    curl -L -O http://mirror.centos.org/centos/7/os/x86_64/Packages/libgfortran-4.8.5-36.el7.x86_64.rpm && \
    rpm2cpio ./libgfortran-4.8.5-36.el7.x86_64.rpm | cpio -idmv && \
    rm ./libgfortran-4.8.5-36.el7.x86_64.rpm && \
    echo "export LD_LIBRARY_PATH=`pwd`/usr/lib64:\$LD_LIBRARY_PATH" >> ~/.bashrc && \
    source ~/.bashrc && \
    cd -
  10. Verify ports 8443 and 8080 are open. If you are installing as root, Verify ports 443 and 80 are open.

  11. Verify your system is running OpenSSL v1.0.2 or later.

Install Moogsoft AIOps
  1. Execute the installation script moogsoft-aiops-install-7.2.0.2.sh in your working directory to install Moogsoft AIOps.

    The script guides you through the installation process and lets you choose the installation directory, by default <working-directory>/Moogsoft.

    bash moogsoft-aiops-install-7.2.0.2.sh
  2. As a convenience, set the $MOOGSOFT_HOME environment variable to point to your installation directory. Additionally, add $MOOGSOFT_HOME/bin/utils to the path. For example:

    echo "export MOOGSOFT_HOME=~/moogsoft" >> ~/.bashrc
    echo "export PATH=$PATH:\$MOOGSOFT_HOME/bin/utils" >> ~/.bashrc && \
    source ~/.bashrc
Initialize Moogsoft AIOps

After you finish the installation process, initialize Moogsoft AIOps as follows:

  1. Configure the toolrunner to execute locally by setting "execute_locally: true" in $MOOGSOFT_HOME/config/servlets.conf:

    sed -i 's/# execute_locally: false,/,execute_locally: true/1' $MOOGSOFT_HOME/config/servlets.conf
  2. Execute the initialization script startup and bootstrap your system.

    $MOOGSOFT_HOME/bin/utils/moog_init.sh -I <zone_name> -u root
    • The script prompts you to accept the End User License Agreement (EULA) and guides you through the initialization process.

    • The script initializes all components on the current host, loads the MySQL schemas using the MySQL user.

    • The 'zone name' sets up a virtual host for the message bus. If you have multiple systems sharing the same bus, use a different zone name for each. For example:

      moog_init.sh -I MoogsoftAIOps -u root
    • If you would like the processes used by AIOps (MySQL, RabbitMQ, Moogfarmd etc) to be restarted when the system is rebooted, the moog_init.sh command above should include a '-k' flag. For example:

      $MOOGSOFT_HOME/bin/utils/moog_init.sh -kI <zone_name> -u root

      For more information on this feature please see: Configure Services to Restart

Unattended Installation Example

The moog_init script provides the capability to run a quiet install and to automatically accept the EULA. This means you can write a bash script to automatically execute both the installation script and the initialization script on the same host. For example:

~/moogsoft-aiops-install-7.2.0.2.sh \
 -d ~/moogsoft && 

~/moogsoft/bin/utils/moog_init.sh \
 -qI MoogsoftAIOps -p MySQLpasswd -u root --accept-eula

Run moog_init.sh -h for a description of all the flags.

Post-Initialization

Verify your installation by following the steps in Post Install Validation.

You can login to Moogsoft AIOps at the following URL: https://<server_ip/hostname>:8443

You can use the Process Control Utility process_cntl to start, stop, and check the status of the processes. See Control Moogsoft AIOps Processes.

Change the default passwords for users created during the installation process. See Change passwords for default users for instructions.

Follow the Troubleshooting guide to resolve any issues.