Bonjour, communauté dev.to ! ?
Dans cet article, je vais vous expliquer les étapes que j'ai suivies pour configurer l'exportateur MariaDB/MySQL sur les nœuds du cluster Galera pour la surveillance avec Prometheus. Dans mon cas, j'exécute un MariaDB Galera Cluster sur mon fournisseur de serveur cloud avec trois nœuds et j'utilise Prometheus Grafana pour surveiller ma configuration. Les outils de configuration et de surveillance du cluster Galera ont été incroyablement utiles, mais obtenir les bonnes métriques de MariaDB n'a pas été simple, j'ai donc décidé de documenter ma solution.
Pour surveiller les métriques MariaDB et Galera Cluster telles que le nombre de requêtes par seconde, les connexions, l'état de réplication, etc., vous devez utiliser un exportateur MySQL en combinaison avec Prometheus. Cet exportateur exposera des métriques spécifiques à la base de données, notamment les statistiques Galera et MariaDB.
Étapes pour configurer l'exportateur MariaDB/MySQL sur les nœuds du cluster Galera :
Remarque : Vous pouvez déjà utiliser les machines de Prometheus Grafana sur la place de marché de votre fournisseur de serveur cloud. Hetzner, Océan numérique
Sur chaque nœud Galera, nous devons installer l'exportateur MySQL, qui collecte les métriques et les expose pour Prometheus. Voici comment procéder :
wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.15.1/mysqld_exporter-0.15.1.linux-amd64.tar.gz
tar xvfz mysqld_exporter-0.15.1.linux-amd64.tar.gz
sudo cp mysqld_exporter-0.15.1.linux-amd64/mysqld_exporter /usr/local/bin/
sudo useradd -rs /bin/false mysqld_exporter
L'exportateur doit accéder aux métriques MariaDB. Créez un fichier .my.cnf dans le répertoire personnel de l'exportateur pour stocker les informations d'identification de connexion :
sudo mkdir /etc/.mysqld_exporter
sudo nano /etc/.mysqld_exporter/.my.cnf
Ajoutez ce qui suit au fichier :
[client] user=exporter password=yourpassword
Assurez-vous que l'utilisateur dispose des autorisations appropriées pour accéder aux métriques nécessaires :
pour y accéder, utilisez mysql -u root ou mariadb -u root
CRÉER UN UTILISATEUR 'exportateur'@'localhost' IDENTIFIÉ PAR 'votre mot de passe';
PROCESSUS D'OCTROI, CLIENT DE RÉPLICATION, SÉLECTIONNEZ SUR *.* TO 'exporter'@'localhost';
PRIVILÈGES FLUSH;
Pour garantir que l'exportateur MySQL démarre au démarrage, configurons-le en tant que service systemd :
sudo nano /etc/systemd/system/mysqld_exporter.service
Ajoutez le contenu suivant au fichier :
[Unit] Description=Prometheus MySQL Exporter Wants=network-online.target After=network-online.target [Service] User=mysqld_exporter Group=mysqld_exporter ExecStart=/usr/local/bin/mysqld_exporter \ --config.my-cnf=/etc/.mysqld_exporter/.my.cnf [Install] WantedBy=multi-user.target
Enregistrez le fichier et rechargez systemd :
sudo systemctl démon-reload
sudo systemctl start mysqld_exporter
sudo systemctl activer mysqld_exporter
Ensuite, mettez à jour votre configuration Prometheus pour récupérer les métriques des nœuds. Ajoutez ce qui suit à votre fichier prometheus.yml :
Avant cela, vous pouvez vérifier si MySQL Exporter est en cours d'exécution en visitant :
curl http://
pour accéder à ce fichier, par exemple prometheus.yml, utilisez :
sudo nano /opt/containers/prometheus-grafana/prometheus/prometheus.yml
Ajouter à l'intérieur de scrape_configs ::
- job_name: 'mariadb-galera' static_configs: - targets: ['node1-ip:9104', 'node2-ip:9104', 'node3-ip:9104']
rappelez-vous l'adresse IP de vos nœuds de base de données
Ensuite, rechargez Prometheus :
sudo systemctl recharger prometheus
Si vous utilisez Grafana, vous pouvez importer des tableaux de bord prédéfinis pour la surveillance MySQL/MariaDB. Un ID de tableau de bord populaire pour les métriques MySQL/MariaDB est 7362.
Pour importer :
Vous devriez maintenant voir les métriques détaillées de vos nœuds MariaDB Galera Cluster dans vos tableaux de bord Grafana !
Avec l'exportateur MariaDB configuré sur chaque nœud du cluster Galera, Prometheus peut désormais récupérer et surveiller les métriques clés de la base de données. Cette configuration fournit un meilleur aperçu de l'état et des performances de votre cluster, ce qui facilite le dépannage et l'optimisation selon les besoins.
N'hésitez pas à laisser des questions ou des commentaires ci-dessous si vous configurez quelque chose de similaire ou si vous avez des suggestions. Merci d'avoir lu !
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3