Tous les produits
Search
Centre de documentation

Container Service for Kubernetes:etcd metrics, dashboard, and anomaly analysis

Dernière mise à jour :Aug 11, 2026

Utilisez les métriques etcd et les panneaux du tableau de bord pour détecter et diagnostiquer les problèmes du plan de contrôle dans les clusters ACK.

Avant de commencer

Accès

Consultez la rubrique Afficher les tableaux de bord de surveillance des composants du plan de contrôle.

Liste des métriques

Le tableau suivant répertorie les métriques du composant etcd.

Metric

Type

Description

cpu_utilization_core

Gauge

Utilisation du CPU, en cœurs.

etcd_server_has_leader

Gauge

Dans l'algorithme de consensus Raft, un membre etcd est élu leader. Le leader envoie des signaux heartbeat périodiques pour maintenir la stabilité du cluster.

Indique si un leader existe parmi les membres etcd.

  • 1 : Un leader existe.

  • 0 : Aucun leader n'existe.

etcd_server_is_leader

Gauge

Indique si ce membre etcd est le leader.

  • 1 : Oui.

  • 0 : Non.

etcd_server_leader_changes_seen_total

Counter

Nombre total de changements de leader observés par ce membre etcd.

etcd_mvcc_db_total_size_in_bytes

Gauge

Taille totale de la base de données du membre etcd.

etcd_mvcc_db_total_size_in_use_in_bytes

Gauge

Taille utilisée de la base de données du membre etcd.

etcd_disk_backend_commit_duration_seconds_bucket

Histogram

Temps nécessaire pour écrire une modification de données dans le stockage backend et la valider (committed).

Les limites des buckets sont [0.001, 0.002, 0.004, 0.008, 0.016, 0.032, 0.064, 0.128, 0.256, 0.512, 1.024, 2.048, 4.096, 8.192].

etcd_debugging_mvcc_keys_total

Gauge

Nombre total de clés stockées dans etcd.

etcd_server_proposals_committed_total

Gauge

Dans Raft, les changements d'état sont soumis sous forme de propositions (proposals).

Nombre total de propositions validées (committed) dans le journal Raft.

etcd_server_proposals_applied_total

Gauge

Nombre total de propositions appliquées.

etcd_server_proposals_pending

Gauge

Nombre de propositions en attente.

etcd_server_proposals_failed_total

Counter

Nombre de propositions ayant échoué.

memory_utilization_byte

Gauge

Utilisation de la mémoire, en octets.

resource_utilization_level

Gauge

Niveau d'utilisation des ressources.

  • resource : Type de ressource. Valeurs valides : cpu et memory.

  • utilization_level : Niveau d'utilisation. Valeurs valides : high (utilisation ≥ 80 %) et normal (utilisation < 80 %).

  • container : Conteneur cible. Valeurs valides : kube-apiserver, kube-scheduler, kube-controller-manager, cloud-controller-manager et etcd.

Remarque

Les métriques d'utilisation des ressources suivantes ne sont plus utilisées. Supprimez toutes les alertes ou règles de surveillance qui dépendent de ces métriques :

  • cpu_utilization_ratio : Utilisation du CPU.

  • memory_utilization_ratio : Utilisation de la mémoire.

Guide du tableau de bord

Le tableau de bord utilise des requêtes PromQL pour visualiser les métriques etcd.

Aperçu du tableau de bord

image

Descriptions des panneaux

Parameter

PromQL

Description

État de disponibilité (liveness) d'etcd

  • etcd_server_has_leader

  • etcd_server_is_leader == 1

  • Indique si les membres etcd sont actifs. Une valeur de 3 est normale.

  • Indique quel membre est le leader. Un cluster sain doit disposer d'un seul leader.

Changements de leader au cours du dernier jour

changes(etcd_server_leader_changes_seen_total{job="etcd"}[1d])

Nombre de changements de leader etcd au cours du dernier jour.

Utilisation de la mémoire

memory_utilization_byte{container="etcd"}

Utilisation de la mémoire, en octets.

Utilisation du CPU

cpu_utilization_core{container="etcd"}*1000

Utilisation du CPU, en millicœurs.

Niveau d'utilisation de la mémoire

  • resource_utilization_level{resource="memory",container="etcd",utilization_level="high"}

  • resource_utilization_level{resource="memory",container="etcd",utilization_level="normal"}

  • Si resource_utilization_level{utilization_level="high",...} vaut 1, le niveau d'utilisation des ressources du conteneur est ≥ 80 %.

  • Si resource_utilization_level{utilization_level="normal",...} vaut 1, le niveau d'utilisation des ressources du conteneur est < 80 %.

Niveau d'utilisation du CPU

  • resource_utilization_level{resource="cpu",container="etcd",utilization_level="high"}

  • resource_utilization_level{resource="cpu",container="etcd",utilization_level="normal"}

Taille du disque

etcd_mvcc_db_total_size_in_bytes

Taille totale de la base de données backend etcd.

etcd_mvcc_db_total_size_in_use_in_bytes

Taille utilisée de la base de données backend etcd.

Total des paires clé-valeur

etcd_debugging_mvcc_keys_total

Nombre total de paires clé-valeur dans le cluster etcd.

Latence de validation (commit) du backend

histogram_quantile(0.99, sum(rate(etcd_disk_backend_commit_duration_seconds_bucket{job="etcd"}[5m])) by (instance, le))

Temps nécessaire pour persister une proposition dans la base de données etcd.

État des propositions Raft

rate(etcd_server_proposals_failed_total{job="etcd"}[1m])

Taux de propositions Raft ayant échoué par minute.

etcd_server_proposals_pending{job="etcd"}

Nombre total de propositions Raft en attente.

etcd_server_proposals_committed_total{job="etcd"} - etcd_server_proposals_applied_total{job="etcd"}

Nombre de propositions validées (committed) mais non encore appliquées.

Anomalies courantes des métriques

État de disponibilité (liveness) d'etcd

Cas normal

Cas anormal

Description

Les trois membres etcd disposent d'un leader, et l'un d'eux doit être le leader : sum(etcd_server_has_leader)=3, et un seul membre satisfait à la condition member etcd_server_is_leader == 1.

Un seul membre est anormal.

La condition correspondante member etcd_server_has_leader!=1 n'affecte pas le service etcd global.

Plus d'un membre est anormal.

Plusieurs membres signalent la condition member etcd_server_has_leader!=1, ce qui empêche le cluster etcd de fournir des services.

Vérifiez également si un membre possède la propriété etcd_server_is_leader == 1. Si ce n'est pas le cas, etcd est sans leader et ne peut pas fournir de services.

Latence de validation (commit) du backend

|
**Cas normal**
|
**Cas anormal**
|
**Description**
| | --- | --- | --- | |
La latence se situe généralement entre quelques millisecondes et quelques dizaines de millisecondes.
|
Latence soutenue de plusieurs centaines de millisecondes ou plus.
|
Indique des problèmes d'E/S disque.
|











Anomalies des propositions Raft

|
**Cas normal**
|
**Cas anormal**
|
**Description**
| | --- | --- | --- | |
Le taux de propositions Raft ayant échoué est de 0.
|
Le taux de propositions Raft ayant échoué est supérieur à 0.
|
Certaines propositions échouent lors de la validation (commit). Investiguez les taux d'échec élevés.
| |
Le nombre total de propositions Raft en attente est de 0.
|
Un nombre non nul de propositions Raft en attente persiste.
|
Arriéré de propositions Raft, souvent causé par une lenteur de l'application (apply). Mettez cette métrique en corrélation avec la latence de validation du backend.
| |
L'écart entre les propositions Raft validées (committed) et appliquées est de 0.
|
L'écart entre les propositions validées et appliquées est supérieur à 0.
|
Peut indiquer un volume excessif de requêtes client sur etcd.


Si cette valeur dépasse 5000, etcd rejette les requêtes avec l'erreur `too many requests` jusqu'à ce que les propositions en attente soient traitées.
|


























Références

Consultez les rubriques Métriques de surveillance de kube-apiserver, Métriques de surveillance de kube-scheduler, Métriques de surveillance de kube-controller-manager et Métriques de surveillance de cloud-controller-manager.