Surveillance des performances de MySQL pour Grafana sur isic en 20 minutes

Bonjour, cher habryanin et une autre recette pour ce suivi savoureux et sain!

Je m'appelle Mikhail Andrianov et je travaille en tant que directeur technique depuis 7 ans chez Emarsys.

Nous travaillons souvent avec le client et nos bases de données, nous devons donc souvent les surveiller afin que nos clients et nous puissions vivre et travailler en paix.

Et donc l'idée m'est venue de partager avec vous une recette pour déployer un système de surveillance assez courant dans le monde de MySQL.

Voici à quoi pourrait ressembler cette beauté:

image

tous les tableaux de bord sont déjà inclus dans la recette, et vous n'avez pas besoin de les sculpter. En fait, il vous suffit de tout configurer correctement et de plonger tête baissée dans le monde des graphiques et des tableaux chics.

Donc, pour la préparation, nous avons besoin de:

Mysql> 5.6 (c'est possible et plus jeune, mais vous devez corriger quelque chose dans les requêtes)
Grafana> 6.7.1
Ubuntu / MS Windows au goût



Première étape


Nous avons mis en place une base de données pour stocker les journaux.

La base de la base de service, j'ai inclus un my2Collector pratique et facile à préparer du maître de la cuisine italienne MeSql Meo

mysql --user=root -pXXX < my2.sql

* J'utiliserai les commandes de mon bien-aimé Ubuntu 16.

Vous ne pouvez pas donner à l'utilisateur mes droits d'administrateur my2 - on verra plus tard qu'il peut vous arriver sur le côté.

Lorsque la base de données est hors du vidage, je vous recommande de vous familiariser avec les procédures qui mettent à jour les données qu'elle contient . En particulier, la procédure

 `collect_stats`()

Il est conseillé d'augmenter la fréquence de la demande à 5 minutes. Vous aurez donc des données plus pertinentes sur l'état de la base de données.

Maintenant que le moteur de collecte de statistiques est en cours d'exécution, vous pouvez passer à la connexion de cette source à Grafana.

Étape deux


Nous connectons Grafana à la base de données avec des journaux,

image

tout est standard.

Choisissez MySQL Data Source
Next ...
URL, utilisateur, mot de passe

** Vous pouvez voir que l'utilisateur que nous utilisons pour collecter les journaux et restreindre uniquement l'accès en lecture performance.schema et écrire dans la base de données my2, nous les utilisons dans Grafana Ainsi, vous pouvez éviter de compromettre votre base si vous perdez l'accès à Grafana.




Troisième étape


Configuration des tableaux de bord

J'ai délibérément choisi le moyen de configuration le plus rapide et le plus pratique, afin de ne pas être patient.

Encore une fois, tournez-vous vers Meo.

Son tableau de bord s'appelle 2MySQL Simple Dashboard.

Le moyen le plus pratique de définir des tableaux de bord dans Grafana est, bien sûr, d'importer l'objet de paramètres JSON.

Pour terminer cette étape simple:

  1. Télécharger JSON lui-même
  2. Entrons dans la gestion des tableaux de bord Dashaboards -> Manage
  3. Sélectionnez Importer et chargez l'objet à partir du fichier téléchargé.

image

image

Nous avons maintenant un beau panneau prêt à l'emploi avec des visualisations de données très efficaces.



La flexibilité de Grafana permet de modifier facilement chaque panneau, et les variables intégrées dans 2MySQL Simple Dashboard aident à ajuster immédiatement les panneaux aux utilisateurs et processus qui sont les plus intéressés, par exemple, pour suivre des utilisateurs spécifiques de la base de données sur des panneaux ou tableaux de bord séparés.

image

L'étape suivante consiste à configurer des alertes pour le tableau de bord créé. Je vais omettre ce processus, laissant à la discrétion de tous ceux qui décident de suivre le chemin décrit. Toutes les alertes sont configurées au niveau de chaque panneau spécifique.

image

Comme promis, le déploiement se déroule assez rapidement et sans danser avec un tambourin. Je serai heureux des ajouts à ma recette de habrovtsev expérimenté, en particulier en ce qui concerne alerts'ov.

All Articles