Recherche de site Web

Comment installer l’outil de surveillance Icinga2 sur Debian


Créé à l’origine comme un fork de l’outil de surveillance Nagios, Icinga est une solution gratuite et open-source de surveillance et d’alerte d’infrastructure qui surveille l’ensemble de votre infrastructure et fournit des commentaires sur la disponibilité et les performances de vos appareils.

Il vous permet également de collecter, stocker et visualiser diverses métriques. Vous pouvez ensuite créer des rapports à l’aide des données collectées et des visualisations qui ont été remplies.

Icinga envoie également des alertes ou des notifications en cas de problème afin que vous puissiez résoudre rapidement les problèmes et rétablir les services dans les plus brefs délais.

Dans ce guide, nous allons vous guider à travers l’installation de l’outil de surveillance Icinga2 sur Debian 11/10.

Conditions préalables

Pour réussir l’installation d’Icinga2, assurez-vous d’avoir installé la pile LAMP. Nous avons déjà un guide sur la façon d’installer LAMP sur Debian 10/11. Une fois que vous avez mis en place tous les composants de LAMP, passez aux étapes suivantes.

Étape 1 : Installer les modules PHP dans Debian

Quelques modules PHP supplémentaires sont nécessaires pour que l’installation se déroule sans problème. Par conséquent, sur votre terminal, exécutez la commande suivante pour les installer.

$ sudo apt install php-gd php-mbstring php-mysqlnd php-curl php-xml php-cli php-soap php-intl php-xmlrpc php-zip  php-common php-opcache php-gmp php-imagick php-pgsql  -y

Ensuite, éditez le fichier ini PHP.

$ sudo nano /etc/php/7.4/apache2/php.ini

Apportez les modifications suivantes.

memory_limit = 256M 
post_max_size = 64M
upload_max_filesize = 100M	
max_execution_time = 300
default_charset = "UTF-8"
date.timezone = "Asia/Kolkata"
cgi.fix_pathinfo=0

Pour le paramètre date.timezone, définissez-le pour qu’il reflète votre fuseau horaire actuel. Voici la liste des fuseaux horaires pris en charge.

Enregistrez les modifications et quittez le fichier, puis redémarrez Apache pour appliquer les modifications.

$ sudo systemctl restart apache2

Étape 2 : Installer Icinga2 dans Debian

Pour installer Icinga2 et les plugins de surveillance associés, mettez d’abord à jour les listes de paquets :

$ sudo apt update -y

Exécutez ensuite la commande suivante :

$ sudo apt install icinga2 monitoring-plugins -y

Une fois l’installation terminée, démarrez et activez Icinga2 pour démarrer au démarrage.

$ sudo systemctl start icinga2
sudo systemctl enable icinga2

Vous pouvez vérifier qu’Icinga2 s’exécute comme suit :

$ sudo systemctl status icinga2

À partir de la sortie, vous pouvez voir que le démon Icinga2 est en cours d’exécution, ce qui est génial !

Étape 3 : Installer le module MySQL Icinga2 IDO

Icinga IDO (Icinga Data Output) est une fonctionnalité clé qui exporte toutes les informations de configuration et d’état dans la base de données IDO. La base de données IDO se trouve en arrière-plan et sert Icinga Web 2.

Pour installer le module MySQL Icinga IDO, exécutez la commande :

$ sudo apt install icinga2-ido-mysql -y

Cela vous guide à travers quelques invites pour configurer le module icinga2-ido-mysql. Lorsque vous êtes invité à activer la fonction icinga2-ido-mysql, sélectionnez « Oui » et appuyez sur ENTER.

Le module Icinga-ido-mysql nécessite l’installation et la configuration d’une base de données avant de pouvoir être utilisé. Habituellement, cela peut être géré à l’aide de dbconfig-common qui est un outil qui simplifie la gestion de la base de données.

Pour plus de simplicité, choisissez de configurer automatiquement la base de données pour icinga2-ido-mysql à l’aide de dbconfig-common en sélectionnant « Oui » et en appuyant sur ENTRÉE.

Ensuite, fournissez un mot de passe pour que icinga2-ido-mysql se connecte au serveur de base de données et confirmez-le.

Étape 4 : Création d’une base de données pour le module MySQL Icinga-IDO

Ensuite, nous devons créer manuellement la base de données pour le module de surveillance icinga2-ido-mysql.

Alors, connectez-vous à l’invite MySQL.

$ sudo mysql -u root -p

Créez la base de données et l’utilisateur de base de données pour icinga2-ido-mysql, puis accordez tous les privilèges à l’utilisateur de la base de données.

N’hésitez pas à utiliser n’importe quel nom arbitraire pour la base de données et l’utilisateur de la base de données.

> CREATE DATABASE icinga_ido_db;
> GRANT ALL ON icinga_ido_db.* TO 'icinga_ido_user'@'localhost' IDENTIFIED BY 'Password321';
> FLUSH PRIVILEGES;
> EXIT;

Ensuite, importez le schéma IDO Icinga2 comme suit. Fournissez le mot de passe root MySQL une fois que vous y êtes invité.

$ sudo mysql -u root -p icinga_ido_db < /usr/share/icinga2-ido-mysql/schema/mysql.sql

Étape 5 : Activer le module MySQL Icinga-IDO

Le paquet IDO MySQL a un fichier de configuration par défaut connu sous le nom de ido-mysql.conf. Nous devons apporter quelques modifications pour permettre la connexion à la base de données que nous venons de créer.

Alors, ouvrez le fichier de configuration.

$ sudo vim /etc/icinga2/features-available/ido-mysql.conf

Faites défiler et naviguez jusqu’à cette section et fournissez les détails de la base de données.

Enregistrez les modifications et quittez le fichier de configuration. Ensuite, activez le module ido-mysql comme suit.

$ sudo icinga2 feature enable ido-mysql

Pour appliquer les modifications, redémarrez Icinga2 :

$ sudo systemctl restart icinga2

Étape 6 : Installer IcingaWeb2 sur Debian

Ensuite, nous allons installer et configurer l’IcingaWeb2, qui est une interface web simple, intuitive et réactive pour Icinga.

Tout d’abord, nous allons installer IcingaWeb2 avec l’interface de ligne de commande Icinga comme suit :

$ sudo apt install icingaweb2 icingacli -y

Une fois l’installation terminée, créez une base de données pour Icinga Web 2.

$ sudo mysql -u root -p

Créez ensuite la base de données et l’utilisateur de base de données pour Icingaweb2 et accordez toutes les autorisations à l’utilisateur de la base de données sur la base de données.

> CREATE DATABASE icingaweb2;
> GRANT ALL ON icingaweb2.* TO 'icingaweb2user'@'localhost' IDENTIFIED BY 'P@ssword';
> FLUSH PRIVILEGES;
> EXIT;

Ensuite, créez un jeton secret qui sera utilisé pour l’authentification lors de la finalisation de la configuration sur un navigateur Web.

$ sudo icingacli setup token create

Notez le jeton et collez-le dans un endroit sûr car il sera nécessaire lors de la configuration d’Icinga2 sur le navigateur.

Étape 7 : Terminez l’installation d’IcingaWeb2

La dernière étape de l’installation d’Icinga consiste à finaliser la configuration sur un navigateur. Alors, lancez votre navigateur et rendez-vous à l’URL affichée.

http://server-ip/icingaweb2/setup

Cela vous amène à cette page où vous devrez vous authentifier avec le jeton de sécurité que vous avez généré à l’étape précédente. Collez le jeton de sécurité et cliquez sur « Suivant ».

L’étape suivante affiche tous les modules qui peuvent être activés. Le module de surveillance est activé par défaut. Vous pouvez activer des modules supplémentaires si vous le jugez nécessaire.

La page suivante est essentiellement une liste de contrôle de tous les modules php qui doivent être activés. Assurez-vous que tous les modules php requis ont été installés et qu’aucune erreur n’est affichée. Ensuite, faites défiler vers le bas et cliquez sur « Suivant » pour passer à l’étape suivante.

Pour l’authentification, sélectionnez « Base de données » et cliquez sur « Suivant ».

À l’étape suivante, remplissez les détails de la base de données pour IcingaWeb2 que vous avez spécifiés à l’étape 6.

Faites défiler vers le bas et cliquez sur « Valider la configuration ».

Si les détails sont corrects, vous devriez recevoir une notification indiquant que tout s’est bien passé. Faites défiler vers le bas et cliquez sur « Suivant ».

À l’étape suivante, cliquez simplement sur « Suivant » pour accepter le paramètre par défaut et procéder à l’installation.

Ensuite, configurez un compte Admin pour l’utilisateur que vous utiliserez pour vous connecter à l’interface utilisateur Web d’Icinga2.

À l’étape suivante, cliquez simplement sur « Suivant » pour accepter les détails de configuration par défaut de l’application.

À ce stade, l’Icinga Web 2 a été configuré avec succès. Vérifiez les détails de la configuration et assurez-vous que tout est correctement défini. Faites ensuite défiler vers le bas et cliquez sur « Suivant ».

La section suivante vous guide à travers la configuration du module de surveillance Icinga pour Icinga Web 2. Il s’agit du module principal qui fournit des vues d’état et de rapports avec des capacités de filtrage robustes.

Pour commencer, cliquez sur « Suivant ».

Sélectionnez « IDO » comme type de backend de surveillance et cliquez sur « Suivant ».

Ensuite, fournissez les détails de la base de données du module de surveillance icinga-ido-mysql comme spécifié à l’étape 4.

Faites défiler l’écran vers le bas et cliquez sur « Valider la configuration ». Si les détails de connexion sont corrects, vous devriez recevoir une notification indiquant que la configuration a été validée avec succès.

Pour passer à l’étape suivante, faites défiler vers le bas et cliquez sur « Suivant ». Dans la section « Transport de commande », sélectionnez « Fichier de commande local » comme type de transport. et cliquez sur « Suivant ».

Dans la section « Surveillance de la sécurité », acceptez les paramètres par défaut en appuyant sur « Suivant ».

Passez en revue tous les détails de configuration du module de surveillance et assurez-vous que tout est correct. Faites ensuite défiler vers le bas et cliquez sur « Terminer ».

Vous devriez recevoir une notification indiquant que Icinga Web 2 a été configuré avec succès. Pour vous connecter à l’interface WebUI, cliquez sur le bouton « Se connecter à Icinga Web 2 ».

La page de connexion apparaîtra comme indiqué. Fournissez les informations d’identification de l’administrateur Icinga et cliquez sur le bouton « Connexion ».

Cela vous amène au tableau de bord Icinga comme indiqué. Tous les problèmes existants seront affichés. Par exemple, vous pouvez voir que nous avons 6 packages avec des mises à niveau en attente.

Pour le confirmer, nous nous rendrons au terminal et énumérerons les forfaits avec des mises à niveau en attente.

$ sudo apt list --upgradable

D’après le résultat, nous pouvons confirmer que, en effet, 6 paquets ont des mises à niveau. Pour mettre à jour ces packages, il nous suffit d’exécuter :

$ sudo apt upgrade -y

Et cela conclut notre guide d’aujourd’hui. Comme vous l’avez noté, l’installation est assez longue et nécessite beaucoup d’attention aux détails. Néanmoins, tout devrait bien se passer si vous suivez attentivement les étapes de ce dernier.

Dans ce guide, nous avons montré comment installer l’outil de surveillance Icinga2 sur Debian 11/10.

Articles connexes: