Install and Upgrade Moogsoft AIOps

Use this guide to learn how to install Moogsoft AIOps:

If you are installing another version, see Welcome to the Moogsoft Docs! for more information. Refer to the following topics to help choose the right environment for your Moogsoft AIOps deployment:

If you are upgrading Moogsoft AIOps, see Upgrade - RPM Deployments, or Upgrade - Tarball Deployments as appropriate.

Moogsoft AIOps Packages

A Moogsoft AIOps deployment comprises several packages. The different implementation procedures offer you flexible ways to deploy the packages, which consist of the following:

  • LAMs (integrations) that listen or poll for events, parse and encode them into discrete events, and then write the discrete events to the Message Bus.

  • The Message Bus (RabbitMQ) that receives published messages from integrations. It publishes messages destined for data processing (Moogfarmd) and the web application server.

  • The system datastore (MySQL) that handles transactional data from other parts of the system: LAMs (integrations), data processing, and the web application server.

  • The data processing component (Moogfarmd), an application that consumes messages from the Message Bus. It processes event data in a series of servlet-like modules called Moolets. Moogfarmd reads and writes to the database and publishes messages to the bus.

  • The web application server (Tomcat) that reads and writes to the Message Bus and the database.

  • A proxy (Ngnix) for the web application server and for integrations.

  • The search engine (Elasticsearch) for the UI that indexes documents from the indexer Moolet in the data processing series. It returns search results to Tomcat.

The diagram below shows the general data flow between components:

29959618.png

Deployment Options

You have the option to install all Moogsoft AIOps packages on a single machine. However, the modular approach of the Moogsoft AIOps distribution means fewer dependencies between individual packages. This means you have the flexibility to install different components to different machines. For example, you can install the web server components, Nginx and Tomcat, and the database component, MySQL, on different hosts.