MariaDB
 sql >> Base de données >  >> RDS >> MariaDB

ClusterControl :introduction au nouveau moniteur de requêtes

ClusterControl 1.9.0 est sorti le 16 juillet 2021 avec de nombreuses nouvelles fonctionnalités introduites dans le système. Ces fonctionnalités incluent Redis Management and Monitoring, un nouveau système de surveillance des requêtes basé sur un agent pour MySQL et PostgreSQL, des améliorations de pgBackRest ainsi que d'autres améliorations répertoriées ici. Nous sommes ravis car il s'agit de notre deuxième version majeure pour 2021 après ClusterControl 1.8.2.

Si vous êtes nouveau sur ClusterControl, Query Monitor est l'une de nos fonctionnalités utiles où vous pouvez obtenir des informations sur la charge de travail de votre base de données. Query Monitor fournit un résumé du traitement des requêtes sur tous les nœuds du cluster, ce qui devient indispensable lorsque vous remarquez ou rencontrez une dégradation des performances. Toutes les fonctionnalités de surveillance des requêtes ne sont pas identiques pour chaque type de base de données. Par exemple, le moniteur de requêtes pour MySQL est différent du moniteur de requêtes pour PostgreSQL.

Avoir des performances de premier ordre n'est pas une excuse, surtout lorsque vous exécutez des applications critiques, en plus de fournir la meilleure expérience utilisateur.

Dans cet article de blog, nous discuterons de ce que le nouveau Query Monitor a offert et passerons en revue certaines des étapes sur la façon de l'activer pour les systèmes basés sur MySQL et PostgreSQL. Sans plus tarder, commençons !

Notre nouveau moniteur de requête MySQL

Si vous avez déjà mis à jour cette nouvelle version, vous remarquerez probablement certains des changements sur l'interface. Le nouveau moniteur de requête aura un onglet supplémentaire appelé Présentation. La vue d'ensemble des requêtes est un endroit où vous pouvez obtenir une vue d'ensemble générale de toutes les requêtes pour votre cluster de base de données. Pour les instances de base de données basées sur MySQL, vous devez activer le paramètre "performance_schema" pour toutes vos instances MySQL avant que l'agent de requête puisse être installé. Vous verrez la capture d'écran suivante si vous cliquez sur l'onglet Présentation de la requête :

Si vous n'avez pas activé le "performance_schema", vous ne pourrez pas utiliser ce tableau de bord. Vous pouvez activer le paramètre via Cluster -> Gérer -> Configurations et modifier le fichier /etc/my.cnf pour tous les hôtes. Assurez-vous de mettre à jour la valeur comme suit :

performance_schema =ON

Une fois cela fait, vous devez effectuer un redémarrage progressif du cluster à partir de la liste d'actions du cluster afin que la modification prenne effet. Sans un redémarrage progressif, l'agent de requête ne peut pas être installé.

Bien sûr, vous pouvez également le faire manuellement à partir de vos nœuds de base de données, il dépend de votre préférence. Si vous choisissez la méthode manuelle, vous pouvez vous connecter en SSH à votre instance de base de données et modifier /etc/my.cnf.

 Vous devriez maintenant remarquer la capture d'écran suivante une fois le redémarrage progressif terminé et tout ce que vous devez faire est de cliquer sur l'agent Install Query Monitor :

Cela ne devrait prendre qu'un certain temps avant que vous puissiez voir le nouveau tableau de bord Aperçu des requêtes comme la capture d'écran suivante :

Dans notre nouveau tableau de bord Vue d'ensemble des requêtes, il existe quelques variables que vous pouvez surveiller et obtenir les mesures à partir de. Ici, vous pouvez voir le débit, la simultanéité, la latence moyenne, l'erreur ainsi que la liste des requêtes en bas. L'explication pour chacun d'eux est la suivante :

  • Débit - Requête par seconde (q/s) 

    • La capacité globale à traiter les données mesurée en requêtes par seconde, en transactions par seconde ou en temps de réponse moyen .

  • Concurrence - Temps de verrouillage

    • Le nombre de requêtes simultanées, en particulier la requête INSERT. Il est mesuré en secondes.

  • Latence moyenne - Temps de requête moyen(s)

    • La distribution de la latence des instructions exécutées dans cette instance MySQL.

  • Erreurs - Erreurs (sec)

    • Le nombre d'erreurs de requête par seconde pour le cluster.

Vous pouvez sélectionner l'instance de base de données dont vous souhaitez voir les métriques ainsi que le délai de 15 minutes à 4 heures pour chacune d'entre elles. Avec cette option, vous pouvez facilement identifier ce qui se passe dans ce cas particulier.

Au bas du tableau de bord, vous pouvez remarquer qu'il existe une liste de requêtes en cours d'exécution pour votre cluster. Ici, vous pouvez voir les informations sur le résumé de la requête, le schéma, le nombre, les lignes et également le temps d'exécution.

Contrairement à l'ancienne version (1.8.2), il s'agit d'un tout nouveau tableau de bord et il sera très utile lorsque vous souhaitez avoir une vue d'ensemble du cluster. Avec les métriques ici, vous pourrez prendre les mesures nécessaires si vous remarquez que les performances de votre cluster ne sont pas optimales.

Nouveau moniteur de requêtes pour PostgreSQL

Le même processus doit être effectué pour PostgreSQL :une fois que vous avez mis à niveau le ClusterControl vers la version 1.9.0, vous devrez installer l'agent de surveillance des requêtes avant de pouvoir obtenir les métriques pour l'aperçu des requêtes. Vous verrez une sortie similaire à celle ci-dessous :

Cependant, pour PostgreSQL, vous n'avez pas besoin d'activer de paramètre comme vous besoin pour les bases de données basées sur MySQL, vous pouvez immédiatement installer l'agent à partir du tableau de bord. L'installation devrait prendre un certain temps avant que vous puissiez voir le tableau de bord Aperçu de la requête comme ci-dessous.

Comme vous avez pu le voir, le tableau de bord est un peu différent de MySQL tableau de bord où il n'y a que 2 métriques qui sont le débit et la latence moyenne. Comme le tableau de bord de présentation des requêtes basé sur MySQL, vous pouvez également sélectionner l'instance de base de données dont vous souhaitez voir les métriques ainsi que la plage de temps.

Vous pouvez également voir la liste des requêtes ci-dessous des métriques comme indiqué dans la capture d'écran ci-dessus. Dans la liste des requêtes, vous pouvez voir le résumé, le schéma, le nombre, les lignes et le temps d'exécution de chaque requête.

Réflexions finales

Nous pensons que le nouveau moniteur de requêtes est très utile lorsque vous souhaitez voir ce qui se passe avec vos requêtes dans une instance de base de données. Imaginez que vous ayez quelques nœuds :vous pouvez facilement changer d'instance de base de données depuis l'aperçu de la requête pour voir les métriques. Avec cette option, vous êtes en mesure de savoir précisément ce qui se passe sur chacune de vos instances de base de données.

Pour les instances basées sur MySQL, n'oubliez pas d'activer/d'activer "performance_schema" pour chacune des instances de base de données avant d'installer l'agent de requête et de consulter la présentation.

Que pensez-vous de notre nouveau moniteur de requête ? Vous l'aimez et le trouvez utile ? Faites-le nous savoir dans la section des commentaires ci-dessous.