Utiliser des tableaux de bord Grafana pour surveiller Spanner Omni

Surveillez l'état et les performances de vos déploiements Spanner Omni à l'aide des tableaux de bord Grafana. Ces tableaux de bord visualisent les métriques Spanner Omni ingérées dans Prometheus, ce qui vous permet d'obtenir des insights complets sur l'état opérationnel de votre déploiement. Vous bénéficiez d'une visibilité sur l'état général du système, la consommation des ressources et les processus internes critiques.

Inventaire des tableaux de bord

Le tableau suivant fournit un résumé général des tableaux de bord disponibles :

Tableau de bord Métriques clés Objectif principal
Présentation QPS, latence, débit Surveillez les performances de déploiement de haut niveau, y compris les requêtes par seconde (QPS), la latence des requêtes et le débit de données.
Insights sur le système CPU, mémoire, temps d'attente de verrouillage Concentrez-vous sur la consommation des ressources et l'état au niveau de la base de données (par exemple, CPU, mémoire et temps d'attente de verrouillage) pour les bases de données sélectionnées.
Insights sur le déploiement CPU, mémoire et utilisation du réseau Fournissez des insights détaillés sur la consommation globale des ressources de déploiement et les statistiques réseau.
Système de fichiers Spanner Omni Opérations sur les fichiers, latence et débit Surveillez les opérations, les performances, la latence et le débit du système de fichiers sous-jacent.
gRPC Nombre, état et latence des RPC Suivez les statistiques RPC détaillées pour la communication côté serveur et côté client communication.
Compactages Taux de réussite et d'échec du compactage, délai de compactage Visualisez les performances de la maintenance des données en arrière-plan, en vous concentrant sur le taux de réussite et d'échec du compactage, ainsi que sur le délai de compactage.
Scissions, fusions et déplacements Nombre de scissions, de fusions et de déplacements ; taille du groupe Surveillez la distribution dynamique des données, y compris les opérations de répertoire (scissions, fusions et déplacements), le dimensionnement des groupes de données et les points chauds potentiels.
Tablettes Nombre de tablettes, distribution de la charge Fournissez des insights approfondis sur les statistiques, les opérations et la distribution de la charge des tablettes et identifiez les points chauds potentiels.
TrueTime Dérive, incertitude, non-respect du contrat de niveau de service Surveillez l'état et la fiabilité du service Spanner Omni TrueTime , y compris la dérive, l'incertitude et les violations du contrat de niveau de service.
Journal partagé Taux d'écriture, taux d'erreurs de tri Surveillez les performances du journal partagé, en particulier les taux d'écriture et les taux d'erreurs de tri.

Voici quelques-uns des graphiques disponibles dans les tableaux de bord :

  • Capacité de calcul (vCPU) : nombre total de vCPUs provisionnées dans le déploiement.

  • Capacité de mémoire : mémoire physique totale provisionnée dans le déploiement.

  • Capacité de stockage : capacité totale et disponible du stockage du système de fichiers.

  • État des nœuds : nombre total de serveurs et de serveurs défectueux dans le déploiement.

  • Utilisation du calcul : pourcentage de la capacité totale de vCPU utilisée.

  • Utilisation de la mémoire : utilisation totale de la mémoire dans le déploiement. Attendez-vous à une utilisation élevée, car Spanner Omni utilise la mémoire inactive à des fins de mise en cache.

  • Utilisation du stockage : pourcentage de la capacité totale de stockage utilisée.

  • Stockage utilisé par vCPU : rapport entre le stockage total utilisé et le nombre total de vCPU.

  • Serveurs : tableau détaillé affichant les métriques par serveur et par zone pour l'utilisation du CPU, l'utilisation de la mémoire, le temps d'activité, le nombre total de vCPU, la mémoire totale, le stockage utilisé et la capacité de stockage.

Tableau de bord des insights système

Le tableau de bord des insights système se concentre sur l'état et les performances des bases de données dans le déploiement. Ce tableau de bord comprend les graphiques suivants :

  • Présentation de l'utilisation du CPU : utilisation globale de la base de données CPU agrégée sur les serveurs sélectionnés.

  • Utilisation du CPU par utilisateur et système : utilisation de CPU dans la base de données sélectionnée , regroupée par tâches utilisateur et système, et par priorité.

  • Utilisation du CPU par type d'opération : utilisation de CPU regroupée par type d'opération pour la base de données sélectionnée, agrégée sur les serveurs sélectionnés.

  • Utilisation du CPU par type d'opération – Priorité élevée : utilisation du CPU regroupée par type d'opération et filtrée par priorité élevée pour la base de données sélectionnée , agrégée sur les serveurs sélectionnés.

  • Utilisation du CPU par type d'opération – Priorité moyenne : utilisation du CPU regroupée par type d'opération et filtrée par priorité moyenne pour la base de données sélectionnée, agrégée sur les serveurs sélectionnés.

  • Utilisation du CPU par type d'opération – Priorité faible : utilisation du CPU regroupée par type d'opération et filtrée par priorité faible pour la base de données sélectionnée , agrégée sur les serveurs sélectionnés.

  • Latence des requêtes (P50, P90, P99) : latence dans une base de données sélectionnée, regroupée par méthodes de lecture et d'écriture sur les serveurs sélectionnés.

  • Latence des requêtes par méthode (P50, P90, P99) : latence dans une base de données sélectionnée, regroupée par méthodes API sur les serveurs sélectionnés.

  • Latence des transactions (P50, P90, P99) : latence des requêtes dans une base de données sélectionnée, regroupée par type de transaction et par implication du leader sur les serveurs sélectionnés.

  • Débit : débit en lecture et en écriture dans une base de données sélectionnée sur les serveurs sélectionnés.

  • Débit par méthode : débit dans une base de données sélectionnée, regroupé par méthode sur les serveurs sélectionnés.

  • Opérations par seconde : opérations par seconde dans une base de données sélectionnée regroupées par méthodes de lecture et d'écriture sur les serveurs sélectionnés.

  • Opérations par seconde par méthode : opérations par seconde dans une base de données sélectionnée , regroupées par méthodes sur les serveurs sélectionnés.

  • Utilisation du stockage par base de données : octets physiques non répliqués utilisés par chaque base de données. La tablette principale de chaque groupe fournit cette métrique. Les octets physiques répliqués réels sur toutes les tablettes d'un groupe peuvent être supérieurs ou inférieurs en fonction de l'état des compactages sur chaque tablette, mais cette métrique donne une idée approximative de la quantité de stockage physique non répliqué utilisée par chaque base de données.

  • Temps d'attente de verrouillage : temps d'attente total pour les conflits de verrouillage pour la base de données sélectionnée dans un intervalle de cinq minutes.

  • Taux de transactions abandonnées : taux de transactions abandonnées ou annulées transactions. Les taux d'annulation peuvent être plus élevés lorsque des conflits se produisent entre les transactions.

  • Nombre d'objets de schéma : nombre d'objets de schéma pour la base de données sélectionnée.

  • Participants à la transaction : distribution du nombre de participants à la transaction dans chaque tentative de commit pour la base de données.

Tableau de bord des insights sur le déploiement

Le tableau de bord des insights sur le déploiement fournit des insights supplémentaires sur la consommation des ressources de déploiement. Ce tableau de bord comprend les graphiques suivants :

  • Utilisation du CPU : utilisation agrégée CPU pour les serveurs sélectionnés.

  • Utilisation du CPU du serveur : CPU utilisation pour chaque serveur sélectionné.

  • Utilisation du CPU du processus : CPU utilisation pour chaque processus agrégée sur les serveurs sélectionnés.

  • Utilisation de la mémoire : utilisation agrégée de la mémoire pour les serveurs sélectionnés. Attendez-vous à des valeurs élevées, car Spanner Omni met en cache les données en mémoire, que Spanner Omni peut libérer si nécessaire.

  • Utilisation de la mémoire du serveur : utilisation de la mémoire pour chacun des serveurs sélectionnés. Attendez-vous à des valeurs élevées, car Spanner Omni met en cache les données en mémoire, que Spanner Omni peut libérer si nécessaire.

  • Taille de la mémoire résidente du processus : taille de la mémoire résidente pour chaque processus pour les serveurs sélectionnés.

  • Taille de la mémoire virtuelle du processus : taille de la mémoire virtuelle pour chaque processus pour les serveurs sélectionnés.

  • Répartition de la mémoire du serveur : utilisation de la mémoire par catégorie (cache, fragmentée, memtable_pinned, système, mises à jour, autre) agrégée sur les serveurs sélectionnés. Cette mémoire est spécifique au processus span_server.

  • Octets envoyés par le réseau : octets envoyés par interface agrégés sur tous les serveurs.

  • Octets reçus par le réseau : octets reçus par interface agrégés sur tous les serveurs.

  • 10 principaux serveurs par octets envoyés par le réseau : 10 principaux serveurs par octets envoyés par le réseau (vue Tableau).

  • 10 principaux serveurs par octets reçus par le réseau : 10 principaux serveurs par le réseau octets reçus (vue Tableau).

Tableau de bord du système de fichiers Spanner Omni

Le tableau de bord du système de fichiers Spanner Omni surveille les opérations du système de fichiers sous-jacent essentielles aux performances, y compris les taux d'opération, la latence et le débit. Ce tableau de bord comprend les graphiques suivants :

  • Graphiques des opérations sur les fichiers :

    • Opérations par seconde : suit le taux total des opérations sur les fichiers, regroupées par opération.

    • Opérations locales et distantes par seconde : suit le taux des opérations sur les fichiers, séparées par accès local et distant.

    • Erreurs d'opération par seconde : affiche le taux d'échec des opérations du système de fichiers, regroupées par opération et par état.

  • Graphiques de latence : inclut des graphiques pour la latence P50, P90 et P99 des opérations sur les fichiers locaux et distants, regroupées par opération.

  • Graphiques de débit :

    • Débit en lecture et en écriture local et distant : suit le taux de débit en lecture et en écriture, séparé par accès local et distant.

    • Octets par opération : inclut les octets P50 et P90 transférés par opération pour l'accès local et distant.

  • Statistiques du système de fichiers :

    • Taille totale du système de fichiers par zone : affiche la taille totale provisionnée du système de fichiers, regroupée par zone Spanner Omni.

    • Utilisation du système de fichiers par zone : affiche la taille actuelle du système de fichiers utilisé, regroupée par zone Spanner Omni.

Tableau de bord gRPC

Le tableau de bord gRPC suit les statistiques RPC détaillées pour tous les serveurs du déploiement. Ce tableau de bord comprend les graphiques suivants :

  • Métriques côté serveur : surveille les performances RPC du point de vue du serveur.

    • Latence RPC par méthode (P50, P90, P99) : latence par méthode RPC côté serveur.

    • Débit envoyé par le serveur par méthode : octets envoyés par seconde et par méthode pour les serveurs sélectionnés.

    • Débit envoyé par le serveur par processus : octets envoyés par seconde et par processus pour les serveurs sélectionnés.

    • Débit reçu par le serveur par méthode : octets reçus par seconde et par méthode pour les serveurs sélectionnés.

    • Débit reçu par le serveur par processus : octets reçus par seconde et par processus pour les serveurs sélectionnés.

    • Nombre d'états canoniques du serveur par méthode : taux d'occurrence du code d'état canonique par méthode pour les serveurs sélectionnés.

    • RPC terminés par le serveur par méthode : taux de RPCs terminés par méthode pour les serveurs sélectionnés.

    • Canaux actifs du serveur : nombre total de canaux gRPC côté serveur créés depuis le démarrage de l'application et qui restent actifs.

  • Métriques côté client : surveille les performances RPC du point de vue du client.

    • Latence aller-retour du client par méthode (P50, P90, P99) : latence RPC aller-retour par méthode, qui inclut la latence du serveur, le réseau et le temps d'attente dans la file d'attente.

    • Débit envoyé par le client par méthode : octets envoyés par seconde et par méthode pour les serveurs sélectionnés.

    • Débit envoyé par le client par processus : octets envoyés par seconde et par processus pour les serveurs sélectionnés.

    • Débit reçu par le client par méthode : octets reçus par seconde et par méthode pour les serveurs sélectionnés.

    • Débit reçu par le client par processus : octets reçus par seconde et par processus pour les serveurs sélectionnés.

    • Nombre d'états canoniques du client par méthode : taux d'occurrence du code d'état canonique par méthode en tant que gRPC client pour les serveurs sélectionnés.

    • RPC terminés par le client par méthode : taux de RPCs terminés par le client par méthode pour les serveurs sélectionnés.

Tableau de bord des compactages

Le tableau de bord des compactages affiche une visualisation des performances des tâches de compactage en arrière-plan. Ce tableau de bord comprend les graphiques suivants :

  • Compactages réussis et échoués (dernière heure) : suit le nombre de compactages réussis et échoués, regroupés par type de compactage et par serveur.

  • Taux d'octets de sortie des compactages : suit le taux d'octets de sortie des compactages sur un intervalle de deux minutes, regroupés par type de compactage et par serveur.

  • Distribution de la taille d'entrée des compactages : une carte de densité affiche la distribution des tailles d'entrée des compactages.

  • Taille d'entrée des compactages (moyenne) : affiche la taille d'entrée moyenne des compactages, regroupée par type de compactage et par serveur.

  • Taille d'entrée des compactages (estimations des centiles) : fournit des estimations des centiles (P50, P95, P99) de la taille d'entrée des compactages, regroupées par type de compactage et par serveur.

  • Distribution du délai de compactage majeur : une carte de densité affiche la distribution du délai de compactage majeur agrégé sur tous les serveurs.

  • Délai de compactage majeur (moyenne) par serveur : affiche la moyenne du délai de compactage majeur par serveur.

  • Délai de compactage majeur (estimations des centiles) par serveur : fournit des estimations des centiles (P50, P90, P99) du délai de compactage majeur par serveur.

Tableau de bord des scissions, des fusions et des déplacements

Le tableau de bord des scissions, des fusions et des déplacements suit la distribution dynamique des données dans le cluster, y compris les opérations de répertoire et le dimensionnement des groupes. Ce tableau de bord comprend les graphiques suivants :

  • Distribution de la taille de la scission : taille de la scission du répertoire, y compris P50, P90, P99 et P100 centiles, agrégée sur les serveurs sélectionnés.

  • Distribution de la taille du groupe : tous les octets alloués au groupe (persistants et en mémoire), avec les centiles P50, P90, P99 et P100, agrégés sur les serveurs sélectionnés.

  • Distribution de la taille du groupe en mémoire : tous les octets alloués aux structures de données en mémoire du groupe , avec les centiles P50, P90, P99 et P100, agrégés sur les serveurs sélectionnés.

  • Taille du groupe par zone : tailles P50, P90, P99 et P100 pour tous les octets alloués (persistants et en mémoire) pour le groupe, regroupées par zone Spanner Omni.

  • Nombre de déplacements de données internes réussis : nombre de déplacements, de scissions et de fusions de répertoires et de groupes sur une période d’une heure, regroupés par initiateur, action et type de déplacement.

  • Nombre de déplacements de données internes échoués : nombre d'erreurs lors des tentatives de déplacement, de scission et de fusion de répertoires et de groupes sur une période d'une heure.

  • Erreurs non fractionnables par motif et par type : taux d'erreurs non fractionnables où les scissions surchargées sont ignorées, car la plage n'était pas fractionnable.

  • Score maximal d'utilisation du CPU pour la scission : charge maximale d'utilisation du CPU sur toutes les scissions de chaque base de données.

Tableau de bord des tablettes

Le tableau de bord des tablettes fournit des insights approfondis sur les statistiques, les opérations et les points chauds potentiels des tablettes. Ce tableau de bord comprend les graphiques suivants :

  • Nombre total de tablettes : nombre total de tablettes Paxos dans le déploiement.

  • Nombre de tablettes par zone : nombre de tablettes, regroupées par zone Spanner Omni.

  • Nombre de tablettes par serveur : nombre de tablettes sur les serveurs sélectionnés.

  • Nombre de leaders par zone : nombre de tablettes leaders, regroupées par zone Spanner Omni.

  • Nombre de leaders par serveur : nombre de tablettes leaders sur les serveurs sélectionnés.

  • Tablettes non attribuées par zone : nombre de tablettes non attribuées par zone.

  • Charges des tablettes par zone : taux de charges des tablettes regroupées par zone.

  • Décharges des tablettes par zone et par motif : taux de décharges des tablettes par zone, classées par motif de décharge.

  • Charge maximale des tablettes pour chaque serveur : une vue Tableau affiche la charge de calcul maximale pour une tablette sur chaque serveur.

  • Nombre de tablettes chaudes : nombre total de tablettes chaudes (tablettes dépassant un seuil de charge de calcul).

  • Distribution de la charge des tablettes : distribution de la charge de calcul par tablette, affichant les estimations des centiles P50 et P90, ainsi que la valeur MAX exacte.

Tableau de bord TrueTime

Le tableau de bord TrueTime offre une visibilité sur l'état et la fiabilité du service Spanner Omni TrueTime. Ce tableau de bord comprend les graphiques suivants :

  • Disponibilité de TrueTime : surveille la disponibilité globale du service TrueTime.

  • Dérive TrueTime P99 : suit le 99e centile de la dérive TrueTime.

  • Incertitude TrueTime P99 : suit le 99e centile de l'incertitude TrueTime.

  • Non-respect du contrat de niveau de service de l'horloge : affiche le nombre de violations du contrat de niveau de service de l'horloge .

  • Nombre de migrations de VM : suit le nombre de migrations de machines virtuelles.

  • Dérive TrueTime sur le leader : surveille la dérive TrueTime spécifiquement sur les nœuds leaders.

  • Direction souhaitée et réelle de TrueTime en ppm : compare les valeurs de direction souhaitées et réelles en parties par million (ppm).

  • Erreur de direction de TrueTime : suit l'erreur dans le mécanisme de direction de TrueTime.

Tableau de bord du journal partagé

Le tableau de bord du journal partagé est un tableau de bord dédié à la surveillance des performances et de l'état de récupération du journal partagé. Ce tableau de bord comprend les graphiques suivants :

  • Taux d'écriture du journal partagé : nombre d'entrée de journal partagé par seconde, agrégé et réparti par base de données.

  • Octets écrits dans le journal partagé : octets écrits dans le journal partagé par seconde (débit), agrégés et répartis par base de données.

  • Taux d'écriture des lots du journal partagé : lots du journal partagé écrits par seconde agrégés sur les serveurs sélectionnés.

  • Distribution de la latence d'écriture des lots du journal partagé : distribution de la latence P50, P90 et P99 pour les écritures des lots du journal partagé.

  • Distribution du nombre d'entrées des lots du journal partagé : distribution P50, P90 et P99 du nombre d'entrées dans les lots du journal partagé.

  • Taux de requêtes LogSort : taux de requêtes LogSort agrégées sur les serveurs sélectionnés.

  • Taux d'erreurs de tri LogSort : taux d'erreurs de tri LogSort agrégées sur les serveurs sélectionnés.

  • Lecteurs de journaux partagés en cours : nombre total de lecteurs de journaux partagés impliqués dans la récupération des tablettes.

Étape suivante