Il s'agit de la configuration avec laquelle Shinken est livrée.
Vérifie que le module Graphite-Perfdata peut contacter le serveur hébergeant le service graphite.
Il vérifie que le service est disponible : port réseau ouvert, processus en cours d’exécution, suffisamment d'espace disque, permissions, statistiques d'entrées/sorties disque pour écrire les données de métrologie.
Il renvoie également les statistiques globales et pour chaque worker : Nombre de données reçues, volume et charge du module.
La charge du module est calculée à partir du temps de traitement utilisé par rapport au temps d’exécution que le module dispose pour traiter les données. |
Veuillez vous référer à la page Haute disponibilité de la base de métrologie (Graphite) pour la mise en place de cette architecture.
Lorsque le service Graphite est configuré comme un relais vers d'autres nœuds de stockage, le check vérifie l'état du relais vers lequel le module Graphite-Perfdata envoie les métriques ; il se connecte également sur les nœuds vers lesquels le relais Graphite relaie les métriques.
Pour chacun de ces nœuds, le check donne un statut global et vous devez consulter les checks Graphite de ces noeuds pour obtenir les détails.
Dans l'exemple ci-contre, le module envoie ses données à un relais (localhost: 2013), qui transmet les données à deux noeuds "cache" :
Les hôtes composant l'architecture Graphite sont automatiquement ajoutés à votre configuration par le listener Shinken (voir Visualiser l'architecture de son installation Shinken - Présentation détaillée, où cette fonctionnalité est décrite en bas de page) |
Les checks du module Graphite-Perfdata peuvent être configurés via des données fournies par le modèle.
Les données suivantes sont disponibles :
| Nom de la donnée | Decription | Valeur par défaut | Hérité du modèle d'hôte ou locale |
|---|---|---|---|
| MODULE_METROLOGY_LIST | Liste de Broker (Multi-démon) | broker-master$($_HOSTBROKER_PORT$)$ | Locale - Duplicate For Each |
| BROKER_PORT | Port utilisé pour établir la connexion avec le broker | 7772 | Locale |
| CHECK_SHINKEN_TIMEOUT | Timeout utilisé pour établir la connexion avec le broker | 3 | shinken |
| GRAPHITE_DATA_LOCATION | Emplacement des données sur les serveurs graphite | /opt/graphite/storage/whisper | Locale |
| GRAPHITE_PORT | Port utilisé pour établir la connexion au serveur graphite | 2003 | Locale |
| GRAPHITE_PROCESS_NAME | Nom du démon Graphite ( Processus ) | carbon-cache | Locale |
| GRAPHITE_STORAGE_CRITICAL | Limite en % pour passer le statut du check en critique lorsque l'espace de stockage atteint cette limite | 95 | Locale |
| GRAPHITE_STORAGE_WARNING | Limite en % pour passer le statut du check en warning lorsque l'espace de stockage atteint cette limite | 85 | Locale |
| GRAPHITE_USER | Utilisateur de graphite pour vérifier que les droits sont corrects | apache | Locale |
| SHINKEN_PROTOCOL | Protocole utilisé pour se connecter au serveur graphite | http | shinken |
| SSH_KEY | Clé SSH utilisée pour se connecter au serveur graphite | $SSH_KEY$ | Locale |
| SSH_KEY_PASSPHRASE | Passphrase de la clé SSH | $SSH_KEY_PASSPHRASE$ | Locale |
| SSH_PORT | Port SSH des serveurs graphite | $SSH_PORT$ | Locale |
| SSH_USER | Utilisateur ssh des serveurs graphite | $SSH_USER$ | Locale |
| GRAPHITE_DISKS_LOCATION | Filtre sur le nom du disque. Si une valeur est indiqué, seule ce disque sera pris en compte pour la vérification des I/O disques | absente car c'est une donnée sans valeur par défaut. Il faut la rajouter dans les données locales pour l'utiliser |
Le ssh est utilisé pour se connecter au serveurs graphite afin de vérifier que le processus indiqué est bien en cours d'exécution et que le serveur dispose d'assez d'espace de stockage |
Les ports et adresse des serveurs hébergeant le broker sont utilisé pour connaître l'état des modules Graphite-Perfdata (écriture) et WebUI (lecture). |
| Nom du check | Commande du check | Ligne de commande |
|---|---|---|
| Broker - broker-master - Module Metrology Writer | check_shinken_broker_module_metrology_writer!$VALUE1$ | $PLUGINSDIR$/check_shinken_module_metrology_writer.py -H "$HOSTADDRESS$" -p "$ARG1$" --shinkenversion "$SHINKENVERSION$" -P "$_HOSTSSH_PORT$" -i "$_HOSTSSH_KEY$" -u "$_HOSTSSH_USER$" -r "$_HOSTSSH_KEY_PASSPHRASE$" -d "$_HOSTGRAPHITE_DATA_LOCATION$" -U "$_HOSTGRAPHITE_USER$" -D "$_HOSTGRAPHITE_DISKS_LOCATION$" -n "$_HOSTGRAPHITE_PROCESS_NAME$" -w "$_HOSTGRAPHITE_STORAGE_WARNING$" -c "$_HOSTGRAPHITE_STORAGE_CRITICAL$" --timeout "$_HOSTCHECK_SHINKEN_TIMEOUT$" |
Le module Metrology - Writer donne plusieurs métriques :
| Nom de la métrique | Description |
|---|---|
IP_HOST_graphite_disk_sda_IO | Taille en pourcentage des entrées/sorties utilisé sur le disque de la machine où graphite est installé |
IP_HOST_graphite_storage_size | Taille en pourcentage de l'espace disque utilisé sur la machine où graphite est installé |
worker_X_last_minute_metrics_sent_nb | Nombre de métrique écrit sur la dernière minute sur la worker X |
worker_X_last_minute_work_time | Temps passé sur la dernière minute a écrire les métriques ( en seconde ) sur le worker X |