Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


Abstract

Introduction

This document describes how you can monitor a Linux server Over a SSH connexion. This pack monitors main ressources on a server such as:

  • Kernel ressources
  • Memory ressources
  • Network ressources
  • Disk Ressources
  • SSH monitor
  • NTP status

Introduction

This pack is designed to retreive data over SSH. The Shinken poller service needs to connect over SSH to the remote host. During the Shinken installation, the installer script creates a shinken user on the server hosting the Poller.

The Linux pack uses this user to execute remote commands. The authentication to the remote host is passwordless (managed by an authentication key). The remote user does not need to have specific rights on the system.

SSH Connexion configuration

Client Side

Ce document décrit comme le pack Linux permet de superviser un serveur Linux au travers d'une connexion SSH. Ce pack supervise les ressources principales d'un serveur Linux comme:

  • Les ressources du noyau
  • La mémoire
  • Le réseau
  • Les disques
  • Le démon SSH
  • Le démon NTP


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 comandes. 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.

Configuration de la connexion SSH

Côté client (serveur supervisé)

  • Créer un utilisateur local "shinken" avec un dossier "home" et un mot de passeCreate a local Shinken system user with homedir and password

    Code Block
    adduser -m -r shinken 
    passwd shinken

Poller server Side


Côté Shinken (serveur Poller)

  • Se connecter sur le serveur en tant que l'utilisateur "shinken" et copier la clé SSH vers le serveur à superviserConnect to server as the Shinken user and deploy key

Code Block
languagebash
[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

How to use the linux pack

The linux pack can be used by applying the linux host template to a host. This can be done by two different ways:

Using the Configuration UI

In the Configuration UI, simply create or edit a Host, and add the linux template in the Host Templates field by using the selector.

Using Cfg files

In a Cfg file of your choice, create a host and set the use property to linux.

The Cfg file must then be imported into Shinken Enterprise using a source (more information on the associated documentation page: Shinken cfg file Import).

Common issues

  • NTPd is in Unknown State
    • Install and configure ntp service
  • Reboot is in Critical State
    • Default critical value for this check is 3600
  • CPUstat is in Unknown State
    • install sysstat  package

Check summary


Comment utiliser le pack Linux

La pack Linux peut être utilisé en applquant le modèle d'hôte "linux" sur un hôte. Cette opération peut être effectuée de 2 manières différentes:

Via l'interface de Configuration

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.

Via un fichier de configuration

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).

Problèmes usuels et connus

  • Le check NTP est en statu Inconnu
    • Le démon ntp n'est problablement pas installé. Installer et configurer le démon ntp.
  • Le check "Reboot" est en critique
    • La valeur par défaut de ce check est de 3600 secondes (1h). En dessous de ce seuil, un redémarrage a pour effet de mettre le check en état critique. Modifier le seuil selon les besoin pour éviter les notifications ou fausses alertes.
  • Le check "CPU Stats" est en statut Inconnu
    • Vérifier que le paquet "sysstat" est bien installé sur le système

Résumé des checks


 Nom du checkDescriptionValeurs possiblesSeuil Warning par défautSeuil Critique par défaut Check NameDescriptionvalue rangedefault Warningdefault Critical

 

1CPU StatsGet CPU information through Récupère les infirmations des CPU via la commande "mpstat" command0-100> 80> 90 
2DisksGet DISKS information through Récupère les informations sur l'utilisation des disques via la commande "df" command0-100> 90> 95 
3Disks statsGet DISKS STATS information from Récupère les statistiques de lecture/écriture des disques depuis /proc0-nN/AN/A 
4Kernel statsGet kernel informations from Récupère des statistiques sur le noyau Linux via /proc/vmstat0-nN/AN/A 
5Load AverageGet system load information from Récupère la charge (Load Average) du système via /proc/loadavg0-n,0-n,0-n> "1.5,1.5,1.5"> "3,3,3" 
6MemoryGet Memory information from Récupère les informations sur la consommation de mémoire via la commande "free" command0-100> 90> 95 
7NET StatsGet network statistics from Récupère les statistiques des interfaces réseau via /proc/net/dev 0-nN/A

N/A

 
8NFS StatsGet NFSd statistics from Récupère les statistiques de lecture/écriture des points de montage NFS via /proc/net/rpc/nfsd0-nN/A

N/A

 
9NTPSyncGet timedelta with ntp serverRécupère le décalage de temps avec le serveur NTP0-n> 40> 60 
10Read-only FilesystemsTest if a FS is in Read-only state or notVérifie si un système de fichiers est en lecture seule0-1N/A= 1 
11UptimeGet server uptime from Récupère le temps d'uptime du serveur via la commande "uptime" command0-nN/A< 3600 
12SSH connexionsCheck if a SSH connexion is Vérifie qu'une connexion SSH vers le serveur est bien possible0-1N/A= 0 
13TCP statesGet TCP counts by StatesRécupère les statistiques d'usage TCP0-nN/AN/A 

 

 

Personnaliser les seuils de Warning et Critique

Le pack Linux définit des seuils par défaut sur les checks qu'il utilise.

Customize Warning or Critical thresholds


The linux pack defines default Warning and Critical thresholds for checks.

 

Customize a single host

Checks from linux packs often provide data that can be changed to customize thresholds.

To change thresholds on one particular host, the most simple way is to change these datas on the host directly.

  • This can be done via the Configuration UI, in the Data tab.
    For example, changing the CPU_CRIT data to 60 will set the Warning threshold of the CPU Stats check to 60
  • Alternatively, this can also be done via Cfg files. 
    To change the CPU_CRIT data, edit the host and set _HOSTCPU_CRIT.

 

Customize all hosts using the linux pack

To change all hosts using the linux template, the best idea would seem to be to edit the linux host template directly and set datas.

However, on the next Shinken Enterprise update, these templates can be modified, resulting in a behaviour change and possibly break your configuration.

The best practice is to clone the elements involved in the linux pack and rename them. Then, they can be modified without any risks related to the Shinken Enterprise update process.

The cloned linux pack can then be modified and personalized according to your needs.

 

Changer les seuils pour un seul hôte

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:

  • Dans l'interface de Configuration, éditer l'hôte et aller dans l'onglet Données
    Par exemple, changer la donnée CPU_CRIT à 60 aura pour effet de changer le seuil Critique du check "CPU Stats" à 60
  • Via un fichier de configuration.
    Pour changer le seuil Critique du check "CPU Stats", éditer l'hôte et changer la donnée _CPU_CRIT

 

Changer les seuils pour tous les hôtes qui utilisent le modèle d'hôte "linux"

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ôtesFor example, in order to change default thresholds, edit your cloned linux host template and edit datas, as described in the previous section.