Project

General

Profile

Tâche #14186

Amon - Bac à idée #8055: Ajouter un outils d'analyse du réseau et de la charge machine (load)

Agent de supervision check_mk

Added by Karim Ayari over 4 years ago. Updated about 3 years ago.

Status:
Nouveau
Priority:
Normal
Assigned To:
Target version:
-
Start date:
12/02/2015
Due date:
% Done:

0%

Remaining (hours):

Description

Est-il possible d'étudier la possibilité d'intégrer l'agent de supervision check_mk aux modules Eole ? service que l'on pourrait activer ou non de la même manière que SNMP.

https://mathias-kettner.de/check_mk.html

Cet agent est executé localement et envoie les informations à un serveur en central (par exemple Racvision3)
il récupére facilement les informations systémes de base (cpu, i/o disk, mémoire, réseau...) et permet la création de plugin supplémentaires.

j'ai déjà tenté de l'installer sur un Amon mais il a besoin de xinet.d pour fonctionner
il s'installe bien et cela fonctionne mais je ne connais pas la compatibilité eole avec xinet.d (si on souhaite désinstaller que cela pose un problème de dépendances)
je crois aussi que les modules Eole utilisent inetd. Peut-être qu'après compilation check_mk peut utiliser inetd? à voir.

y a t-il d'ailleurs un projet de module Eole de supervision (serveur central) qui serait prévu ?

lyon-checkmk.xml View - dictionnaire check_mk (1018 Bytes) Karim Ayari, 10/26/2016 01:06 PM

eole-check_mk.tgz (3.07 KB) Karim Ayari, 03/01/2017 03:37 PM

Check_MK Multisite - Services of Host amontest-ampere - Mozilla Firefox_001.png View - capture d'écran check_mk (658 KB) Karim Ayari, 03/01/2017 03:49 PM

eole-check_mk.tgz - archive corrigée (3.08 KB) Karim Ayari, 03/01/2017 06:14 PM

History

#1 Updated by Scrum Master over 4 years ago

  • Assigned To set to Emmanuel GARETTE

#2 Updated by Emmanuel GARETTE over 4 years ago

  • Parent task set to #8055

#3 Updated by Emmanuel GARETTE over 4 years ago

  • Tracker changed from Demande to Tâche

#4 Updated by Karim Ayari over 3 years ago

je viens de retester sur un amon 2.5.2 et l'installation/désinstallation de Xinetd ne pose plus de problème (il me semble que sur les anciens modules si je voulais désinstaller xinetd il voulait enlever des paquets eole) enfin bref cela remplace openbsd-inetd

1- on installe l'agent et xinetd apt-get install check-mk-agent xinetd
2- on configure l'agent pour écouter sur le port 6556 (par défaut) dans le fichier /etc/xinetd.d/check_mk et on autorise seulement le serveur central (par exemple racvision3) et on l'active :

service check_mk
{
    type           = UNLISTED
    port           = 6556
    socket_type    = stream
    protocol       = tcp
    wait           = no
    user           = root
    server         = /usr/bin/check_mk_agent

    # If you use fully redundant monitoring and poll the client
    # from more then one monitoring servers in parallel you might
    # want to use the agent cache wrapper:
    #server         = /usr/bin/check_mk_caching_agent

    # configure the IP address(es) of your Nagios server here:
    #only_from      = 127.0.0.1
    only_from      = xx.xx.xx.xx

    # Don't be too verbose. Don't log every check. This might be
    # commented out for debugging. If this option is commented out
    # the default options will be used for this service.
    log_on_success =

    #disable        = yes
    disable        = no
}

3- on relance xinetd

service xinetd restart

4- on autorise les flux vers le port 6556 depuis le serveur central

iptables -I ext-bas -s xx.xx.xx.xx/32 -d 10.169.253.252/32 -i eth0 -p tcp -m tcp --dport 6556 -j ACCEPT

On peut déjà tester l'agent en local en lançant la commande check_mk_agent
Ou depuis la machine distante soit à l'aide du serveur check_mk ou bien on peut vérifier la récupération des infos avec un telnet :

telnet 10.169.253.252 6556

#5 Updated by Karim Ayari over 3 years ago

j'ai avancé sur cette partie en pj le dictionnaire

  • ici la régle (ext-bas) et le service ERA :
<directive tag="AgentCheckMK" service="check_mk" priority="33" action="2" attrs="17" src_inv="0" dest_inv="0" serv_inv="0" libelle="Agent check_mk" ipsec="0" accept="0">
<source name="supervision_acad"/>
<destination name="bastion"/>
</directive>

<service name="check_mk" protocol="tcp" ports="%%checkmk_port" id="99" libelle="agent check_mk" tcpwrapper="check_mk_agent"/>
<service name="check_mk" protocol="tcp" ports="%%checkmk_port" id="99" libelle="agent check_mk" tcpwrapper="check_mk_agent"/>
  • l'active_tag :
#ACTIVE_TAG
#agent check_mk
%if %%getVar('activer_checkmk', 'non') == 'oui'
AgentCheckMK
%end if

ensuite depuis un serveur de supervision on peut interroger l'agent check_mk de l'hôte distant

#6 Updated by Karim Ayari about 3 years ago

Voilà une archive contenant dictionnaire, template, et quelques explications

en tout cas je pense que c'est une bonne solution de supervision pour vos modules, rapide à mettre en place à condition d'avoir un serveur de supervision CheckMK et qui fourni un bon nombre de test de base dont notamment la quantité de flux qui transitent par les interfaces.

- l'avantage de check_mk est qu'il récupère toutes les informations d’un hôte en une seule fois.
- les scripts ou plugins peuvent être écris en bash ou python.
- on peut facilement mettre en place des checks supplémentaires aussi bien en local (par exemple pour le nombre de process e2guardian) en utilisant les checks fournis par les paquets nagios-plugins-* et le plugin MRPE fourni par check_mk (voir dans l'archive pour le nombre de process guardian) ou bien en créant des nouveaux plugins localement ou côté poller.

(je travaille également sur un serveur checkMk + Shinken basé sur une eolebase, si cela pourrait intéresser)

#7 Updated by Karim Ayari about 3 years ago

petite erreur dans un fichier, voilà l'archive corrigée.

Also available in: Atom PDF