Dans ce tutoriel, nous allons vous montrer comment installer et configurer Icinga 2 sur votre serveur Ubuntu 16.04. Pour ceux d'entre vous qui ne le savaient pas, Icinga 2 est un réseau open-source système de surveillance qui vérifie la disponibilité de vos ressources réseau, avertit les utilisateurs des pannes et génère des données de performance pour les rapports. Évolutif et extensible, Icinga2 peut surveiller des environnements vastes et complexes sur plusieurs sites.
Cet article suppose que vous avez au moins des connaissances de base sur Linux, que vous savez utiliser le shell et, plus important encore, que vous hébergez votre site sur votre propre VPS. L'installation est assez simple et suppose que vous s'exécutent dans le compte root, sinon vous devrez peut-être ajouter 'sudo
‘ aux commandes pour obtenir les privilèges root. Je vais vous montrer l'installation étape par étape de la surveillance du réseau Icinga sur un serveur Ubuntu 16.04 (Xenial Xerus).
Prérequis
- Un serveur exécutant l'un des systèmes d'exploitation suivants :Ubuntu 16.04 (Xenial Xerus).
- Il est recommandé d'utiliser une nouvelle installation du système d'exploitation pour éviter tout problème potentiel.
- Accès SSH au serveur (ou ouvrez simplement Terminal si vous êtes sur un ordinateur).
- Un
non-root sudo user
ou l'accès à l'root user
. Nous vous recommandons d'agir en tant qu'non-root sudo user
, cependant, car vous pouvez endommager votre système si vous ne faites pas attention lorsque vous agissez en tant que root.
Fonctionnalités d'Icinga 2
- Surveillance des services réseau (SMTP, POP3, HTTP, NNTP, ping, etc.)
- Surveillance des ressources de l'hôte (charge CPU, utilisation du disque, etc.)
- Surveillance des composants du serveur (commutateurs, routeurs, capteurs de température et d'humidité, etc.)
- Conception de plug-in simple permettant aux utilisateurs de développer facilement leurs propres contrôles de service,
- Vérifications de service parallèles.
- Possibilité de définir la hiérarchie des hôtes du réseau à l'aide d'hôtes "parents", permettant la détection et la distinction entre les hôtes en panne et ceux qui sont inaccessibles.
- Possibilité de définir des gestionnaires d'événements à exécuter pendant le service ou d'héberger des événements pour une résolution proactive des problèmes.
- Notification des personnes de contact lorsque des problèmes de service ou d'hébergement surviennent et sont résolus (par e-mail, téléavertisseur ou méthode définie par l'utilisateur).
- Escalade des alertes vers d'autres utilisateurs ou canaux de communication.
- Deux interfaces utilisateur facultatives (Icinga Classic UI et Icinga Web) pour la visualisation de l'état de l'hôte et du service, des cartes réseau, des rapports, des journaux, etc.
- Module de rapport Icinga basé sur les rapports Jasper open source pour les interfaces utilisateur Icinga Classic et Icinga Web
- Rapports sur l'utilisation des capacités.
- Graphique des performances via des modules complémentaires tels que PNP4Nagios, NagiosGrapher et InGraph.
Installer Icinga 2 sur Ubuntu 16.04
Étape 1. Tout d'abord, assurez-vous que tous vos packages système sont à jour en exécutant le suivant apt-get
commandes dans le terminal.
sudo apt-get update sudo apt-get upgrade
Étape 2. Installez le serveur LAMP (Linux, Apache, MariaDB, PHP).
Un serveur Ubuntu 16.04 LAMP est requis. Si vous n'avez pas installé LAMP, vous pouvez suivre notre guide ici. Installez également tous les modules PHP requis :
apt-get install php7.0-mysql php7.0-curl php7.0-json php7.0-cgi php7.0 libapache2-mod-php7.0 php7.0-mcrypt
Étape 3. Installation d'Icinga 2.
Tout d'abord, activez la fonctionnalité add-repository et ajoutez le référentiel pour Icinga avec les commandes ci-dessous :
apt install software-properties-common add-apt-repository ppa:formorer/icinga
Installez le package Icinga 2 :
apt update apt install icinga2
Une fois l'installation terminée. Assurez-vous que le service est opérationnel :
systemctl status icinga2.service systemctl enable icinga2.service systemctl start icinga2.service
Par défaut, Icinga2 active les fonctionnalités suivantes. Mais nous pouvons confirmer les paramètres activés en exécutant cette commande comme ci-dessous :
icinga2 feature list
Étape 3. Installation du plugin Icinga2.
Icinga2 collectera les informations de service en fonction des plugins de surveillance. Nous devons donc installer le plugin Nagios à l'aide de la commande ci-dessous :
apt install nagios-plugins
Ensuite, vous devez installer le module IDO qui est crucial pour l'interface Web d'Icinga 2. Il exportera toutes les informations de configuration et d'état dans sa base de données. Exécutez ce qui suit commande :
apt install icinga2-ido-mysql
Redémarrez ensuite Icinga 2 pour que les modifications prennent effet :
systemctl restart icinga2.service
Une fois que vous avez activé les modules IDO, Icinga 2 place le nouveau fichier de configuration dans /etc/icinga2/features-enabled/ido-mysql.conf
dans lequel nous devons mettre à jour manuellement les informations d'identification de la base de données :
cat /etc/icinga2/features-enabled/ido-mysql.conf
Mettez à jour le fichier ci-dessus comme ci-dessous :
[email protected]:~# nano /etc/icinga2/features-enabled/ido-mysql.conf /** * The db_ido_mysql library implements IDO functionality * for MySQL. */ library "db_ido_mysql" object IdoMysqlConnection "ido-mysql" { user = "icinga2", password = "icinga123", host = "localhost", database = "icinga2" }
Étape 4. Configuration de MariaDB pour Icinga 2.
Par défaut, MariaDB n'est pas renforcée. Vous pouvez sécuriser MariaDB à l'aide de mysql_secure_installation
scénario. Vous devez lire attentivement et ci-dessous chaque étape qui définira un mot de passe root, supprimera les utilisateurs anonymes, interdira la connexion root à distance et supprimera la base de données de test et l'accès à MariaDB sécurisé.
mysql_secure_installation
Configurez-le comme ceci :
- Set root password? [Y/n] y - Remove anonymous users? [Y/n] y - Disallow root login remotely? [Y/n] y - Remove test database and access to it? [Y/n] y - Reload privilege tables now? [Y/n] y
Ensuite, nous devrons nous connecter à la console MariaDB et créer une base de données pour Icinga 2. Exécutez la commande suivante :
mysql -u root -p
Cela vous demandera un mot de passe, alors entrez votre mot de passe root MariaDB et appuyez sur Entrée. Une fois que vous êtes connecté à votre serveur de base de données, vous devez créer une base de données pour Installation d'Icinga 2 :
MariaDB [(none)]> create database icinga2; MariaDB [(none)]> grant all privileges on icingaweb.* to icinga2@localhost identified by 'icinga123'; MariaDB [(none)]> flush privileges; MariaDB [(none)]> \q
Étape 5. Installation d'Icinga 2 Web.
Après avoir créé la base de données, nous pouvons installer le plugin d'interface Web et le configurer un par un :
apt-get install icingaweb2
Étape 6. Accéder à Icinga 2.
Icinga2 sera disponible sur le port HTTP 80 par défaut. Ouvrez votre navigateur préféré et accédez à http://yourdomain.com/icingaweb2/setup
ou http://server-ip/icingaweb2/setup
et suivez les étapes requises pour terminer l'installation. Si vous utilisez un pare-feu, veuillez ouvrir le port 80 pour permettre l'accès au panneau de contrôle.
Félicitations ! Vous avez installé avec succès Icinga 2. Merci d'avoir utilisé ce didacticiel pour installer la surveillance du réseau Icinga 2 sur les systèmes Ubuntu 16.04 LTS. Pour une aide supplémentaire ou des informations utiles, nous vous recommandons de consulter le Site Web d'Icinga 2.