Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Résumé

Cette page décrit le contenu du pack MySQL livré permettant de superviser une base MySQL. Les checks du packs supervisent différents indicateurs, comme par exemple:

  • Le temps de réponse
  • Le nombre de connexions 
  • Le ratio de cache
  • etc...


Plusieurs étapes de configuration sont nécessaires afin de superviser une base de données MySQL:

  • Analyser ce qui est disponible dans le pack MySQL livré avec Shinken Entreprise
  • Mettre en place un compte MySQL utilisé par les scripts de supervision
  • Tester la connexion à la base de données
  • Configurer l'hôte Shinken pour démarrer la supervision de la base


Panel
titleOn this page

Table of Contents
maxLevel34


Contenu du pack MySQL

Pour faciliter la supervision de bases de données MySQL, certaines étapes de configuration sont déjà effectuées par l'installation de Shinken:

  • Le script check_mysql_health utilisé par la supervision est installé dans /var/lib/shinken/libexec/check_mysql_health
  • Des modèles préconfigurés utilisables sont installés dans Shinken Entreprise (ils seront décrits en détail dans la suite de cette documentation)


Tip
titleRemarque

On suppose dans la suite de cette documentation que le serveur MySQL à superviser est un serveur Linux appelé "srv-lin-1". Il faudra donc adapter les commandes qui utilisent ce nom d'hôte à votre infrastructure.



Mise en place d'un compte de supervision MySQL

Pour pouvoir superviser la base de données, il faut d'abord créer un compte sur la base MySQL qui va être utilisé par Shinken pour récuperer les informations nécessaires à la supervision.

Pour commencer, on se connecte avec l'utilisateur root sur la base de données (changer "password" par le mot de passe root de la base de données):

Code Block
languagebash
 lin-srv-1:# mysql -u root -ppassword

On créée ensuite un utilisateur "shinken" (remplacer "shinkenpassword" par un mot de passe au choix à utiliser pour l'utilisateur shinken):

Code Block
languagesql
GRANT usage ON *.* TO 'shinken'@'%' IDENTIFIED BY 'shinkenpassword';

It’s a good thing to change the shinkenpassword to another password. Then you need to update the /etc/shinken/resource.d/mysql.cfg

On change ensuite dans Shinken les données globales utilisées par le pack MySQL qui définissent l'utilisateur et le mot de passe à utiliser pour la connexion à la base de données. Dans /etc/shinken/resource.d/mysql.cfg:

Code Block
$MYSQLUSER$=shinken
$MYSQLPASSWORD$=shinkenpassword


Vérification de la connexion à la base de données

Une fois l'utilisateur défini dans la base de données MySQL, on peut vérifier que la connexion est opérationnelle avec la commande suivante:


Code Block
languagebash
/var/lib/shinken/libexec/check_mysql_health --hostname "srv-lin-1" --username "shinken" --password "shinkenpassword" --mode connection-time



Modèles d'hôtes disponibles dans le pack MySQL

Le pack MySQL livre des modèles d'hôtes préconfigurés qui peuvent être utilisés avec très peu de configuration manuelle. Parmi ces modèles d'hôtes, certains sont visibles par les administrateurs de SI (modèles publics) tandis que d'autres plus précis ne sont visibles que pour les administrateurs Shinken.

Modèles d'hôtes publics

mysql

Le modèle "mysql" est le modèle d'hôte de base du pack qui permet de vérifier certains indicateurs essentiels de la base:

CheckDétails
Seuil avertissementDonnée du seuil d'avertissementSeuil critiqueDonnée du seuil critique
Mysql-connectionTemps de connexion au serveur0 à n (en secondes)1CONNECTIONTIME_WARN5CONNECTIONTIME_CRIT
Mysql-restartTemps écoulé depuis le dernier redémarrage de MySQL0:0 à n:m (minutes:secondes)10:   (10mn)MYSQL_UPTIME_WARN5:   (5mn)MYSQL_UPTIME_CRIT
Mysql-slow_queriesRatio de requêtes par seconde détectées comme "lentes"0 à n/seconde0.1SLOWQUERIES_WARN1SLOWQUERIES_CRIT
Mysql-tmp_disk_tablesPourcentage de tables temporaires créées sur le disque au lieu de directement en mémoire0 à 10025TMPDISKTABLES_WARN50TMPDISKTABLES_WARN


Ce modèle est également utilisé par les autres modèles d'hôtes du pack (sauf mysql-connection-method) en tant de modèle parent. Tous les autres modèles d'hôtes présentés ci-dessous auront donc également les mêmes checks décrits dans le tableau précédent.

mysql-full

Ce modèle regroupe l'ensemble des modèles du pack MySQL listés dans la partie "Modèles réservés aux administrateurs Shinken".

Warning
titleWarning

L'utilisation du modèle d'hôte mysql-full ajoute un nombre importants de checks sur l'hôte. Consommé sans modération, il peut surcharger les Pollers et Schedulers. On lui préférera les modèles d'hôtes plus ciblés présentés par la suite qui sont moins consommateurs de resources.



Modèles d'hôtes réservés aux administrateurs Shinken (ne peuvent pas être vus par les autres utilisateurs)

mysql-connection-method

Ce modèle contient les paramètres permettant de se connecter à la base de données MySQL. Par conséquence, tous les modèles du pack MySQL héritent de ce modèle.

mysql-cluster

Ce modèle permet de superviser un cluster MySQL

CheckDétails
Mysql-cluster-ndbd-runningVérifie que tous les noeuds du cluster répondent


mysql-innoDB

Ce modèle permet de récupérer des informations sur les buffers InnoDB et les attentes


CheckDétails
Seuil avertissementDonnée du seuil d'avertissementSeuil critiqueDonnée du seuil critique
Mysql-bufferpool-hitrateRatio d'utilisation du cache dans les pools de buffers InnoDB0 à 100%99:BUFFERPOOLHITRATE_WARN95:BUFFERPOOLHITRATE_CRIT
Mysql-bufferpool-wait-freeRatio d'attente des pools de buffer InnoDB0 à n/sec1BUFFERPOOLWAITFREE_WARN10BUFFERPOOLWAITFREE_CRIT
Mysql-log-waitsAttentes de logs InnoDB à cause d'un buffer de logs trop petit0 à n/sec1LOGWAITS_WARN10LOGWAITS_CRIT


mysql-MyISAM

Ce modèle permet de récupérer des informations sur le ratio d'utilisation du cache de clés MyISAM.


CheckDétails
Seuil avertissementDonnée du seuil d'avertissementSeuil critiqueDonnée du seuil critique
Mysql-keycache-hitrateRatio d'utilisation du cache de clés MyISAM0 à 100%99:KEYCACHEHITRATE_WARN95:KEYCACHEHITRATE_CRIT


mysql-performance

This template gives informations about the global server performance.


CheckDétails
Seuil avertissementDonnée du seuil d'avertissementSeuil critiqueDonnée du seuil critique
Mysql-index-usageUtilisation des indexs0 à 100%90:INDEXUSAGE_WARN80:INDEXUSAGE_CRIT
Mysql-long-running-procsNombre de processus en éxécution depuis plus d'une minute0 à n10LONGRUNNINGPROCS_WARN20LONGRUNNINGPROCS_CRIT
Mysql-table-lock-contentionRatio d’échec d'obtention de locks sur des tables MySQL0 à 100%1TABLELOCKCONTENTION_WARN2TABLELOCKCONTENTION_CRIT
Mysql-tablecache-hitrateRatio d'utilisation du cache des tables0 à n99:TABLECACHEHITRATE_WARN95:TABLECACHEHITRATE_CRIT
Mysql-threadcache-hitrateRatio d'utilisation du cache des threads0 à n10THREADCACHE_WARN20THREADCACHE_CRIT


mysql-query-cache

Ce modèle permet de récupérer des informations sur les caches de requêtes.

CheckDétails
Seuil avertissementDonnée du seuil d'avertissementSeuil critiqueDonnée du seuil critique
Mysql-qcache-hitrateRatio d'utilisation du cache des requêtes0 à 100%80:QCACHEHITRATE_WARN90:QCACHEHITRATE_CRIT
Mysql-qcache-lowmem-prunesNombre de déplacements hors du cache des requêtes à cause d'un manque de mémoire0 à n/sec1QCACHELOWMEMPRUNES_WARN10QCACHELOWMEMPRUNES_CRIT


mysql-usage

Ce modèle permet de récupérer des informations à propos de l'utilisation du serveur MySQL.

CheckDétails
Seuil avertissementDonnée du seuil d'avertissementSeuil critiqueDonnée du seuil critique
Mysql-open-filesNombre de fichiers ouverts (ratio par rapport à la limite maximum)0 à 100%80OPENFILES_WARN95OPENFILES_CRIT
Mysql-threads-connectedNombre de connexion actuellement ouvertes0 à n10THREADSCONNECTED_WARN20THREADSCONNECTED_CRIT


Comment utiliser les modèles du pack MySQL

Utiliser le modèle d'hôtes voulu sur l'hôte et configurer

Sur l'hôte à configurer, ajouter le modèle MySQL voulu dans la liste des modèles à utiliser.


Panel



Dans l'onglet Données, modifier les données pour configurer les seuils et identifiants de connexion à utiliser.

Les différentes données et leur signification sont décrites plus haut dans le récapitulatif de chaque modèle et des checks qu'il contient.


Panel