[PYTHON] [blackbird-mysql] Surveiller mysql avec blackbird

blackbird mysql plugin

Ce plugin obtient diverses informations de mysql et envoie les données au backend Actuellement, vous pouvez surveiller les informations suivantes: (Il cible la série mysql 5.5, mais je ne pense pas qu'il y ait de problème avec 5.6)

Chaque élément d'acquisition est dans l'unité de «composant». Un modèle Zabbix est préparé pour chaque composant, utilisez donc le composant que vous souhaitez surveiller et le modèle Zabbix en tant qu'ensemble. Le tableau de correspondance entre «composant» et Zabbix Template est le suivant.

Chaque composant du plugin mysql blackbird

component content zabbix template
(defaultt) get mysql version and check mysql health MySQL_5.5_general.xml
global_variables get information by SHOW GLOBAL VARIABLES MySQL_5.5_variables.xml
global_status get information by SHOW GLOBAL STATUS MySQL_5.5_status.xml
innodb_status get information by SHOW ENGINE INNODB STATUS MySQL_5.5_innodb.xml
slave_status get information by SHOW SLAVE STATUS MySQL_5.5_slave.xml
table_count discovery number of tables in database (lld) MySQL_5.5_general.xml

** Chaque modèle Zabbix, mais créé avec Zabbix 2.4 ** ** La définition du déclencheur a changé, elle ne peut donc pas être utilisée dans la série 2.2 **

Install

corps de merle

Veuillez installer en vous référant à ici

Install mysql plugin

Vous pouvez utiliser setup.py ou rpm. Vous pouvez également l'insérer manuellement, mais dans ce cas, veuillez utiliser le module de MySQLdb de python séparément.

installer avec setup.py

git clone https://github.com/Vagrants/blackbird-mysql.git
cd blackbird-mysql
python setup.py install

installer avec rpm

yum install blackbird-mysql --enablerepo=blackbird

La dépendance nécessite MySQL-python

Créer un utilisateur de surveillance du côté MySQL

Créer un utilisateur auquel blackbird se connecte

mysql> GRANT SELECT, REPLICATION CLIENT, SHOW DATABASES, PROCESS ON *.* TO  'bbd'@'127.0.0.1' IDENTIFIED BY 'bbd';

Veuillez modifier l'adresse IP, le nom d'utilisateur et le mot de passe en conséquence. Les informations utilisateur de connexion peuvent être définies librement avec config Si vous disposez déjà d'un utilisateur pour la surveillance, vous n'avez pas besoin de le créer.

Définir le plugin

config est dans / etc / blackbird / conf.d / mysql.cfg Vous pouvez définir le composant et l'intervalle de surveillance

ini:/etc/blackbird/conf.d/mysql.cfg


[mysql]
module = 'mysql'

# mysql setting
#
# - Please create monitor user like this.
#
#   mysql> GRANT SELECT, REPLICATION CLIENT, SHOW DATABASES, PROCESS ON *.* TO  'bbd'@'127.0.0.1' IDENTIFIED BY 'bbd';
#
# mysqlhost = '127.0.0.1'
# mysqluser = 'bbd'
# mysqlpass = 'bbd'

# components
# - global_variables : SHOW GLOBAL VARIABLES;
# - global_status    : SHOW GLOBAL STATUS;
# - innodb_status    : SHOW ENGINE INNODB STATUS;
# - slave_status     : SHOW SLAVE STATUS;
# - table_count (LLD): SELECT table_schema, COUNT(table_name) FROM information_schema.TABLES GROUP BY table_schema;
#
components = 'global_variables,global_status,innodb_status,slave_status,table_count'

# interval for this module
#
# interval = 60
# lld_interval = 600

#
# You can set the different interval time for each component.
#
# [mysql]
# module = 'mysql'
# components = 'version,global_variables,global_status,innodb_status'
# interval = 60
#
# [mysql_slave_monitor_frequent_intervals]
# module = 'mysql'
# components = 'slave_status'
# interval = 10

À l'arrière de la configuration, il existe une méthode de réglage lorsque vous souhaitez modifier l'intervalle de surveillance uniquement pour un composant spécifique en tant que TIPS.

Redémarrez blackbird lorsque vous avez terminé

sudo /etc/init.d/blackbird restart

Vérifiez si les données arrivent sur Zabbix

Les modèles Zabbix peuvent être trouvés dans le référentiel github (https://github.com/Vagrants/blackbird-mysql/tree/master/templates) Importez-le dans Zabbix et appliquez-le au serveur cible

** Si le nom d'hôte sur Zabbix et le nom d'hôte du serveur sur lequel tourne blackbird sont différents, vous devez définir le nom d'hôte sur / etc / blackbird / conf.d / mysql.cfg ** Match avec Zabbix

ini:/etc/blackbird/conf.d/mysql.cfg


hostname = your_static_hostname

Précautions, etc.

Veuillez personnaliser Zabbix Template Trigger etc. pour chaque environnement.
Le modèle Zabbix est conçu avec la politique de ** prenez ce que vous pouvez obtenir pour le moment **
À la recherche de succès
Je veux l'utiliser avec la série Zabbix 2.2
Pas seulement MySQL, mais PostgreSQL?

Recommended Posts

[blackbird-mysql] Surveiller mysql avec blackbird
[blackbird-redis] Surveiller Redis avec blackbird
[blackbird-rabbitmq] Surveiller rabbitmq avec blackbird
[blackbird-nginx] Surveiller Nginx avec blackbird
[blackbird-xfs] Surveiller les fichiers xfs avec blackbird
[blackbird-memcached] Surveiller Memcached avec blackbird
[blackbird-fio-status] Surveiller ioDrive (Fusion-IO) avec blackbird
[blackbird-named] Monitor Bind (nommé) avec blackbird
Utiliser MySQL avec Django
[blackbird-ntp] Surveiller les informations ntpq (décalage, gigue, etc.) avec blackbird
Connectez MySQL de Vagrant à MySQL Workbench
Surveiller les processus Tomcat avec Zabbix-agent
Remarque: différences entre les apidrivers mysql
Regroupement de connexions avec Python + MySQL
Surveillez les applications Web Python avec Prometheus
Surveillez les performances des applications Python avec Dynatrace ♪
Surveiller l'état du DHCP ISC avec ZABBIX
Utiliser les pictogrammes Unicode 6.0 avec django / MySQL