Projet

Général

Profil

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

Ajouté par Karim Ayari il y a plus de 8 ans. Mis à jour il y a environ 7 ans.

Statut:
Nouveau
Priorité:
Normal
Assigné à:
Version cible:
-
Début:
02/12/2015
Echéance:
% réalisé:

0%

Restant à faire (heures):

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 Voir - dictionnaire check_mk (1018 octets) Karim Ayari, 26/10/2016 13:06

eole-check_mk.tgz (3,07 ko) Karim Ayari, 01/03/2017 15:37

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

eole-check_mk.tgz - archive corrigée (3,08 ko) Karim Ayari, 01/03/2017 18:14

Historique

#1 Mis à jour par Scrum Master il y a plus de 8 ans

  • Assigné à mis à Emmanuel GARETTE

#2 Mis à jour par Emmanuel GARETTE il y a plus de 8 ans

  • Tâche parente mis à #8055

#3 Mis à jour par Emmanuel GARETTE il y a plus de 8 ans

  • Tracker changé de Demande à Tâche

#4 Mis à jour par Karim Ayari il y a plus de 7 ans

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 Mis à jour par Karim Ayari il y a plus de 7 ans

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 Mis à jour par Karim Ayari il y a environ 7 ans

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 Mis à jour par Karim Ayari il y a environ 7 ans

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

Formats disponibles : Atom PDF