Icinga2 Integration Guide

Icinga 2 is an open source monitoring system which checks the availability of your network resources, notifies users of outages and generates performance data for reporting. Scalable and extensible, Icinga 2 can monitor large, complex environments across multiple locations.

What can Xurrent IMR do for Icinga2 users?

With the Icinga2 Integration, Xurrent IMR sends new Icinga2 host and service downtime alerts to the right team and notifies them based on on-call schedules via email, text messages(SMS), phone calls(Voice), Slack, Microsoft Teams and iOS & Android push notifications, and escalates alerts until the alert is acknowledged or closed. Xurrent IMR provides your application engineers with detailed context around the Humio alert along with playbooks and a complete incident command framework to triage and remediate and resolve incidents with speed.

Whenever an alert is created on Icinga2(host or service downtime or threshold breach), Xurrent IMR will create an incident. When the alert is resolved on Icinga2(host or service up), Xurrent IMR will auto-resolve the incident.

You can also use Alert Rules to custom route specific Icinga2 alerts(depenging on the host, service or metric) to specific users, teams or escalation policies, write suppression rules, auto add notes, responders and incident tasks.

To integrate Icinga2 with Xurrent IMR, complete the following steps:

In Xurrent IMR:

  1. To add a new Icinga2 integration, go to Teams on Xurrent IMR and click on the team you want to add the integration to.
  2. Next, go to Services and click on the relevant Service.
  3. Go to Integrations and then Add New Integration. Give it a name and select the application Icinga2 from the dropdown menu.
  4. Go to Configure under your integrations and copy the Webhook URL generated.

In Icinga2:

  1. Install the Icinga2 software on your system.
  2. [IMPORTANT]
    {: .text-gamma .text-blue-300 }
    Make sure you have Python2 installed on your system.
    {: .text-blue-300 }
  3. After this, add an integration to your Xurrent IMR account. This is NOT the integration automatically provided to you.
  4. Then, download the Xurrent IMR-Icinga2 files by following the steps given below:
  5. Now open the Xurrent IMR-Icinga2 configuration file and enter the provided integration key into the pager field.
  6. Now, move the files into their respective folders inside /etc/icinga2/.
  7. The Xurrent IMR-Icinga2.conf file must go to the conf.d folder (or the objects.d folder, whichever exists).
  8. The Xurrent IMR-webhook-notification.py file must go to the scripts folder.
  9. Ensure that ‘ICINGAADMINS’ exists as a user group. If not, define it as follows in the users.conf file in conf.d folder.
  10. Now add the custom attribute enable_Xurrent IMR to your configuration’s host and service configuration objects for all hosts and services you wish to receive alerts from.
  11. For example:
  12. If the number of objects is large then you can add the above line to the generic-host and generic-service templates in the templates.conf file in the conf.d folder.
  13. Finally you can import this template to your objects.
  14. Restarting Icinga2 service:
  15. Icinga2 is now integrated with Xurrent IMR!