Comment surveiller l'activité du serveur MySQL avec un tableau de bord Grafana

0
54

Grafana est une solution d'observabilité open source populaire qui vous permet de visualiser des métriques sur des tableaux de bord graphiques. Grafana dispose de connecteurs pour une large sélection de sources de données, notamment des bases de données de séries chronologiques, des moteurs de recherche et des applications individuelles. Dans cet article, vous apprendrez à utiliser Grafana pour configurer une surveillance simple pour un serveur de base de données MySQL à l'aide de l'intégration officielle de Grafana Cloud.

Démarrer

Grafana est disponible pour l'auto-hébergement sur votre propre matériel ou en tant que plate-forme SaaS gérée appelée Grafana Cloud. Nous utilisons Grafana Cloud dans ce didacticiel, car il prend en charge les intégrations de démarrage rapide qui se connectent à votre source de données et fournissent des dispositions de tableau de bord prédéfinies pour les métriques les plus courantes.

Connectez-vous à votre compte Grafana pour commencer . Vous pouvez créer gratuitement un nouveau compte Grafana Cloud pour stocker jusqu'à 10 000 séries de métriques et 50 Go de journaux.

Ajout de l'intégration MySQL

Vous pouvez ajouter l'intégration MySQL à votre compte en vous rendant dans la section “Intégrations et connexions” page, accessible à partir de l'icône représentant un éclair dans la barre latérale gauche. Entrez “mysql” dans la barre de recherche en haut de l'écran.

Vous devriez voir apparaître deux résultats, tous deux étiquetés “MySQL”. Choisissez celui qui est marqué comme "Intégration". Les intégrations incluent une expérience de configuration simplifiée et des dispositions de tableau de bord prédéfinies pour surveiller les statistiques clés du serveur. L'autre option, “Source de données,” vous oblige à vous connecter manuellement à votre serveur, à extraire des métriques et à assembler des tableaux de bord.

L'écran suivant vous invitera à sélectionner le système d'exploitation et l'architecture du processeur de la machine qui héberge votre serveur MySQL. Ajustez les options du menu déroulant en fonction de votre système. Appuyez sur le bouton bleu “Installer l'intégration” pour afficher les instructions d'installation appropriées de l'agent Grafana.

Installation de l'agent Grafana

L'agent Grafana est un utilitaire qui s'exécute en tant que service système pour collecter des métriques de vos machines. Il envoie des données à votre compte Grafana où elles apparaîtront dans vos tableaux de bord. L'agent est une version simplifiée du collecteur de données Prometheus.

 

L'exécution du script affiché sur l'écran d'intégration MySQL téléchargera l'agent Grafana, le configurera avec votre compte Grafana Cloud et configurera la surveillance MySQL. Les données seront collectées toutes les 60 secondes lorsque vous utilisez les paramètres par défaut.

Copiez le script affiché et exécutez-le sur le serveur qui héberge vos bases de données MySQL. Vous verrez quelques lignes de sortie pendant que le script télécharge le binaire et récupère votre fichier de configuration.

Vérifiez que le service Grafana Agent a démarré avec succès avant de continuer :

$ sudo systemctl status grafana-agent.service ● grafana-agent.service – Système de surveillance et transitaire Chargé : chargé (/lib/systemd/system/grafana-agent.service ; activé ; préréglage du fournisseur : activé) Actif : actif (en cours d'exécution) depuis samedi 2022- 08-13 17:39:03 UTC ; Il y a 39 s Documents : https://grafana.com/docs/agent/latest/

Appuyez sur le bouton “Tester l'intégration” dans votre compte Grafana Cloud pour vérifier que tout est prêt à l'emploi. L'agent doit fournir des données à Grafana.

 

Vous pouvez maintenant appuyer sur “Afficher les tableaux de bord&#8221 ; pour commencer à interagir avec les visualisations incluses dans l'intégration.

Exploration de vos tableaux de bord

L'intégration MySQL est livrée avec deux tableaux de bord : MySQL Overview et MySQL Logs. Le tableau de bord Présentation fournit des graphiques couvrant tous les aspects du fonctionnement de votre serveur MySQL, y compris la disponibilité, les requêtes par seconde, les connexions actives, les requêtes, les tris et l'activité réseau. Vous pouvez utiliser ces métriques pour interroger les performances de MySQL et identifier les opportunités d'optimisation.

La vue Journaux propose un flux des fichiers journaux écrits par votre instance de serveur MySQL. L'intégration collecte automatiquement les journaux dans le répertoire /var/log/mysql. Le tableau de bord comprend des graphiques du nombre de lignes de journal écrites, ventilées par niveau de gravité et code d'erreur.

< /p>

Les tableaux de bord peuvent être personnalisés en cliquant sur l'icône des paramètres en haut à droite et en appuyant sur “Rendre modifiable” bouton. Cela vous permettra de modifier la configuration du tableau de bord à l'aide des autres commandes de l'écran des paramètres. Vous serez également ajouté pour ajouter et modifier les panneaux graphiques affichés sur le tableau de bord.

Grafana Agent MySQL Server Authentication

< p>Un défi que vous pourriez rencontrer concerne le compte utilisateur MySQL que Grafana Agent utilise pour accéder à votre base de données. L'agent est configuré pour utiliser root par défaut. Cela ne fonctionnera pas si la connexion racine MySQL est désactivée sur votre serveur ou si vous avez bloqué les connexions racine à des bases de données spécifiques.

Vous pouvez améliorer la sécurité et reprendre le contrôle en créant un utilisateur MySQL dédié pour Grafana. Exécutez les commandes suivantes dans un shell MySQL pour ajouter un utilisateur et un mot de passe, puis accordez-lui les privilèges d'accès à vos données :

> CRÉER UN UTILISATEUR 'grafana'@'localhost' IDENTIFIÉ PAR '<votre-mot de passe>' ; > ACCORDER TOUS LES PRIVILÈGES SUR *.* À 'grafana'@'localhost' ; > PRIVILÈGES FLUSH ;

L'octroi de privilèges sur *.* permet à l'utilisateur d'accéder à n'importe quelle table de votre serveur, sur tous les schémas. Vous pouvez modifier l'instruction GRANT pour restreindre les privilèges de Grafana ou limiter les interactions à des schémas et des tables spécifiques. Cependant, l'intégration fonctionne mieux avec des privilèges élevés qui incluent les tables système MySQL. Cela permet de collecter la sélection la plus complète de métriques.

Une fois que vous avez créé votre utilisateur, modifiez votre fichier de configuration Grafana Agent pour vous authentifier avec ses informations d'identification. Vous le trouverez dans /etc/grafana-agent.yaml. Recherchez la section suivante :

intégrations : mysqld_exporter : data_source_name : root@(localhost:3306)/

Le champ data_source_name définit l'adresse du serveur MySQL et les informations d'identification de l'utilisateur. Modifiez-le pour référencer votre nouveau compte.

data_source_name : grafana:<your-password>@(localhost:3306)/

Redémarrez le service Grafana Agent pour appliquer la modification.

$ sudo service grafana-agent restart

Résumé

L'intégration MySQL intégrée de Grafana offre un moyen pratique de surveiller les performances de votre serveur de base de données. Les présentations de tableau de bord incluses regroupent vos journaux d'erreurs et représentent graphiquement toutes les mesures couramment mesurées, vous tenant au courant de l'utilisation des ressources et de l'activité des requêtes.

La surveillance régulière de ces données peut vous aider à repérer les tendances émergentes en matière de performances et à résoudre les anomalies avant qu'elles ne deviennent un problème. La journalisation et la récupération manuelles de ces métriques seraient une corvée alors que les tableaux de bord Grafana vous donnent tout sur un seul écran, facilitant une analyse efficace.

LIRE LA SUITE

  • &rsaquo ; Android 13 est sorti : nouveautés et date de disponibilité
  • &rsaquo ; 10 fonctionnalités cachées d'Android 13 que vous auriez pu manquer
  • &rsaquo ; Comment ajouter des visualisations Winamp à Spotify, YouTube, etc.
  • &rsaquo ; Il est normal de lésiner sur ces 10 produits technologiques
  • &rsaquo ; 6 choses qui ralentissent votre Wi-Fi (et que faire à leur sujet)
  • &rsaquo ; Test de JBL Live Free 2 : excellente suppression du bruit, son correct