- PagerDuty /
- Intégrations /
- Guide d'intégration de Sensu Core
Guide d'intégration de Sensu Core
Sensu est un framework de supervision open source pour les serveurs, les services, l'état des applications et les indicateurs clés de performance (KPI) métier. Sensu a été conçu dès le départ pour superviser les systèmes dans le cloud, tels que les instances AWS EC2, et pour découvrir les systèmes plutôt que de les spécifier au préalable dans votre configuration.
Ce guide vous accompagnera tout au long du processus d'intégration de Sensu Core avec PagerDuty. Si vous rencontrez des difficultés lors de l'intégration, veuillez nous contacter. Contactez-nous .
Note: Les étapes décrites dans ce guide concernent Sensu Core, la version gratuite de Sensu. La version Enterprise intègre PagerDuty , officiellement prise en charge par Heavy Water ; nous vous recommandons donc de suivre les étapes de notre guide.
Guide d'intégration de Sensu Enterprise si vous utilisez Sensu Enterprise.
Si ce n'est pas déjà fait, nous vous recommandons vivement de passer à Python 3 pour utiliser cette intégration. Actuellement, CentOS 5 n'est pas pris en charge par l'intégration Sensu Core. .
Dans PagerDuty
- De la part de Configuration menu, sélectionnez Services.
- Sur votre page Services :
Si vous créez un nouveau service pour votre intégration, cliquez +Ajouter un nouveau service .
Si vous ajoutez votre intégration à un service existant, cliquez sur le nom du service auquel vous souhaitez ajouter l'intégration. Cliquez ensuite sur Intégrations onglet et cliquez sur +Nouvelle intégration bouton.


-
Sélectionner Sensu de la Type d'intégration menu et entrez un Nom de l'intégration .
-
Cliquez sur Ajouter un service ou Ajouter une intégration Cliquez sur le bouton pour enregistrer votre nouvelle intégration. Vous serez redirigé vers la page Intégrations de votre service.

-
Copiez le Clé d'intégration pour votre nouvelle intégration :

Sur votre serveur Sensu
Ce guide a été rédigé et testé sous Ubuntu 16.04 et Amazon Linux 2016.09, avec Sensu 0.20.2-1 et 0.26.5-2. Les chemins d'accès peuvent différer pour d'autres systèmes d'exploitation ou versions de Sensu. Veuillez noter que toutes les commandes fournies sont destinées à être exécutées en tant que racine utilisateur.
- Installez le Agent PagerDuty L'agent reçoit les événements de Sensu et les envoie à PagerDuty via une file d'attente, fournit une journalisation permettant de résoudre les problèmes éventuels et tente automatiquement de renvoyer les alertes en cas de panne de connexion (par exemple, si votre nœud Sensu perd temporairement sa connectivité).
- Enregistrez la configuration du gestionnaire PagerDuty dans le répertoire d'installation de Sensu. conf.d annuaire:
wget -O /etc/sensu/conf.d/pagerduty_handler.json PagerDuty - Modifiez le fichier de configuration pour y insérer votre clé d'intégration obtenue à l'étape 5 de la section ci-dessus :
/etc/sensu/conf.d/pagerduty_handler.json { 'handlers': { 'pagerduty': { 'type': 'pipe', 'command': '/usr/share/pdagent-integrations/bin/pd-sensu -k VOTRE-CLÉ-D'INTÉGRATION-ICI ' } } } - Si vous souhaitez que PagerDuty devienne le gestionnaire par défaut, c'est-à-dire que toute vérification sans gestionnaire spécifique défini notifie PagerDuty en cas d'alerte, ouvrez le fichier de configuration du gestionnaire par défaut et ajoutez-le.
pagerdutyà l'ensemble des gestionnaires :
/etc/sensu/conf.d/default_handler.json { 'handlers': { 'default': { 'type': 'set', 'handlers': [ 'pagerduty' ] } } }Si vous ne souhaitez pas que PagerDuty soit le gestionnaire par défaut, c'est-à-dire si vous voulez que seules les alertes provenant de contrôles spécifiques soient envoyées à PagerDuty, ouvrez le fichier de configuration de chaque contrôle pour lequel vous souhaitez envoyer des alertes à PagerDuty et ajoutez-le.
pagerdutyaux gestionnaires de la vérification :/etc/sensu/conf.d/VOTRE-VÉRIFICATION.json { 'checks': { 'VOTRE-NOM-DE-VÉRIFICATION': { 'commande': 'VOTRE-COMMANDE-DE-VÉRIFICATION', 'abonnés': [ 'VOTRE-ABONNÉS' ], 'intervalle': VOTRE-INTERVALLE, 'gestionnaires': ['default', ' pagerduty '] } } } - Redémarrez Sensu pour que vos modifications de configuration soient prises en compte :
redémarrage du service sensu-server ; redémarrage du service sensu-client
Vérifiez que l'intégration fonctionne
- Créez une vérification standard qui surveille le service cron comme indiqué dans le guide Sensu, Premiers pas avec les chèques Votre vérification ressemblera à ceci si vous avez défini PagerDuty comme gestionnaire par défaut, comme indiqué à l'étape 2 ci-dessus :
/etc/sensu/conf.d/check_cron.json { 'checks': { 'cron': { 'command': '/etc/sensu/plugins/check-process.rb -p cron', 'subscribers': [ 'test' ], 'interval': 60, 'handlers': 'default' } } }Si vous n'avez pas défini PagerDuty comme gestionnaire par défaut, vous devrez le spécifier.
pagerdutycomme dansgestionnairescomme ça:'gestionnaires' : ['default', 'pagerduty'] - Redémarrez Sensu pour que vos modifications de configuration soient prises en compte :
redémarrage du service sensu-server - Vérifiez que Sensu fonctionne correctement, que la tâche cron que vous avez créée est bien configurée et qu'aucune autre alerte n'a été déclenchée. Votre tableau de bord devrait ressembler à ceci :

- Arrêter le service cron :
arrêt du service cron - Dans les 60 secondes, vous devriez voir une alerte dans Sensu et un nouvel incident déclenché dans PagerDuty:


FAQ
Est-il possible de configurer Sensu Core pour qu'il fonctionne avec plusieurs services PagerDuty ?
Oui. Vous pouvez le faire en créant plusieurs gestionnaires, comme suit :
- Choisissez de nouveaux noms pour chaque gestionnaire, c'est-à-dire pagerduty1 , pagerduty2 etc.
- Créez des copies du fichier portant des noms différents. pagerduty1_handler.json , pagerduty2_handler.json , etc.
- Dans chaque fichier :
- Changement 'pagerduty' au nouveau nom distinct
- Modifiez la clé d'intégration pour qu'elle corresponde à la clé d'intégration distincte du service pour lequel le gestionnaire sera utilisé dans PagerDuty.
- Spécifiez, pour différentes vérifications, le gestionnaire PagerDuty distinct à utiliser, par son nom, c'est-à-dire :
/etc/sensu/conf.d/VOTRE-VÉRIFICATION.json { 'checks': { 'VOTRE-NOM-DE-VÉRIFICATION': { 'commande': 'VOTRE-COMMANDE-DE-VÉRIFICATION', 'abonnés': [ 'VOTRE-ABONNÉS' ], 'intervalle': VOTRE-INTERVALLE, 'gestionnaires': ['default', ' pagerduty1 '] } } }
Prêt à commencer ?
Essayez gratuitement n'importe quel produit sur Operations Cloud .
Aucune carte de crédit requise.