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 informations complètes sur l'état opérationnel de votre déploiement. Vous obtenez une visibilité sur l'état général du système, la consommation de ressources et les processus internes critiques.

Inventaire du tableau de bord

Le tableau suivant fournit un récapitulatif 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, souvenir, temps d'attente de verrouillage Concentrez-vous sur la consommation de ressources et l'état au niveau de la base de données (par exemple, CPU, la mémoire et le 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 des statistiques RPC détaillées pour la communication côté serveur et côté client.
Compactages Taux de réussite et d'échec de la compaction, décalage de la compaction Visualisez les performances de la maintenance des données en arrière-plan, en vous concentrant sur les taux de réussite et d'échec de la compression, ainsi que sur le délai de compression.
Scissions, fusions et transferts Nombre de fractionnements, de fusions et de déplacements ; taille du groupe Surveillez la distribution dynamique des données, y compris les opérations sur les répertoires (fractionnement, fusion et déplacement), la taille des groupes de données et les points chauds potentiels.
Tablettes Nombre de tablettes, répartition de la charge Fournissez des insights approfondis sur les statistiques, les opérations et la répartition de la charge des tablettes, et identifiez les points chauds potentiels.
TrueTime Dérive, incertitude, non-respect du SLA Surveillez l'état et la fiabilité du service Spanner Omni TrueTime, y compris la dérive, l'incertitude et les cas de non-respect du SLA.
Journal partagé Taux d'écriture, taux d'erreur de tri Surveillez les performances des journaux partagés, en particulier les taux d'écriture et les taux d'erreur de tri.

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

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

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

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

  • État des nœuds : suit le nombre total de serveurs et le nombre de serveurs non opérationnels 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 de l'espace de stockage : pourcentage de la capacité de stockage totale utilisée.

  • Stockage utilisé par vCPU : ratio du stockage total utilisé par rapport au nombre total de vCPU.

  • Serveurs : tableau détaillé affichant les métriques par serveur et par zone pour l'utilisation de CPU, l'utilisation de la mémoire, le temps d'activité, le nombre total de vCPU, la mémoire totale, l'espace de 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 du déploiement. Ce tableau de bord comprend les graphiques suivants :

  • Aperçu de l'utilisation du CPU : utilisation globale de CPU pour la base de données, 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 processeur 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 de 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 de 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 de 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 d'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ées 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. Le nombre réel d'octets physiques répliqués sur toutes les tablettes d'un groupe peut être supérieur ou inférieur 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 pour le 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. Les taux d'annulation peuvent être plus élevés en cas de conflits 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 : répartition 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 les déploiements fournit des informations supplémentaires sur la consommation des ressources de déploiement. Ce tableau de bord comprend les graphiques suivants :

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

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

  • Utilisation du processeur par processus : utilisation CPU pour chaque processus agrégé 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, qu'il 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, qu'il 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 des serveurs sélectionnés.

  • Taille de la mémoire virtuelle du processus : taille de la mémoire virtuelle pour chaque processus des 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. Ce souvenir est spécifique au processus span_server.

  • Nombre d'octets envoyés sur le réseau : octets envoyés par interface, agrégés sur tous les serveurs.

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

  • Top 10 des serveurs par octets réseau envoyés : vue Tableau des 10 principaux serveurs par octets réseau envoyés.

  • 10 premiers serveurs par octets reçus sur le réseau : les 10 premiers serveurs par octets reçus sur le réseau (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 qui sont 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 d'opérations sur les fichiers, regroupées par opération.

    • Opérations locales et à distance par seconde : suit le taux d'opérations sur les fichiers, en distinguant l'accès local de l'accès à distance.

    • 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 : incluent des graphiques de latence P50, P90 et P99 pour les 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 débit en lecture et en écriture, en distinguant l'accès local et l'accès distant.

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

  • Statistiques du système de fichiers :

    • Taille totale du système de fichiers par zone : affiche la taille totale du système de fichiers provisionné, 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 des 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 : surveillent les performances de 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 et 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 et 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 : surveillent les performances de RPC du point de vue du client.

    • Latence aller-retour du client par méthode (P50, P90, P99) : latence aller-retour RPC 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 de codes d'état canoniques du client par méthode : taux d'occurrence du code d'état canonique par méthode en tant que client gRPC pour les serveurs sélectionnés.

    • RPC client terminés par méthode : taux de RPCs client terminés 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 :

  • Compactions réussies et en échec (dernière heure) : suit le nombre de compactages réussis et en échec 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écalage de compaction majeur : une carte de densité montre la distribution du décalage de compaction majeur agrégé sur tous les serveurs.

  • Latence de compaction majeure (moyenne) par serveur : indique la latence de compaction majeure moyenne par serveur.

  • Latence de compaction majeure (estimations des centiles) par serveur : fournit des estimations des centiles (P50, P90, P99) de la latence de compaction majeure par serveur.

Scinder, fusionner et déplacer des tableaux de bord

Le tableau de bord "Fractionnements, fusions et déplacements" suit la distribution dynamique des données dans le cluster, y compris les opérations sur les répertoires et la taille des groupes. Ce tableau de bord inclut les graphiques suivants :

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

  • Distribution de la taille des groupes : 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és par zone Spanner Omni.

  • Nombre de transferts de données internes réussis : nombre de transferts, de fractionnements et de fusions de répertoires et de groupes sur une période d'une heure, regroupés par initiateur, action et type de transfert.

  • Nombre d'échecs de transfert de données internes : nombre d'erreurs lors des tentatives de transfert, de fractionnement et de fusion de répertoires et de groupes au cours d'une période d'une heure.

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

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

Tableau de bord des tablettes

Le tableau de bord des tablets fournit des informations détaillées sur les statistiques, les opérations et les points chauds potentiels des tablets. 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 tablettes principales par zone : nombre de tablettes principales, regroupées par zone Spanner Omni.

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

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

  • Chargements de tablettes par zone : taux de chargement de tablettes regroupés par zone.

  • Déchargements de tablettes par zone et par motif : taux de déchargement de tablettes par zone, classé par motif de déchargement.

  • Charge maximale des tablettes pour chaque serveur : un tableau affiche la charge de calcul maximale d'une tablette sur chaque serveur.

  • Nombre de tablets suractifs : nombre total de tablets suractifs (tablets 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 exacte de MAX.

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 inclut 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 SLA de l'horloge : indique le nombre de cas de non-respect du contrat de niveau de service (SLA) 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.

  • Ppm de direction TrueTime souhaité et réel : compare les valeurs de direction souhaitées et réelles (ppm).

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

Tableau de bord des journaux partagés

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

  • Taux d'écriture de journaux partagés : nombre d'entrée de journal partagés par seconde, agrégé et ventilé par base de données.

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

  • Taux d'écriture des lots de journaux partagés : nombre de lots de journaux partagés écrits par seconde, agrégés sur les serveurs sélectionnés.

  • Distribution de la latence d'écriture par lot des journaux partagés : distribution de la latence P50, P90 et P99 pour les écritures par lot des journaux partagés.

  • Distribution du nombre d'entrées par lot de journaux partagés : distribution P50, P90 et P99 du nombre d'entrées dans les lots de journaux partagés.

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

  • Taux d'erreur 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 engagés dans la récupération de tablettes.

Étapes suivantes