Go to the Centreon Community website

Il y a quelque temps, nous vous avons présenté tout l’intérêt de connecter PagerDuty et Centreon. Vous avez été nombreux à nous demander des précisions sur la configuration à mettre en œuvre pour parvenir à ce résultat. Voici tout ce que vous avez toujours voulu savoir sur la configuration aux petits oignons de votre outil de supervision préféré et PagerDuty.

Pour commencer deux rappels essentiels

Qu'est ce que PagerDuty ?

PagerDuty est un gestionnaire d'événements. Il inclut diverses fonctionnalités de base telles que la résolution et l'acquittement d'alertes.

La plateforme SaaS permet de rassembler les alertes en provenance de différents systèmes grâce à plus 375 connecteurs pour s’intégrer avec des services et des outils comme Centreon. La plateforme intègre de l’IA pour permettre une plus grande automatisation et de la prédictibilité.  

Qu'est ce qu'un Stream Connector?

Un Stream Connector permet l'envoie de données de supervision de Centreon vers tout outil externe qui peut recevoir des données. Chaque outil sert un usage spécifique et accepte un formatage précis des données. C'est là le rôle du Stream Connector. Formater puis transmettre les informations de supervision. Que ce soit des métriques ou des événements.

Quel intérêt de connecter Centreon et PagerDuty ?

Maintenant que vous savez de quoi nous parlons, posons-nous la question de l’intérêt de faire travailler Centreon avec PagerDuty. A part frimer à la machine à café :-), connecter ces deux outils de référence dans leur domaine présente trois avantages principaux :

Intégrer des données fiables et complètes dans vos alertes… 

Centreon assure une supervision holistique et offre une excellente visibilité apporte du SI, vous intégrer dans PagerDuty des données exhaustives et fiables.

… de façon transparente...

Grâce au stream-connector, la mise en place est très fluide pour permettre une mise en œuvre rapide.

… pour un travail sur le long terme ! 

En intégrant Centreon à PagerDuty vous favorisez l’agilité et l’évolutivité de votre système de supervision IT et faciliter le pont entre métier et IT.

Comment lier Centreon à PagerDuty ?

Le principe pour lier Centreon et PagerDuty repose sur un Stream Connector qui permet l'émission des événements de supervision. Les alertes de supervision deviennent alors des incidents dans PagerDuty.

Configurer PagerDuty : Configuration d’un service pour les incidents

1. Allez dans le menu Services → Service directory

2. Ajoutez un nouveau service (ou utilisez un existant)

3. Suivez les étapes Name, Assign and Alert Grouping steps et configurez-les selon vos besoins

4. Lors de l’étape intégration, choisissez l’intégration Centreon

5. Lorsque votre intégration est terminée, pensez à récupérer la clé qui vous est attribuée. Elle sera utilisée par le Stream Connector pour communiquer avec PagerDuty

Configurer Centreon

Installation du Stream Connector

1. Connectez vous en SSH sur votre serveur Centreon central avec un utilisateur root

2. Installez les dépendances Lua nécessaires
yum install -y lua-curl epel-release make gcc

3. Installez le gestionnaire de modules Lua nommé luarocks
yum install luarocks

4. Installez les modules lua nécessaires
luarocks install centreon-stream-connectors-lib
luarocks install luatz

5. Téléchargez le Stream Connector
wget -O /usr/share/centreon-broker/lua/pagerduty-events-apiv2.lua https://raw.githubusercontent.com/centreon/centreon-stream-connector-scripts/master/centreon-certified/pagerduty/pagerduty-events-apiv2.lua

6. Configurez les bons droits
chmod 644 /usr/share/centreon-broker/lua/pagerduty-events-apiv2.lua

Configuration du Stream Connector

1. Connectez-vous à l'interface de votre Centreon avec un compte admin

2. Allez dans le menu Configuration > Collecteurs et sélectionnez Configuration du broker

3. Cliquez sur la configuration broker central-broker-master

4. Allez dans l'onglet Output

5. Ajoutez un nouvel output Generic - Stream connector

6. Nommez-le selon votre convenance

7. Renseignez le chemin du Stream Connector /usr/share/centreon-broker/lua/pagerduty-events-apiv2.lua

8. Ajoutez un paramètre string nommé pdy_routing_key qui a pour valeur la clé d'intégration obtenue dans PagerDuty

9. Ajoutez un paramètre string nommé pdy_centreon_url qui a pour valeur l’adresse de votre Centreon

10. Sauvegardez votre configuration

11. Allez dans le menu  Configuration → Collecteurs et sélectionnez Collecteurs

12. Sélectionnez le collecteur Central

13. Cliquez sur le bouton Exporter la configuration

14. Cochez les 4 premières cases

15. Cliquez sur le bouton Exporter

Votre Centreon est désormais prêt à envoyer les alertes à PagerDuty !

Suivi d'une alerte de Centreon à PagerDuty

L’origine : Centreon

Maintenant que tout est en place, regardons de plus près le parcours d'une alerte.

Notre hôte Blog-server est supervisé par Centreon. Une alerte sur le service Info est présente. 

La transmission : le Stream Connector

En mettant un niveau de verbosité accentué pour les logs du Stream Connector, nous obtenons les informations suivantes :

INFO: [EventQueue:send_data]: Going to send the following json {"dedup_key":"20_H","payload":{"component":"Blog-server","group":"technical-content","summary":"Blog-server: CRITICAL: Cooling fluid leak detected","class":"service","severity":"High","timestamp":"2021-10-07T12:36:23.000","custom_details":{"Hostgroups":"technical-content"},"source":"Blog-server"},"event_action":"trigger","client":"Centreon Stream Connector","routing_key":"XXXXXXXXXXXXXXX","links":[{"href":"http://10.25.11.14/centreon/main.php?p=20202&o=hd&host_name=Blog-server","text":"Link to Centreon host summary"}]}

Dans son fonctionnement de base, nous constatons que le Stream Connector génère un JSON formaté pour PagerDuty. Le JSON est alors envoyé à l'adresse adéquate.

La réception : PagerDuty

Côté PagerDuty, nous pouvons observer nos alertes : 

Plus de détails sur l’alerte sont disponibles en cliquant dessus, notamment la chronologie de l’événement.

Nous visualisons le suivi du traitement de l’alerte au sein de PagerDuty. Un événement sera automatiquement résolu dans PagerDuty lorsque le service associé passera en OK dans Centreon. La chronologie des événements se présente de la façon suivante dans Centreon :

Pour aller plus loin...

Le Stream Connector propose de nombreuses options pour permettre d'affiner les alertes envoyées à PagerDuty. Vous trouverez toutes les informations nécessaires à la personnalisation de votre configuration sur notre documentation dédiée à ce Stream Connector.