Le système d'exploitation GNU-Linux/La supervision



NagiosModifier

Nagios s'installe assez facilement pour surveiller, archiver et représenter les périodes où les machines sont en ligne, leurs services sont lancés et leurs ressources disponibles[1] :

Il peut ainsi prévenir automatiquement par email, chaque contact associé à une machine quand l'état d'un service change (ex : processeur saturé, disque dur plein à 90 %, page web inaccessible...).

Installation du serveurModifier

Le paquet Ubuntu s'arrête à la version 3 :

apt-get install nagios3

Sinon, pour être sûr d'obtenir la dernière version, il est possible de récupérer le tarball en renseignant son nom sur le site officiel[2], puis de l'installer à partir de l'étape 2 en root :

wget https://assets.nagios.com/downloads/nagioscore/releases/nagios-4.0.8.tar.gz

useradd nagios
groupadd nagcmd
usermod -a -G nagcmd nagios

tar xzf nagios-4.0.8.tar.gz
cd nagios-4.0.8
./configure --with-command-group=nagcmd
make all
make install
make install-init
make install-config
make install-commandmode

/etc/init.d/nagios start

Enfin, pour ajouter un service à monitorer, il suffit de modifier les fichiers .cfg.


Interface graphiqueModifier

Le portail web (ex : http://127.0.0.1/nagios/) a pour prérequis Apache. Il s'installe comme suit :

make install-webconf
htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
/etc/init.d/apache2 reload

Par défaut il est protégé par le mot de passe du compte nagiosadmin.

Par ailleurs, la page d'accueil par défaut ne montrant pas les services monitorés, il peut être rentable d'utiliser http://127.0.0.1/nagios/?corewindow=/nagios/cgi-bin/status.cgi?host=all à la place.

Le menu Map permet un affichage sous forme de carte :

Fichiers de configuration .cfgModifier

Pour configurer ce que Nagios doit surveiller, on doit éditer les fichiers de configuration .cfg importés depuis /usr/local/nagios/etc/nagios.cfg (généralement tout ce qui est dans /usr/local/nagios/etc/objects/).

Que la surveillance soit opérationnelle, ces fichiers doivent comporter les quatre objets suivants[3] (par défaut le classement est d'un type d'objet par fichier mais un .cfg peut tous les contenir) :

define command {
        command_name
        command_line
}

define service {
        use                     
        host_name               
        service_description     
        check_command           
}

define host {
        use                     
        host_name               
        alias                   
        address                 
        check_command           
}

define contact {
        name 
}

L'objet commande pointe sur le fichier exécutable du système d'exploitation qui sera exécuté par Nagios (en Shell, Perl, Java, Python...). Ex :

define command {
  command_name    check_sftp
  command_line    java -jar $USER1$/check_sftp.jar -port=22 -t=10 -temp=/tmp/ -host=$ARG1$ -user=$ARG2$ -pwd=$ARG3$ -warning=$ARG4$ -critical=$ARG5$
}

Plusieurs objets services peuvent ensuite appeler une même commande avec différents arguments (ex : SFTP du serveur 1, du serveur 2...).

Nagios 3Modifier
cd /etc/nagios3/conf.d
vim localhost_nagios2.cfg	# (ajouter la machine)
vim hostgroups_nagios2.cfg	# (définir l'emplacement de la machine sur le site Nagios)
vim services_nagios2.cfg	# (préciser ce qu'il faut surveiller sur la machine, ex : HTTP)
/etc/init.d/nagios3 restart
Nagios 4Modifier
cd /usr/local/nagios/etc/objects
vim localhost.cfg
/etc/init.d/nagios restart
  Avant de mettre à jour Nagios ou Linux, bien sauvegarder la configuration de /usr/local/nagios/etc/ (ou /etc/nagios3/) selon la version.


PluginsModifier

Les plugins permettent de monitorer plus de services, ils sont téléchargeables depuis https://www.nagios.org/download/plugins :

tar xzf nagios-plugins-2.0.3.tar.gz
cd nagios-plugins-2.0.3
./configure --with-nagios-user=nagios --with-nagios-group=nagios
make
make install

AddonsModifier

Les addons ajoutent des fonctionnalités supplémentaires, comme des représentations graphiques : https://www.nagios.org/download/addons/.

Surveillance SFTPModifier
Test de formulaire HTMLModifier

Installation d'un clientModifier

Il suffit d'installer http://www.nsclient.org/ en administrateur sur la machine à surveiller. Parfois le pare-feu doit être ouvert sur le port 5666 ou 12489.

Sur Ubuntu : apt-get install xinetd.

RéférencesModifier

  1. https://library.nagios.com/library/products/nagioscore/manuals/
  2. https://www.nagios.org/download/core/
  3. http://doc.ubuntu-fr.org/nagios

Voir aussiModifier