Icinga 2 est un outil de surveillance gratuit et open source qui vous aide à surveiller les ressources du réseau, à recevoir une alerte en cas de panne et à générer les données de performance.
Icinga 2 est très évolutif et vous pouvez surveiller des environnements complexes, petits ou plus grands, sur plusieurs sites.
Icinga 2 prend en charge toutes les principales distributions telles que Debian , Ubuntu , CentOS/RHEL , Fédora , openSUSE, SLES, Gentoo, FreeBSD et ArchLinux.
Cet article couvre brièvement l'installation et la configuration d'Icinga 2 sur CentOS 7 / RHEL 7 .
Basculez vers l'utilisateur root.
$ sudo su -
Les packages Icinga dépendent d'autres packages (ex. plugins Nagios) qui sont distribués dans le référentiel EPEL. Alors, configurez le référentiel EPEL sur CentOS 7 / RHEL 7 .
rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
En plus de cela, activez les référentiels facultatifs et supplémentaires sur RHEL 7.
subscription-manager repos --enable rhel-7-server-optional-rpms subscription-manager repos --enable rhel-7-server-extras-rpms
Ajouter le référentiel Icinga 2
Icinga fournit son dépôt officiel pour leurs forfaits. Alors, installez le dépôt rpm
rpm --import https://packages.icinga.com/icinga.key yum install https://packages.icinga.com/epel/icinga-rpm-release-7-latest.noarch.rpm
Installer Icinga 2
yum -y install icinga2
Pour démarrer le service Icinga2, exécutez :
systemctl start icinga2
Pour configurer le service Icinga 2 pour qu'il démarre automatiquement au démarrage du système, exécutez :
systemctl enable icinga2
SELinux
Si SELinux est activé sur le système, installez le package ci-dessous pour avoir une politique ciblée pour Icinga 2.
yum install -y icinga2-selinux
Installer les plugins Nagios
Sans les plugins, Icinga 2 ne sait pas comment surveiller les services externes. Installez donc les plugins Nagios sur Icinga 2.
yum -y install nagios-plugins-all
Configuration de la base de données IDO MySQL
Le module DB IDO pour Icinga 2 se charge d'exporter toutes les informations de configuration et d'état vers la base de données; nous avons besoin d'un serveur de base de données pour cette exigence.
Actuellement, MySQL et PostgreSQL sont pris en charge. Ici, nous utiliserons le serveur MySQL comme serveur de base de données.
Si vous avez déjà un serveur MySQL sur votre système, vous pouvez ignorer l'étape ci-dessous.
yum -y install mariadb-server mariadb
Démarrez et activez le service MariaDB.
systemctl start mariadb systemctl enable mariadbEffectuez la configuration initiale de MariaDB à l'aide de mysql_secure_installation commande.
Installer les modules IDO pour MySQL
Maintenant, installez les modules IDO pour MySQL en utilisant la commande suivante. Vous pouvez trouver le package icinga2-ido-mysql dans le référentiel Icinga 2.
yum -y install icinga2-ido-mysql
Créer une base de données pour Icinga 2
Connectez-vous à MariaDB à l'aide de la commande suivante.
mysql -u root -p
Créez une base de données pour les modules IDO, qui sera utilisée lors de la configuration de l'interface Web Icinga2.
CREATE DATABASE icinga2; grant all privileges on icinga2.* to icinga2@localhost identified by 'icinga123'; FLUSH PRIVILEGES; quit
Après avoir créé la base de données, vous devez importer le schéma IDO Icinga 2 à l'aide de la commande suivante.
mysql -u root -p icinga2 < /usr/share/icinga2-ido-mysql/schema/mysql.sql
Activer le module IDO MySQL
Répertorions les fonctionnalités disponibles et activées dans Icinga 2.
icinga2 feature list
Sortie :
Disabled features: api command compatlog debuglog elasticsearch gelf graphite influxdb livestatus opentsdb perfdata statusdata syslog Enabled features: checker ido-mysql mainlog notification
Vous pouvez voir que ido-mysql est déjà activé.
Si ido-mysql n'est pas activé sur votre système, puis activez-le à l'aide de la commande ci-dessous.
icinga2 feature enable ido-mysql
Activez également la commande fonctionnalité qui aide l'interface Web Icinga et d'autres modules complémentaires Icinga à envoyer des commandes à Icinga 2 via le canal de commande externe.
icinga2 feature enable command
Configurer le module IDO DB MySQL
Une fois que vous avez activé les modules IDO dans Icinga 2, Icinga 2 place le nouveau fichier de configuration dans /etc/icinga2/features-enabled/ido-mysql.conf dans lequel vous devez mettre à jour manuellement les informations d'identification de la base de données.
vi /etc/icinga2/features-enabled/ido-mysql.conf
Mettez à jour le fichier ci-dessus illustré comme ci-dessous.
user = "icinga2", password = "icinga123", host = "localhost", database = "icinga2"
Redémarrez l'instance Icinga 2 pour que ces fonctionnalités activées prennent effet.
systemctl restart icinga2
Vérifiez l'état du service Icinga 2.
systemctl status icinga2
Sortie :
● icinga2.service - Icinga host/service/network monitoring system Loaded: loaded (/usr/lib/systemd/system/icinga2.service; enabled; vendor preset: disabled) Active: active (running) since Tue 2018-09-04 05:00:38 UTC; 23h ago Main PID: 11656 (icinga2) CGroup: /system.slice/icinga2.service ├─ 4520 /usr/lib64/nagios/plugins/check_ping -H 10.142.0.4 -c 5000,100% -w 3000,80% ├─ 4521 /usr/bin/ping -n -U -W 30 -c 5 10.142.0.4 ├─11656 /usr/lib64/icinga2/sbin/icinga2 --no-stack-rlimit daemon -e └─11690 /usr/lib64/icinga2/sbin/icinga2 --no-stack-rlimit daemon -e Sep 05 04:43:10 rhicinga2server icinga2[11656]: mail not found in $PATH. Consider installing it. Sep 05 04:43:10 rhicinga2server icinga2[11656]: [2018-09-05 04:35:29 +0000] information/WorkQueue: #10 (Json...in); Sep 05 04:43:10 rhicinga2server icinga2[11656]: [2018-09-05 04:35:30 +0000] information/WorkQueue: #7 (IdoMy...in); Sep 05 04:43:10 rhicinga2server icinga2[11656]: [2018-09-05 04:35:38 +0000] information/ConfigObject: Dumpin...ate' Sep 05 04:43:10 rhicinga2server icinga2[11656]: [2018-09-05 04:40:29 +0000] information/WorkQueue: #6 (ApiLi...in); Sep 05 04:43:10 rhicinga2server icinga2[11656]: [2018-09-05 04:40:29 +0000] information/WorkQueue: #5 (ApiLi...in); Sep 05 04:43:10 rhicinga2server icinga2[11656]: [2018-09-05 04:40:38 +0000] information/ConfigObject: Dumpin...ate'
Pare-feu
Configurez le pare-feu pour permettre aux clients Icinga 2 de communiquer avec le serveur Icinga 2.
firewall-cmd --permanent --add-port=5665/tcp firewall-cmd --reload
Nous allons configurer l'interface web d'Icinga 2 dans notre prochain tutoriel.
LIRE :Comment configurer Icinga Web 2 sur CentOS 7 / RHEL 7
C'est tout.