Introduction
La plupart des services que vous allez superviser sur votre réseau peuvent être contrôlés en utilisant directement un plugin depuis la machine Nagios. Ce sont par exemple la disponibilité des serveurs web, email et FTP. Ces services peuvent être contrôlés par un plugin depuis l'hôte Nagios parce que ce sont des ressources accessibles directement. Cependant, il y a un certain nombre de services que vous aimeriez superviser mais qui ne sont pas accessibles directement comme les autres services. Ces services/ressources sont par exemple le taux d'utilisation d'un disque, la charge d'un processeur,etc... d'une machine distante. Ces types de ressources ne peuvent pas être contrôlées sans utiliser un agent intermédiaire. Les contrôles de service qui nécessitent un agent intermédiaire (pour réaliser le contrôle) sont appelés contrôles indirects.
Les contrôles indirects sont utiles pour :
Il existe plusieurs méthodes pour réaliser des contrôles actifs indirects (on ne discutera pas des contrôles passifs), mais j'expliquerai uniquement comment ils peuvent être effectués en utilisant l'addon nrpe.
Contrôles Indirects des Services
Le diagramme ci-dessous montre comment les contrôles indirects des services fonctionnent. Cliquez sur l'image pour l'agrandir...
Contrôles Multiples et Indirects des Services
Si vous supervisez des serveurs se trouvant derrière un pare-feu (et que la machine sur laquelle Nagios est installée se trouve en dehors du pare-feu) le contrôle des services sur ces machines peut s'avérer un peu compliqué. Il y a des chances pour que vous bloquiez la plupart du trafic entrant qui serait normalement requis pour la supervision. Une solution pour réaliser les contrôles actifs (ceci est aussi valable pour les contrôles passifs) sur les machines derrière le pare-feu serait de modifier les filtres du pare-feu pour autoriser l'hôte Nagios à appeler le démon nrpe d'un hôte protégé par le pare-feu. La machine protégée par le pare-feu pourrait aussi être utilisée comme intermédiaire dans la réalisation de contrôles sur d'autres serveurs protégés par le pare-feu.
Le diagramme ci-dessous montre comment les contrôles de services multiples et indirects fonctionnent. Remarquez que le démon nrpe tourne sur les machines #1 et #2. La copie fonctionnant sur la machine #2 est utilisée pour permettre à l'agent nrpe sur l'hôte #1 de contrôler un service "privé" sur la machine #2. Les services "privés" sont des services tel que la charge CPU, l'utilisation de l'espace disque, etc. qui ne sont pas directement exposés comme SMTP, FTP, et les services web. Cliquez sur l'image pour l'agrandir...
Contrôles Indirects d'hôtes
Les contrôles indirects d'hôtes fonctionnent de la même façon que les contrôles indirects de services. Typiquement, le plugin utilisé dans la commande de contrôle d'hôte demande à un agent intermédiaire (c.a.d. un démon fonctionnant sur une machine distante) de réaliser le contrôle d'hôte pour lui. Les contrôles indirects d'hôte sont utiles lorsque l'hôte distant à superviser se trouve derrière un pare-feu et que vous souhaitez restreindre le trafic de supervision à une machine donnée. Cette machine (l'hôte #1 sur le diagramme ci-dessous) réalisera les contrôles d'hôtes et retournera les résultats au plugin check_nrpe de plus haut niveau (sur le serveur central). Notez qu'avec cette configuration des problèmes peuvent survenir. Si l'hôte distant #1 s'effondre, le plugin check_nrpe ne sera pas capable de contacter le démon nrpe et Nagios croira que les hôtes distants #2, #3, et #4 sont "down", même si ce n'est pas le cas. Si l'hôte #1 est votre firewall, alors le problème n'en sera pas vraiment un parce que Nagios le détectera "down" et considéra les hôtes #2, #3 et #4 comme inaccessibles.
Le diagramme ci-dessous montre comment un contrôle indirect d'hôte peut être effectué en utilisant le démon nrpe et le plugin check_nrpe. Cliquez sur l'image pour l'agrandir.