Chapitre 13. Supervision des imprimantes réseaux

Ce document décrit la façon de superviser l'état d'imprimantes réseaux. Plus particulièrement, les imprimantes HP™ qui ont une carte interne/externe JetDirect®, ou toute autres imprimantes (comme la TroyPocketPro 100S® ou la NetgearPS101®) supportant le protocole JetDirect.

Introduction

Printer

Le plugin check_hpjd (qui fait partie de la distribution des plugins standards Nagios) vous permettent de superviser l'état de toutes imprimantes compatibles JetDirect avec SNMP activé. Le plugin est capable de détecter les états suivants de l'imprimante:

  • Bourrage papier

  • Plus de papier

  • Imprimante hors ligne

  • Intervention requise

  • Toner presque vide

  • Mémoire insuffisante

  • Porte ouverte

  • Le plateau de sortie papier est plein

  • Et bien d'autres…

Ces instructions impliquent que vous ayez installé Nagios comme précisé dans le guide rapide. Les exemples de configuration ci-dessous font référence aux objets de configuration définis dans les fichiers d'exemples (commands.cfg, templates.cfg, etc.) qui ont été installés si vous avez suivi le guide rapide.

Vue globale

Monitoring Printers

Superviser l'état d'une imprimante réseau est simple. Les imprimantes compatibles JetDirect ont en général SNMP activé, ce qui permet à Nagios de les superviser en utilisant le plugin check_hpjd.

Le plugin check_hpjd sera compilé et installé seulement si vous avez les paquets net-snmp et net-snmp-utils installés sur votre système. Assurez-vous que le plugin soit présent dans /usr/local/nagios/libexec avant de continuer. Si ce n'est pas le cas, installez net-snmp, net-snmp-utils et recompilez/réinstallez les plugins Nagios.

Étapes

Il y a plusieurs étapes à suivre pour pouvoir superviser une nouvelle imprimante réseau. Les voici:

  1. Procédez aux pré-requis nécessaires la première fois

  2. Créez de nouvelles définitions d'hôte et service pour la supervision de l'imprimante

  3. Redémarrez le démon Nagios

Ce qui est déjà fait pour vous

Pour vous rendre la vie un peu plus facile, quelques tâches de configuration ont déjà été faites pour vous :

  • Une définition de commande check_hpjd a déjà été créé dans le fichier commands.cfg. Cela permet d'utiliser le plugin check_hpjd pour superviser des imprimantes réseaux.

  • Un gabarit d'hôte de type imprimante (nommé generic-printer) a déjà été créé dans le fichier templates.cfg. Cela vous permet de rajouter des définitions d'hôtes de type imprimante de façon simple.

Les fichiers de configuration mentionnés ci-dessus peuvent être trouvés dans le répertoire /usr/local/nagios/etc/objects/. Vous pouvez modifier les définitions de ceux-ci ou en créer de nouvelles pour répondre le mieux à votre besoin. Quoi qu'il en soit, je vous recommande d'attendre d'avoir une meilleure connaissance de la configuration de Nagios avant de le faire. Pour le moment, contentez-vous de suivre les directions précisées ci-dessous et vous pourrez superviser vos imprimantes réseaux en un rien de temps.

Pré-requis

La première fois que vous configurez Nagios pour superviser une imprimante réseau, vous avez un peu plus de travail à faire. Souvenez-vous, vous n'avez à le faire que pour la *première* imprimante à superviser.

Éditez le fichier de configuration principal de Nagios.

#vi /usr/local/nagios/etc/nagios.cfg
        

Supprimez le caractère (#) du début de la ligne suivante du fichier de configuration principal :

#cfg_file=/usr/local/nagios/etc/objects/printer.cfg
        

Enregistrez le fichier et quittez.

Qu'avez-vous fait? Vous avez dit à Nagios de regarder dans le fichier /usr/local/nagios/etc/objects/printer.cfg pour y trouver des définitions d'objets additionnels. C'est là que vous ajouterez des définitions pour l'imprimante. Ce fichier de configuration contient déjà un exemple de définitions d'hôte, de groupe d'hôtes et de service. Pour la *première* imprimante que vous supervisez, vous pouvez simplement modifier les définitions d'exemples d'hôte et de service dans ce fichier plutôt que d'en créer de nouvelles.

Configuration de Nagios

Vous allez devoir créer quelques définitions d'objets pour pouvoir superviser une nouvelle imprimante.

Éditez le fichier printer.cfg.

# vi /usr/local/nagios/etc/objects/printer.cfg
        

Ajouter une nouvelle définition d'hôte pour l'imprimante réseau que vous souhaitez superviser. Si c'est la *première* que vous supervisez, vous pouvez simplement modifier l'exemple de définition d'hôte dans printer.cfg. Remplacez les champs host_name, alias, et address par les valeurs appropriées pour votre imprimante.

define host {
    use         generic-printer   ; Inherit default values from a template
    host_name   hplj2605dn     ; The name we're giving to this printer
    alias       HP LaserJet 2605dn ; A longer name associated with the printer
    address     192.168.1.30    ; IP address of the printer
    hostgroups  allhosts      ; Host groups this printer is associated with
}
        

Vous pouvez ajouter maintenant quelques définitions de services (dans le même fichier de configuration) pour superviser différents aspects de votre imprimante. Si c'est la *première* imprimante que vous supervisez, vous pouvez simplement modifier l'exemple de définition d'hôte dans printer.cfg.

Remplacez hplj2605dn dans les exemples de définitions ci-dessous par le nom que vous avez renseigné dans le paramètre host_name que vous venez d'ajouter dans la définition d'hôte.

Ajoutez cette définition de service pour pouvoir superviser l'état de l'imprimante. Le service utilise le plugin check_hpjd pour vérifier l'état de l'imprimante toutes les 10 minutes par défaut. La communauté SNMP utilisée dans cet exemple pour interroger l'imprimante est public.

define service {
    use                   generic-service    ; Inherit values from a template
    host_name             hplj2605dn       ; The name of the host the service is associated with
    service_description   Printer Status     ; The service description
    check_command         check_hpjd!-C public  ; The command used to monitor the service
    normal_check_interval 10 ; Check the service every 10 minutes under normal conditions
    retry_check_interval  1  ; Re-check the service every minute until its final/hard state is determined
}
        

Ajoutez la définition de service suivante pour pinger l'imprimante toutes les 10 minutes par défaut. C'est utile pour superviser le RTA, les paquets perdus et la connectivité réseau.

define service {
    use                   generic-service
    host_name             hplj2605dn
    service_description   PING
    check_command         check_ping!3000.0,80%!5000.0,100%
    normal_check_interva  10
    retry_check_interval  1
}
        

Enregistrez le fichier.

Redémarrage de Nagios

Une fois que vous avez ajouté les définitions d'hôte et de service au fichier printer.cfg, vous êtes prêt à commencer la supervision de l'imprimante. Pour cela, vous aurez besoin de vérifier votre configuration et de redémarrer Nagios.

Si le processus de vérification produit n'importe quel message d'erreur, réglez d'abord vos problèmes de configuration avant de continuer. Assurez-vous de ne pas redémarrer Nagios avant que le processus de vérification ne se déroule sans erreur!