Install Icinga with RedHat or CentOS

Configure the BigPanda agent to send monitoring alerts from Icinga.

The BigPanda agent is a low-footprint utility installed on the master host of your monitoring tool. It consumes alerts from the tool in real-time and then transmits them to BigPanda via TLS-encrypted HTTP calls.

❗️

Python Compatibility

To use the Open Integration Manager for Agent-based integrations, Python version>= 3.8.0 and an Agent version >= 10.2 are required.

Prerequisites

python >= 3.8.0 is required for the latest version of the BigPanda Agent, and will be installed by the BigPanda Agent installer if it does not exist.

  1. Ensure python3 is installed with the following command:

    $ sudo yum install -y python3
    
  2. Verify the install with the following commands:

    $ python3 --version
    $ pip3 --version
    

Note: If pip3 was not installed as a dependency, it can be installed with sudo yum install -y python3-pip.

Note: Access to JFrog, pypi, and yum repositories are required to install all dependencies.

Install the BigPanda Agent on RedHat or CentOS

Connect to the host where your Icinga server is installed, and install the BigPanda agent package.

  1. Add a new yum repository to download the BigPanda agent package.

     $ sudo vim /etc/yum.repos.d/bigpanda.repo
     
    ...
    
     [BigPanda]
     name=BigPanda
     baseurl=https://bigpandaio.jfrog.io/artifactory/int-rpm/bigpanda/agents/
     enabled=1
     gpgcheck=0
     gpgkey=https://bigpandaio.jfrog.io/artifactory/int-rpm/bigpanda/agents/repodata/repomd.xml.key
     repo_gpgcheck=1 
    
  2. Update the yum repos list to add the BigPanda repo.

     $ sudo yum update 
    
  3. List all available packages with duplicates in the BigPanda repo.

     $ sudo yum list --showduplicates bigpanda-agent | expand
     
    Available Packages
     bigpanda-agent.x86_64       10.2.0-1.el7       BigPanda
     bigpanda-agent.x86_64       10.2.0-1.el8       BigPanda
     bigpanda-agent.x86_64       10.2.0-1.el9       BigPanda
     bigpanda-agent.x86_64       10.3.0-1.el7       BigPanda
     bigpanda-agent.x86_64       10.3.0-1.el8       BigPanda
     bigpanda-agent.x86_64       10.3.0-1.el9       BigPanda 
    

    Note: RHEL or Centos does not send the OS version to JFrog, so we need to cherry-pick the correct version for the OS.

  4. Install the BigPanda agent package.

     $ sudo yum install bigpanda-agent-<version-number> 
    

    Note: Append the version number to the package name, (i.e. bigpanda-agent-10.3.0-1.el7).

Note: For the OIM, bigpanda-agent v10.0.0+ is required.

Configure Icinga

Open the main Icinga configuration file (usually /usr/local/icinga/etc/icinga.cfg or /etc/icinga/icinga.cfg):

$ sudo vim /usr/local/icinga/etc/icinga.cfg

  • Set log_rotation_method to d (= daily log rotation)
  • Make sure log_archive_path is configured (= location of old logs)
  • Test that Icinga (usually nagios user) has write permissions to the log_archive_path folder

Reload the Icinga service for the changes to take effect.

sudo service icinga restart

Configure the BigPanda Agent

Generate the agent's configuration file:

$ sudo bigpanda-config --init --token <Your Org Bearer Token>
$ sudo bigpanda-config --add listener --app-key <Your App Key>

When prompted, specify the locations of icinga.log, status.dat, and objects.cache files.

The script output should look like this:

Log File Path: /var/log/icinga/icinga.log
Status Dat Path: /var/cache/icinga/status.dat
Objects Cache Path: /var/cache/icinga/objects.cache

Of course, the actual paths will depend on your installation.

Update Permissions

Give the agent read permissions to the objects.cache, status.dat and log files. A possible way to do it:

$ sudo usermod -a -G "<GROUP OF OBJECT CACHE FILE>,<GROUP OF LOG FILE>,<GROUP OF STATUS DAT FILE>" bigpanda

Start the BigPanda Agent

Start the BigPanda agent service by running the following command:

  • For RHEL 7 and RHEL 8:
     $ sudo service bigpanda start
    
  • Verify the agents have started:
    $ systemctl status bigpanda
    

Troubleshooting

You should have the bigpanda directory with the bigpanda.conf config file located at /etc/bigpanda/bigpanda.conf.

If the configs are missing or the package did not set up correctly, stop the service the and reinstall the package.

  $ sudo service bigpanda stop
  $ sudo yum reinstall -y bigpanda