Upload
others
View
4
Download
0
Embed Size (px)
Citation preview
Shinken
Olivier Blaivie
1
Supervision réseau - Shinken
Shinken
Olivier Blaivie
2
Sommaire
1. Introduction : ............................................................................................................. 3
2. Présentation et cahier des charges : .......................................................................... 3
3. Pré requis : ................................................................................................................ 3
4. Installation de Shinken : ............................................................................................. 4
5. Supervision du serveur local : ................................................................................... 5
6. Installation de SNMP : ................................................................................................ 7
7. Supervision depuis l’interface graphique : ................................................................ 8
8. Supervision d’un serveur sous Windows : .................................................................. 9
8.1. Serveur Windows ................................................................................................... 9
8.2. Serveur Debian ..................................................................................................... 11
9. Résolution des erreurs : ............................................................................................ 11
Shinken
Olivier Blaivie
3
1. Introduction :
A travers ce tutoriel je vais vous présenter la supervision d’un réseau informatique. Il existe
deux principaux outils pour faire de la Supervision sous Linux : Les logiciels Nagios et Shinken.
Pour un environnement Windows il y à le superviseur PRTG. Je vais détailler dans ce tutoriel
l’installation, la configuration et l’utilisation du superviseur Shinken.
Shinken est un logiciel qui fonctionne avec des plugins et des fichiers de configurations. Les
plugins sont les mêmes que ce utilisés par Nagios. A l’aide de cet outil il est possible de
superviser des serveurs, des machines clientes et des périphériques (imprimantes, switchs,
routeurs …). La supervision du parc se fait via une interface graphique qu’il faudra installer
après l’installation de Shinken.
2. Présentation et cahier des charges :
L’installation de Shinken s’effectuera sur une machine Debian 8. Dans ce tutoriel je vais
détailler l’installation de Shinken et les paquets nécessaires à son bon fonctionnement.
Je vais ensuite rédiger et adapter les fichiers de configurations pour la supervision de mon
serveur (Shinken) et d’un serveur sous Windows.
3. Pré requis :
Avant de se lancer dans l’installation de Shinken, il y a plusieurs étapes :
Tout d’abord je mets à jour mon système Debian avec les 2 commandes suivantes :
apt-get update
apt-get upgrade
Le système est à jour, je vais maintenant ajouter l’utilisateur « shinken » qui appartiendra au
groupe « shinken ».
adduser –system shinken && addgroup –system shinken && adduser shinken shinken
La plupart des fichiers de configuration de Shinken sont codés en Python. Pour le bon
fonctionnement de Shinken il faut donc installer les paquets suivants :
apt-get install python-pip python-pycurl python-cherrypy3
Shinken
Olivier Blaivie
4
apt-get install gawk
L’environnement est prés, les prés requis sont respectés et je vais pourvoir commencer
l’installation de Shinken.
4. Installation de Shinken :
Je vais détailler l’installation de Shinken. Précédemment j’ai installé le paquet « python-pip »,
celui-ci va nous permettre d’installer Shinken via la commande pip.
Je commence l’installation et j’initialise Shinken
pip install shinken
shinken –init
Shinken installé, je vais ajouter 3 modules pour gérer la supervision du réseau via l’interface
graphique (interface graphique, base de données et module d’authentification) :
shinken install webui
shinken install auto-cfg-password
shinken install sqlitedb
Les modules de Shinken installés sur notre machine sont visibles dans le fichier
«var/lib/shinken/inventory ». On peut également avoir un listing des modules installés via la
commande suivante :
shinken inventory
Je vais déclarer les 3 modules installés ci-dessus en éditant un fichier pour que Shinken
puisse les utiliser.
J’ouvre le fichier suivant et j’ajoute comme ci-dessous le nom du module webui :
nano /etc/shinken/brokers/broker-master.cfg
Puis j’ajoute l’authentification et la base de données :
nano /etc/shinken/modules/webui.cfg
Shinken
Olivier Blaivie
5
L’interface graphique est configurée, Shinken est donc près à fonctionner. Je vais lancer les
services de Shinken via la commande suivante :
service shinken start
Les services de Shinken démarrés, on peut se connecter dans le navigateur à l’interface
graphique via l’adresse « http://localhost:7767 ».
Les id de connexions par défaut sont :
ID : admin
Pass : admin
5. Supervision du serveur local :
Shinken installé, je vais superviser le serveur local grâce au protocole SNMP. Des fichiers de
configurations ont été crées par défaut dans les dossiers « hosts » et « services ». Je vais
renommer ces deux fichiers et en recréer avec la configuration souhaitée pour superviser
mon serveur local.
Je renomme les fichiers par défaut :
mv /etc/shinken/hosts/localhost.cfg /etc/shinken/hosts/localhosts.old.cfg
mv /etc/shinken/services/localhost.cfg /etc/shinken/services/localhosts.old.cfg
Je vais importer les commandes permettant de superviser le CPU et l’espace disque pour
commencer. Je télécharge sur le site de Nagios les plugins nécessaires et dézippe l’archive
apt-get install nagios-plugins
tar –xzf nagios-plugins-snmp-0.6.0.tgz
http://localhost:7767/
Shinken
Olivier Blaivie
6
Je copie 2 commandes pour mes deux objectifs de supervision (snmp, disk, et load) vers les
fichiers de configuration de Shinken.
cp /usr/lib/nagios/plugins/check_snmp /var/lib/shinken/libexec
cp /usr/lib/nagios/plugins/check_disk /var/lib/shinken/libexec
cp /usr/lib/nagios/plugins/check_load /var/lib/shinken/libexec
Les commandes importées dans le bon fichier, je vais préciser à Shinken comment utiliser ces
commandes. Pour cela je crée un fichier (que je nomme « check_snmp.cfg ») dans le dossier
des commandes.
nano /etc/shinken/commands/check_snmp.cfg
Je définis mes commandes avec les paramètres et arguments dans le fichier crée
Les commandes sont définies, je peux créer le fichier de configuration pour l’hôte. Pour une
meilleure gestion je crée un fichier par hôte. Je commence donc par mon serveur debian que
je vais créer dans mon dossier « hosts ».
nano /etc/shinken/hosts/localhost.cfg
Je définis mes paramètres dans ce fichier comme suit
Le dernier paramètre (business_impact) défini l’importance de l’hôte.
Maintenant il reste à définir les services utilisés pour l’hôte. Je crée un fichier dans le dossier
« services » qui portera le même nom que l’hôte pour plus de visibilité, et je déclare mes
deux services ciblés (CPU et Espace disque) :
nano /etc/shinken/services/localhost.cfg
Le fichier se configure de la façon suivante :
Shinken
Olivier Blaivie
7
Les paramètres principaux de ce fichier sont :
- le nom du service (use)
- le nom de la machine (host_name)
- le nom correspondant qui apparaitra sur l’interface web (service_description)
- la commande utilisés et ses arguments (check_command)
Les fichiers sont maintenant configurés.
6. Installation de SNMP :
Il reste maintenant à installer SNMP et SNMPD sur le serveur. Pour ce faire, je saisi dans le
terminal les commandes suivantes :
apt-get install snmp
apt-get install snmpd
Une fois installé, un fichier nommé « snmpd.conf » à été crée. Je vais l’éditer et le modifier
comme ceci :
nano /etc/snmp/snmpd.conf
Je modifie le fichier en intervertissant l’agentAddress comme ci-dessous :
Toujours dans ce fichier je modifie la « recommunity » en commentant une ligne et en en
ajoutant une autre, pour arriver à la configuration suivante :
Shinken
Olivier Blaivie
8
Pour terminer je redémarre les services snmpd et shinken pour que mes modifications soient
prises en compte
/etc/init.d/snmpd restart
/etc/init.d/shinken restart
Si tout fonctionne, le résultat doit être le suivant :
7. Supervision depuis l’interface graphique :
Les services démarrés, je me connecte à mon interface graphique.
Depuis l’onglet « All » je peux voir l’ensemble des hôtes et de services supervisés. Pour mon
cas, j’ai mon serveur local, son cpu et son espace disque comme ceci :
Shinken
Olivier Blaivie
9
On peut voir directement les problèmes via l’onglet « IT problems ».
8. Supervision d’un serveur sous Windows :
Je vais maintenant configurer des fichiers pour me permettre de superviser un serveur
Windows 2008 R2. Pour ce faire, il y a des actions à faire sur le serveur Debian et sur le
serveur qui va être supervisé. Je vais détailler les deux parties :
8.1. Serveur Windows
Je me connecte sur mon serveur Windows 2008 R2. Je vais créer un utilisateur qui sera dédié
à la communication entre le serveur Debian et mon serveur Windows. Je nomme l’utilisateur
« shinken ».
Pour que la supervision fonctionne entre les deux serveurs, je dois ajouter sur mon serveur
Windows deux fonctionnalités : snmp et wmi.
Les services ajoutés, il faut les paramétrer pour ajouter l’utilisateur crée plus haut.
Sur Windows il faut lancer la commande « services », se rendre sur le service SNMP,
propriétés. Dans l’onglet « Connexion », remplir les champs comme ci-dessous pour
l’utilisateur crée :
Shinken
Olivier Blaivie
10
Onglet « sécurité », ajouter comme ci-dessous et cocher l’option « Accepter les paquets
SNMP provenant de n’importe quel hôte
Il faut ensuite redemarre le service SNMP et la configuration sur le serveur Windows est
terminée.
Shinken
Olivier Blaivie
11
8.2. Serveur Debian
Sur mon serveur Debian, il faut commencer par télécharger le plugin « check_wmi_plus » et
le copier dans le dossier des plugins.
Télécharger également unzip, utilitaire pour dézipper :
apt-get install unzip
unzip check_wmi_plus.d-2015-10-23.zip
cp /home/perso/Téléchargements/check_wmi_plus.d/check_wmi_plus.ini
/var/lib/shinken/libexec
Il faut également installer les fichiers de configurations pour l’hôte qui est sur Windows. Pour
cela, on va installer le paquet suivant :
shinken install windows
On retourne dans le dossier « hosts » pour ajouter le serveur Windows
nano /etc/shinken/hosts/windows2008r2.cfg
Editer le fichier de configuration :
Il reste à configurer le fichier pour communiquer avec le serveur Windows
nano /etc/shinken/resource.d/active-directory.cfg
Editer le fichier de configuration :
Redémarrer shinken et retourner sur l’interface graphique pour vérifier l’hôte Windows
server est supervisé.
/etc/init.d/shinken restart
9. Résolution des erreurs :
Shinken
Olivier Blaivie
12
Dans le meilleur des cas, l’interface graphique renvoi les services et hôtes.
Dans l’autre cas, voici une erreur rencontré et sa résolution :
Erreur : « perl : warning : Setting locale failed
Sur le terminal, entrer les commandes suivantes :
locale-gen en_US.UTF-8
locale-gen fr_FR.UTF-8
dpkg-reconfigure locales
Une fenêtre s’ouvre, il faut cocher « en_US.UTF-8 UTF-8 » comme ci-dessous
Choisir l’option suivante
Redémarrer shinken
/etc/init.d/shinken restart
Retourner ensuite sur l’interface graphique et le serveur Windows va apparaitre dans la liste
des services supervisés.
Shinken
Olivier Blaivie
13