Moogsoft Enterprise - Offline RPM pre-installation
You must perform certain preparatory tasks before you install Moogsoft Enterprise v8.2.0.
Follow these steps if you have root access to the machine or machines on which you will install or upgrade Moogsoft Enterprise, but you cannot connect to Yum repositories outside your network from those machines.
If you are performing another type of installation, see:
Online RPM pre-installation: Moogsoft Enterprise - Online RPM pre-installation.
Online Tarball pre-installation: Moogsoft Enterprise - Online Tarball pre-installation.
Offline Tarball pre-installation: Moogsoft Enterprise - Offline Tarball pre-installation.
Upgrade considerations
To ensure your upgrade to v8.2.0 is quick and causes as little system impact as possible, Moogsoft recommends that your v7.x system has been subject to:
Regular use of Auto Close (or another method) to close operationally complete and/or obsolete Alerts and Situations
Regular use of the Historic Data utility to move as many old closed Alerts and Situations from the active database to the historic database as is operationally allowable
If your v7.x system has not been subject to the above guidelines, be aware that, on first start of v8.2.0 after upgrading, a one-time operation will copy all active event data to the historic database.
After this initial copy completes post-upgrade, the database splitter process purges any copied events from the active database older than two weeks (default setting). Note that these are one-time operations as the Historic Event Data migration task runs regularly post-upgrade, and the impact of future runs will be much reduced.
This activity may take a few hours to potentially a day or more, depending on your system's active data volume, and may impact the ability of your system to ingest events.
This information applies to upgrades only. New installations will not experience this initial workload.
Before you begin
Before you begin to prepare for the installation, verify the following:
You have root access to the system where you plan to install Moogsoft Enterprise.
You are familiar with the supported versions of third party software, as outlined in Moogsoft Enterprise v8.x Supported Environments.
Download the installation files
Complete the following steps before you perform an offline RPM installation of Moogsoft Enterprise:
Download the files required for the offline installation and copy them to any host on which the product needs to be installed:
The BASE repository containing the dependent packages to install for RHEL 7 or CentOS 7.
The ESR repository containing the standard RPMs and ancillary packages (Apache Tomcat, RabbitMQ, JRE, etc).
The Percona database install script. This script configures multiple nodes to run as a cluster, and also supports a single node. Enter your "speedy" Yum repo user credentials when prompted.
cat > aiops_repo.sh << _EOF_ #!/bin/bash clear echo "Please download the required files for offline installation" echo read -p "AIOps Repository Username: " AIOPS_USER export AIOPS_USER read -p "AIOps Repository Password: " -s AIOPS_PASS export AIOPS_PASS curl -L -O https://\$AIOPS_USER:\$AIOPS_PASS@speedy.moogsoft.com/repo/aiops/8.2.0/install_percona_nodes.sh 2>/dev/null curl -L -O https://\$AIOPS_USER:\$AIOPS_PASS@speedy.moogsoft.com/offline/aiops/2022-03-11-1646996777-MoogsoftBASE7_offline_repo.tar.gz curl -L -O https://\$AIOPS_USER:\$AIOPS_PASS@speedy.moogsoft.com/offline/aiops/2022-03-11-1646996777-MoogsoftESR_8.2.0_offline_repo.tar.gz echo _EOF_ bash aiops_repo.sh;
Download the Percona and dependency packages using cURL on an internet-connected host:
PERCONA_VERSION="5.7.36-31.55.1"; for PACKAGE in shared client server shared-compat; do curl -L -O http://repo.percona.com/percona/yum/release/7/RPMS/x86_64/Percona-XtraDB-Cluster-${PACKAGE}-57-${PERCONA_VERSION}.el7.x86_64.rpm done curl -L -O http://repo.percona.com/percona/yum/release/7/RPMS/x86_64/percona-xtrabackup-24-2.4.24-1.el7.x86_64.rpm
Copy the Percona
install_percona_nodes.sh
install script and RPM install files to all servers that will house a database node.Copy the
tar.gz
files to all servers that will run Moogsoft Enterprise components.Download the HA Proxy RPM on an internet-connected host (requires root permissions):
yum install --downloadonly --downloaddir ./ haproxy
Copy the HA Proxy RPM to the servers that will have the Core, UI and LAM server roles.
See Server Roles for more information on the Core, UI and LAM server roles.
Prepare the local Yum repositories
Follow these steps to create local Yum repositories to house the installation packages. If you are running a distributed installation, perform these steps on each machine that will run Moogsoft Enterprise components.
Create two directories to house the repositories. For example:
sudo mkdir -p /media/localRPM/BASE/ sudo mkdir -p /media/localRPM/ESR/
Extract the two Tarball files into separate directories and move the HA Proxy RPM to
/media/localRPM/BASE/
. For example:tar xzf *-MoogsoftBASE7_offline_repo.tar.gz -C /media/localRPM/BASE/ tar xzf *-MoogsoftESR_8.2.0_offline_repo.tar.gz -C /media/localRPM/ESR/ mv haproxy*rpm /media/localRPM/BASE/
Back up the existing
/etc/yum.repos.d
directory. For example:mv /etc/yum.repos.d /etc/yum.repos.d-backup
Create an empty
/etc/yum.repos.d
directory. For example:mkdir /etc/yum.repos.d
Create a
local.repo
file ready to contain the local repository details:vi /etc/yum.repos.d/local.repo
Edit
local.repo
and configure thebaseurl
paths for BASE and ESR to point to the your directories. For example:[BASE] name=MoogCentOS-$releasever - MoogRPM baseurl=file:///media/localRPM/BASE/RHEL gpgcheck=0 enabled=1 [ESR] name=MoogCentOS-$releasever - MoogRPM baseurl=file:///media/localRPM/ESR/RHEL gpgcheck=0 enabled=1
Clean the Yum cache:
yum clean all
Verify that Yum can detect the newly created repositories. For example:
yum info "moogsoft-*" Available Packages Arch : x86_64 Version : 8.2.0 Release : XYZ Size : 123 M Repo : ESR Summary : Algorithmic Intelligence for IT Operations URL : https://www.moogsoft.com License : Proprietary Description : Moogsoft AIOps (8.2.0) - Build: XYZ - (Revision: XYZ)
The results should include the following packages:
Name : moogsoft-db Name : moogsoft-integrations Name : moogsoft-integrations-ui Name : moogsoft-mooms Name : moogsoft-search Name : moogsoft-server Name : moogsoft-ui Name : moogsoft-utils Name : moogsoft-common
Install the downloaded Percona RPMs on all servers that will house a database node:
yum -y install Percona-XtraDB-Cluster-*.rpm percona-xtrabackup-*.rpm
Install Java 11:
VERSION=11.0.14.1.1; yum -y install java-11-openjdk-headless-${VERSION} java-11-openjdk-${VERSION} java-11-openjdk-devel-${VERSION}
Set SELinux to permissive mode or disable it completely. For example, to set SELinux to permissive mode:
setenforce 0
If you want to disable SELinux at boot time, edit the file
/etc/sysconfig/selinux
.Run the following commands as root to set appropriate ulimits for the 'moogsoft' user which will run the application. Replace the 'moogsoft' user below as the user who will be installing and running the application⏤by default, it is 'moogsoft' for RPM deployments:
LIMITS_NPROC_CONF=/etc/security/limits.d/00_moogsoft.conf sudo bash -c "echo \"moogsoft hard nproc 65536\" >> ${LIMITS_NPROC_CONF}"; sudo bash -c "echo \"moogsoft hard nofile 65536\" >> ${LIMITS_NPROC_CONF}"; sudo bash -c "echo \"moogsoft soft nproc 65536\" >> ${LIMITS_NPROC_CONF}"; sudo bash -c "echo \"moogsoft soft nofile 65536\" >> ${LIMITS_NPROC_CONF}";
Log out of the command terminal and back in to implement the changes.
Optional: GPG key validation of the RPMs
To validate the RPMs before installation:
Download the key. For 8.0.0.5 and prior:
https://keys.openpgp.org/vks/v1/by-fingerprint/0A8FD9AB6F1693A1967B3B8CB919E617EC6946C2
Copy the key (it will be an
.asc
file) to the server where the RPMs or tarball will be installed.Import the key:
gpg --import 0A8FD9AB6F1693A1967B3B8CB919E617EC6946C2.asc
Download all the '8.2.0' RPMs and
.sig
files from the speedy yum repository using a browser, providing speedy credentials when asked by the browser:https://<speedyusername>:<speedypassword>@speedy.moogsoft.com/repo/aiops/esr/x86_64
Move the RPMs and
.sig
files into the same folder. For example,/tmp
, as used in the example below.Copy the following code into a bash terminal and run it to perform the validation:
while read RPM do echo "Current RPM: $RPM" gpg --verify ${RPM}.sig ${RPM} 2>&1 done < <(find /media/localRPM/ESR/RHEL/ -name '*.rpm');
Confirm that all the commands for each RPM report:
Good signature from "Moogsoft Information Security Team "<security@moogsoft.com>"
Your local Yum repositories are now ready. Proceed with your offline installation or upgrade. See the upgrade instructions relevant to your deployment.