Discussion: Nagios NRPE service

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    mai 2017
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : mai 2017
    Messages : 33
    Points : 17
    Points
    17

    Par défaut Nagios NRPE service

    Bonjour Bonjour,

    Je viens de commencer à utiliser Nagios core ( installé sur une vm ubuntu 16.04.2 et qui manage un windows et une vm Ubunut). J'ai réussis a utiliser les check_nt pour verifier des services sur mon windows.
    Actuellement je cherche a utiliser des check_nrpe ( plus sécurisé ) pour windows mais je me heurte au fait que je ne sais pas du tout comment faire pour checker des services.
    J'ai essayé de le faire pour le service de l'alimentation( Power) mais j'obtiens un warning :
    delayed
    (clr_optimization_v4.0.30319_32=stopped
    (delayed)
    clr_optimization_v4.0.30319_64=stopped
    (delayed),sppsvc=stopped (delayed))
    code dans le fichier winprod (fichier definissant les services pour ce windows) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
        define service{
                   use                  local-service
                   host_name           windowsPC
                   service_description   Power
                   check_command        check_nrpe_1arg!alias_service service=Power "critical=state ='stopped'"
    }
    Si quelqu'un pouvait m'expliquer comment ca marche pour gérer un service donné avec nrpe,si possible avec des exemples concret, ca serait super

  2. #2
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    mai 2017
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : mai 2017
    Messages : 33
    Points : 17
    Points
    17

    Par défaut

    Je rajoute juste que le warning se transforme en
    Critical: MMCSS=stopped(auto), delay...
    + le reste du message du warnig.
    y a t'il quelq'un pour me guider parce que là je tourne en rond?

  3. #3
    Membre actif

    Homme Profil pro
    Architecte réseau
    Inscrit en
    mai 2017
    Messages
    181
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 96
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Architecte réseau

    Informations forums :
    Inscription : mai 2017
    Messages : 181
    Points : 277
    Points
    277
    Billets dans le blog
    2

    Par défaut

    Je te colle un compte rendu que j'avais fait. La mise en forme c'est perdu dans la manipulation mais tu devrais retrouver les étapes que j'ai faites et peut être ta réponse.

    Installation de l’agent NRPE
    En premier lieu, on met en place les répertoires EPEL. Comme expliqué plus haut, il donne accès à des packages supplémentaires.
    La CentOS utilisé est un système d’exploitation 64 bits, la commande pour EPEL est donc la suivante :
    rpm -Uvh http://download.fedoraproject.org/pu...6-8.noarch.rpm
    Ensuite, on peut installer les packages souhaités : NRPE et nagios-plugins.
    # yum -y install nrpe nagios-plugins
    Une fois fait, il est nécessaire d’avoir les extensions que l’on souhaite utiliser. On peut les voir avec la commande suivante :
    # yum -y list nagios-plugins\*
    EPEL nous renvoie donc la liste des plugins disponibles :
    ...
    On profite d’être en environnement de test pour simplement installer tous les plugins avec le module nagios-plugins-all.x86_64.
    # yum -y install nagios-plugins-all.x86_64
    On peut maintenant configurer NRPE en éditant le fichier /etc/nagios/nrpe.cfg.
    On ajoute l’IP de FAN :
    allowed_hosts=127.0.0.1,193.1.2.20
    Dans le même fichier, on vérifie les commandes qui seront possible et on ajoute les manquantes :
    command[check_users]=/usr/lib64/nagios/plugins/check_users -w 5 -c 10
    command[check_load]=/usr/lib64/nagios/plugins/check_load -w 15,10,5 -c 30,25,20
    command[check_zombie_procs]=/usr/lib64/nagios/plugins/check_procs -w 5 -c 10 -s Z
    command[check_total_procs]=/usr/lib64/nagios/plugins/check_procs -w 150 -c 200
    command[check_root_disk]=/usr/lib/nagios/plugins/check_disk -w 20% -c 10% -p /
    On finit par démarrer NRPE et le faire à chaque démarrage.
    # service nrpe start
    # chkconfig nrpe on
    Il faut bien entendu ajouter une règle dans IPtables. On n’autorise que pour l’IP de la FAN.
    # iptables -I INPUT -s 193.1.2.20 -p tcp -m tcp --dport 5666 -j ACCEPT
    # service iptables save
    # service iptables restart
    On commence par vérifier le fonctionnement le plus basique avec la commande suivante sur la FAN :
    [root@FAN plugins]# ./check_nrpe -H 193.1.2.11
    NRPE v2.15
    NRPE a répondu avec son numéro de version, ce qui valide le bon fonctionnement du système.

    Utilisation de NRPE
    On peut maintenant tester des commandes. Commençons par vérifier la charge sur le serveur distant.
    [root@FAN plugins]# ./check_nrpe -H 193.1.2.11 -c check_load
    OK - load average: 0.03, 0.04, 0.01|load1=0.030;15.000;30.000;0; load5=0.040;10.000;25.000;0;
    load15=0.010;5.000;20.000;0;
    On voit donc ici que FAN a demandé au serveur distant l’information.
    On vérifie le fonctionnement de la commande check_disk1 :
    [root@FAN plugins]# ./check_nrpe -H 193.1.2.11 -c check_disk1
    NRPE: Command 'check_disk1' not defined
    Comme NRPE nous l’indique, la commande n’est pas définit. Il faut donc retourner sur la machine distante et définir le service dans
    le fichier : /etc/nagios/nrpe.cfg
    command[check_disk1]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p /
    On vérifie ici le disque dur principal. S’il a moins de 20% d’espace libre, on sera en warning. C’est avec moins de 10% qu’on rentrera
    en critique.
    Maintenant on peut utiliser la commande :
    [root@FAN plugins]# ./check_nrpe -H 193.1.2.11 -c check_disk1
    DISK OK - free space: / 14148 MB (81% inode=90%);| /=3252MB;14064;15822;0;17580
    Pour pouvoir configurer correctement la supervision du serveur distant, on ajoute la commande dans la FAN en éditant le fichier :
    /etc/nagios/objects/commands.cfg.
    # 'check_nrpe' command definition
    define command{
    command_name check_nrpe
    command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
    }

    Supervision du serveur distant
    Il faut ensuite paramétrer l’hôte. Pour cela on s’inspire du travail effectué pour les routeurs. On va donc créé un fichier
    /etc/nagios/objects/server.cfg.
    On l’ajoute dans le fichier de configuration principale de Nagios : /etc/nagios/nagios.cfg
    # Definitions for monitoring a linux server
    cfg_file=/etc/nagios/objects/server.cfg
    Définition de l’hôte
    On commence par définir notre hôte qu’on nommera CentOS-serveur.
    # Define the switch that we'll be monitoring
    define host{
    use linux-server ; Inherit default values from a template
    host_name CentOS-serveur ; The name we're giving to this switch
    alias Serveur CentOS 6.7 ; A longer name associated with the switch
    address 193.1.2.11 ; IP address of the switch
    hostgroups serveurs ; Host groups this switch is associated with
    }
    On utilise un modèle déjà présent dans /etc/nagios/objects/templates.cfg.
    # Linux host definition template - This is NOT a real host, just a template!
    define host{
    name linux-server ; The name of this host template
    use generic-host ; This template inherits other values from the
    generic-host template
    check_period 24x7 ; By default, Linux hosts are checked round the clock
    check_interval 5 ; Actively check the host every 5 minutes
    retry_interval 1 ; Schedule host check retries at 1 minute intervals
    max_check_attempts 10 ; Check each Linux host 10 times (max)
    check_command check-host-alive ; Default command to check Linux hosts
    notification_period workhours ; Linux admins hate to be woken up, so we only notify
    during the day
    ; Note that the notification_period variable is being
    overridden from
    ; the value that is inherited from the generic-host
    template!
    notification_interval 120 ; Resend notifications every 2 hours
    notification_options d,u,r ; Only send notifications for specific host states
    contact_groups admins ; Notifications get sent to the admins by default
    register 0 ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL HOST,
    JUST A TEMPLATE!
    }
    Définition d’un groupe
    On revient dans note fichier /etc/nagios/objects/server.cfg et on ajoute un groupe nommé serveurs.
    define hostgroup{
    hostgroup_name serveurs ; The name of the hostgroup
    alias Serveurs internes ; Long name of the group
    }
    Service : charge du processeur
    Pour cela, on utilisera la commande NRPE suivante :
    command[check_load]=/usr/lib64/nagios/plugins/check_load -w 15,10,5 -c 30,25,20
    Comme d’habitude on passe deux paramètres pour établir les seuils d’alarmes. Dans ce cas, il y a trois chiffres qui correspondent aux
    moyennes d’1, de 5 et de 15 minutes. Le serveur établi ces chiffres en fonction du nombre de processus qui utilisent le CPU.
    On ajoute donc le service dans le fichier /etc/nagios/objects/server.cfg :
    # Check load on the server
    define service{
    use generic-service ; Inherit values from a template
    host_name CentOS-serveur ; The name of the host
    service_description Load ; The service description
    check_command check_nrpe!check_load ; The command used to monitor the service
    }
    Service : nombre d’utilisateurs logués
    Pour cela, on utilisera la commande NRPE suivante :
    command[check_users]=/usr/lib64/nagios/plugins/check_users -w 5 -c 10
    Ici l’information renvoyée est le nombre d’utilisateurs connectés en même temps. On fixe les seuils à 5 et 10.
    On ajoute donc le service dans le fichier /etc/nagios/objects/server.cfg :
    # Check number of users logged on the server
    define service{
    use generic-service ; Inherit values from a template
    host_name CentOS-serveur ; The name of the host
    service_description Users logged ; The service description
    check_command check_nrpe!check_users ; The command used to monitor the service
    }
    Service : nombre de processus en cours de fonctionnement
    Pour cela, on utilisera la commande NRPE suivante :
    command[check_total_procs]=/usr/lib64/nagios/plugins/check_procs -w 250 -c 300
    On vérifie ici le nombre de processus en parallèle sur le serveur. Les seuils ont été réajustés car le nombre de processus présent sur
    la machine dépassait les seuils préenregistrés.
    On ajoute donc le service dans le fichier /etc/nagios/objects/server.cfg :
    # Check number of processus on the server
    define service{
    use generic-service ; Inherit values from a template
    host_name CentOS-serveur ; The name of the host
    service_description Procs ; The service description
    check_command check_nrpe!check_total_procs ; The command used to monitor the service
    }
    Service : espace disque disponible sur la racine
    Pour cela, on utilisera la commande NRPE suivante :
    command[check_disk1]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p /
    Comme vu précédemment on vérifie ici l’espace disque disponible.
    On ajoute donc le service dans le fichier /etc/nagios/objects/server.cfg :
    # Check use of disk space
    define service{
    use generic-service ; Inherit values from a template
    host_name CentOS-serveur ; The name of the host
    service_description Disk use ; The service description
    check_command check_nrpe!check_total_procs ; The command used to monitor the service
    }
    Service : fonctionnement du serveur http
    Pour tester le bon fonctionnement du serveur http, on va utiliser un service qui va régulièrement tenter d’ouvrir une connexion http
    avec le serveur. Le service utilisé offre un certain nombre d’option avec par exemple la possibilité de faire une recherche de texte dans
    le résultat obtenue. De cette manière on s’assure aussi que la réponse est bien celle attendus.
    Pour cela, on utilisera la commande NRPE suivante :
    command[check_http]=/usr/lib64/nagios/plugins/check_http -w 3 -c 5 -I 193.1.2.11 -s "Bonjour"
    On teste donc que le serveur http à l’adresse 193.1.2.11 réponde un code OK (200) en moins de 3 ou 5 secondes. De plus on vérifie
    que la réponse contient bien « Bonjour ».
    On peut le faire depuis le serveur mais aussi depuis la machines FAN. Pour cela on ajoute une commande au fichier
    /etc/nagios/objects/command.cfg
    # 'check_http_precise' command definition
    define command{
    command_name check_http_precise
    command_line $USER1$/check_http -I $HOSTADDRESS$ -w 3 -c 5 -s $ARG1$
    }
    Il ne reste donc plus qu’à ajouter ces deux services dans /etc/nagios/objects/server.cfg.
    # Check http response with "boujour" from server with nrpe
    define service{
    use generic-service ; Inherit values from a template
    host_name CentOS-serveur ; The name of the host
    service_description HTTP check NRPE ; The service description
    check_command check_nrpe!check_http ; The command used to monitor the service
    }
    # Check http response with "boujour" from nagios
    define service{
    use generic-service ; Inherit values from a template
    host_name CentOS-serveur ; The name of the host
    service_description HTTP check Nagios ; The service description
    check_command check_http!"Bonjour" ; The command used to monitor the service
    }

    Vérification
    On peut donc vérifier le bon fonctionnement de tous les services que l’on vient de mettre en place. Pour cela, on se rend sur l’interface web de Nagios.
    On vérifie que notre nouvel hôte est bien vue :
    On peut ensuite vérifier que les services fonctionnent :
    On peut donc voir que tout fonctionne comme prévu. Tous les tests que l’ont fait sont valide et ne retourne pas d’erreurs.
    Les informations retournées permettent de validé que le serveur fonctionne, on peut donc le considérer serveur comme supervisé.

  4. #4
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    mai 2017
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : mai 2017
    Messages : 33
    Points : 17
    Points
    17

    Par défaut

    Salut, merci de ta réponse .

    Par contre comme je l'ai expliqué je veux monitorer un ordinateur Windows, alors que tous tes exemples parlent de gérer un ordinateur Linux. (et je n'ai pas CentOs)

    J'ai un peu avancé de mon coté et j'ai réussis à afficher les services voulu parcontre je voudrais savoir/comprendre comment s'embrique les fichiers entre eux ( nsclient.ini coté windows et command.cfg & winprod.cfg coté linux (ma mv qui heberge nagios) ) : qui appel qui ? que modifier pour rajouter des check ?

    J'ai aussi essayé d'installer un script : check_winprocess-1.6 (https://itefix.net/check_winprocess)
    J'ai mis ca dans nsclient.ini :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    command[check_proc_count]=C:\Program Files\NSClient++\scripts\check_winprocess-1.6\check_winprocess.exe
    Mais apres je ne sais pas où l'appeler sur le Linux.

Discussions similaires

  1. Réponses: 6
    Dernier message: 23/08/2016, 14h10
  2. Nagios check_total_procs renvoie une réponse fausse via NRPE
    Par pausg dans le forum Administration système
    Réponses: 0
    Dernier message: 27/09/2011, 11h30
  3. Réponses: 6
    Dernier message: 16/10/2008, 10h44
  4. [Nagios] Quels services/états à monitorer
    Par kaymak dans le forum Administration système
    Réponses: 2
    Dernier message: 30/05/2008, 13h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo