Google a annoncé le disponibilité générale des métriques du plan de contrôle Kubernetes dans Moteur Google Kubernetes (GKE). Ces métriques sont directement intégrées à Surveillance Google Cloud fournir une solution unique pour résoudre les problèmes liés à GKE. L’intégration avec des outils d’observabilité tiers est également possible via le API de surveillance du cloud.
Bien que GKE gère entièrement le plan de contrôle Kubernetes, les métriques nouvellement exposées peuvent être utiles pour résoudre les problèmes. Par exemple, la compréhension de l’intégrité du serveur API peut être facilitée par une combinaison de métriques. Cela inclut l’utilisation apiserver_request_total
et apiserver_request_duration_seconds
pour suivre la charge du serveur API, le nombre de demandes renvoyant des erreurs et la latence de réponse aux demandes.
Les nouvelles mesures disponibles peuvent également aider à résoudre les problèmes de planification. Les mesures suivantes peuvent toutes être utilisées pour aider à déterminer pourquoi les pods ne passent pas de l’en attente à la planification :
scheduler_pending_pods
scheduler_schedule_attempts_total
scheduler_preemption_attempts_total
scheduler_preemption_victims
scheduler_scheduling_attempt_duration_seconds
Une augmentation du nombre d’espaces en attente peut indiquer un problème de planification qui peut être causé par un problème de ressource sous-jacent.
Les nouvelles métriques sont toutes affichées dans la partie Moteur Kubernetes du Cloud Console. Ceci est disponible dans l’onglet Observabilité sous Plan de contrôle.
Avec cette intégration, il est possible de créer stratégies d’alerte dans Cloud Altering sur ces nouvelles métriques disponibles. En continuant avec les problèmes de planification décrits ci-dessus, une alerte pourrait être créée sur les deux scheduler_preemption_attempts_total
et scheduler_pending_pods
. La première mesure à la hausse pourrait indiquer que les pods de priorité plus élevée déplacent d’autres pods de la planification. Cependant, les deux mesures qui augmentent pourraient signifier qu’il n’y a pas assez de ressources disponibles pour les pods.
Lorsque cette option est activée, les mesures sont collectées à l’aide de l’icône Google Cloud Managed Service pour Prometheus. Les métriques seront envoyées à Cloud Monitoring dans le même projet GCP que le cluster Kubernetes. Ces métriques peuvent ensuite être des requêtes à l’aide de PromQL via l’API Cloud Monitoring et l’Explorateur de métriques. En outre, tout outil d’observabilité tiers pourrait ingérer les métriques à l’aide de l’API Cloud Monitoring.
Les clusters GKE s’exécutant sur le plan de contrôle version 1.23.6 et ultérieure peuvent accéder aux métriques à partir du serveur API Kubernetes, du planificateur et du gestionnaire de contrôleurs. Notez que ces mesures ne sont pas disponibles pour Pilote automatique GKE Clusters. La commande suivante peut être utilisée pour activer la collecte de métriques à partir du serveur API, du planificateur et du gestionnaire de contrôleur :
gcloud container clusters update [CLUSTER_ID] \
--zone=[ZONE] \
--project=[PROJECT_ID] \
--monitoring=SYSTEM,API_SERVER,SCHEDULER,CONTROLLER_MANAGER
Les métriques peuvent également être configurées via Terraform à l’aide de l’icône monitoring_config bloquer.
Les métriques Kubernetes Control Plane sont facturées au prix standard pour les métriques ingérées par le Google Cloud Managed Service pour Prometheus. Pour plus de détails sur la version, veuillez vous référer à la article de blog.