Cette page décrit comment le pack Linux permet de superviser des serveurs Linux au travers d'une connexion SSH. Ce pack supervise les ressources principales d'un serveur Linux comme:
Ce pack récupère les informations nécessaires à la supervision en se connectant via SSH à l'hôte distant. Pendant l'installation de Shinken, la procédure d'installation crée automatiquement un utilisateur "shinken" sur tous les serveur Shinken (et donc les Pollers également).
Le pack Linux utilise par défaut cet utilisateur pour exécuter les commandes. L'authentification sur l'hôte distant s'effectue à l'aide d'une clé SSH. L'utilisateur distant ne requiert pas de droits particuliers sur le système.
Toutes les informations sur la création et la gestion des clés SSH entre shinken et les autres serveurs est expliqué sur la page Création automatique et gestion de la clé SSH de l'utilisateur shinken.
Créer un utilisateur local "shinken" avec un dossier "home" et un mot de passe
adduser -m -r shinken passwd shinken |
[root@shinken-poller ~]# su - shinken [shinken@shinken-poller ~]# ssh-copy-id remote_host The authenticity of host '192.168.1.19 (192.168.1.19)' can't be established. RSA key fingerprint is 00:ff:ee:dd:cc:bb:aa:d6:d3:79:1d:f6:93:47:80:27. Are you sure you want to continue connecting (yes/no)? yes shinken@remote_host's password: XXXXXXXXXXX Now try logging into the machine, with "ssh '192.168.1.19'", and check in: .ssh/authorized_keys to make sure we haven't added extra keys that you weren't expecting. ssh shinken@remote_host -i .ssh/id_rsa |
Cette copie de clé permet d'autoriser le Poller à se connecter sur la machine à superviser. Sur une architecture Shinken qui contient plusieurs Pollers, il faudra alors effectuer cette opération sur chaque Poller pour permettre à chaque Poller de se connecter en SSH sur le serveur à superviser.
Il est possible sur un Poller de définir un comportement spécifique pour les connexions SSH du pack Linux qui ne seront valide que sur ce Poller.
Ceci peut être utile si par exemple le Poller a besoin de passer par une machine proxy pour se connecter aux serveurs distants.
Cette définition spécifique se fait via le fichier /var/lib/shinken/.ssh/config (configuration standard du client openssh sur linux ) qui sera lue par les commandes du pack Linux avant d'effectuer leurs connexions.
Plusieurs paramètres sont pris en compte:
Comme mis dans la documentation de openssh, ces paramètres peuvent être mis dans un bloc au nom de la machine, ou un bloc "*" qui sera valable pour tous les hôtes.
Par exemple, pour faire passer toutes ses connexions SSH par un serveur bastion, on peux définir le fichier /var/lib/shinken/.ssh/config ( avec les droits 600 pour l'utilisateur shinken ):
Host * ProxyCommand ssh -F /dev/null -q -W %h:%p IP-BASTION |
|
En cas de problème de connexion quand un fichier config existe sur le Poller et a fourni une surcharge, la ou les surcharges seront affichés dans le message d'erreur afin d'aider à comprendre d'où viennent les paramètres de connexions:
|
La pack Linux peut être utilisé en appliquant le modèle d'hôte "linux" sur un hôte. Cette opération peut être effectuée de 2 manières différentes:
Dans l'interface de Configuration, créer et Editer un Hôte et ajouter le modèle d'hôte "linux" dans la liste des modèles d'hôtes utilisés.
Dans un fichier de configuration .cfg de votre choix, créer un hôte et définir la propriété "use" à "linux".
Ce fichier cfg doit ensuite être importé dans Shinken Entreprise via une source ( plus d'informations sont disponibles dans la page de documentation sur la Syntaxe des fichiers d'imports ).
| Nom du check | Description | Valeurs possibles | Seuil Warning par défaut | Seuil Critique par défaut | ||
|---|---|---|---|---|---|---|
| 1 | CPU Stats | Récupère les informations des CPU via la commande "mpstat" | 0-100 | > 80 | > 90 | |
| 2 | Disks | Récupère les informations sur l'utilisation des disques via la commande "df" | 0-100 | > 90 | > 95 | |
| 3 | Disks stats | Récupère les statistiques de lecture/écriture des disques depuis /proc | 0-n | N/A | N/A | |
| 4 | Kernel stats | Récupère des statistiques sur le noyau Linux via /proc/vmstat | 0-n | N/A | N/A | |
| 5 | Load Average | Récupère la charge ( Load Average ) du système via /proc/loadavg | 0-n,0-n,0-n | > "1.5,1.5,1.5" | > "3,3,3" | |
| 6 | Memory | Récupère les informations sur la consommation de mémoire via la commande "free" | 0-100 | > 90 | > 95 | |
| 7 | NET Stats | Récupère les statistiques des interfaces réseau via /proc/net/dev | 0-n | N/A | N/A | |
| 8 | NFS Stats | Récupère les statistiques de lecture/écriture des points de montage NFS via /proc/net/rpc/nfsd | 0-n | N/A | N/A | |
| 9 | NTPSync | Récupère le décalage de temps avec le serveur NTP | 0-n | > 40 | > 60 | |
| 10 | Read-only Filesystems | Vérifie si un système de fichiers est en lecture seule | 0-1 | N/A | = 1 | |
| 11 | Uptime | Récupère le temps d'uptime du serveur via la commande "uptime" | 0-n | N/A | < 3600 | |
| 12 | SSH connexions | Vérifie qu'une connexion SSH vers le serveur est bien possible | 0-1 | N/A | = 0 | |
| 13 | TCP states | Récupère les statistiques d'usage TCP | 0-n | N/A | N/A |
Selon le démon utilisé pour NTP, le check peut obtenir des détails supplémentaires sur la synchronisation de l'horloge. Si le démon NTP utilisé est chrony, l'utilisation du modèle d'hôte "chrony" en plus du modèle "linux" permet au check d'obtenir plus de détails sur l'état de la synchronisation NTP. |
Le pack Linux définit des seuils par défaut sur les checks qu'il utilise que vous pouvez modifier.
Les modèles d'hôte livrés dans Shinken contiennent souvent des variables permettant de changer les seuils et options des checks.
Pour changer ces seuils sur un seul hôte en particulier, la manière la plus simple est de changer des variables via les données présentes sur l'hôte directement:
Pour changer le seuils sur tous les hôtes qui utilisent le modèle d'hôte "linux", on pourrait être tenté de modifier directement le modèle d'hôte "linux" et changer les données personnalisées de cet hôte.
Mais, dans la prochaine mise à jour de Shinken Entreprise, ces modèles d'hôtes/checks peuvent être modifiés, ce qui occasionne un changement de comportement et probablement causer des problèmes dans votre configuration Shinken.
L'alternative conseillée est de cloner les éléments utilisés dans le pack Linux et de les renommer. On peut ensuite modifier sans aucun risque liés aux mises à jour de Shinken Entreprise.
Ce pack linux cloné peut ensuite être modifié et personnalisé selon les besoins.
Par exemple, le changement des seuils s'effectue de la même manière en changeant les données comme décrit dans la section précédente mais dans le modèle d'hôte linux au lieu de faire cette modification directement dans les hôtes.