Cette page vous explique comment analyser les performances du processeur des nœuds de votre cluster Google Kubernetes Engine (GKE) à l'aide des événements de l'unité de surveillance des performances (PMU).
Cette page s'adresse aux administrateurs de cluster qui ont des charges de travail sensibles aux performances et qui souhaitent examiner l'exécution du processeur de leurs charges de travail sur leurs nœuds GKE lors du développement, du débogage, de l'analyse comparative et de la surveillance continue.
Avant de commencer
Avant de commencer, effectuez les tâches suivantes :
- Activez l'API Google Kubernetes Engine. Activer l'API Google Kubernetes Engine
- Si vous souhaitez utiliser Google Cloud CLI pour cette tâche, installez puis initialisez gcloud CLI. Si vous avez déjà installé gcloud CLI, assurez-vous de disposer de la dernière version en exécutant la commande
gcloud components update
.
Conditions requises et limites
Lorsque vous activez les événements PMU, tenez compte des exigences et des limites suivantes :
- Votre cluster doit être en mode Standard.
- Si le provisionnement automatique des nœuds est activé pour votre cluster, vous ne pouvez pas activer les événements PMU pour les pools de nœuds créés par le biais du provisionnement automatique. Si vous activez le provisionnement automatique des nœuds après avoir activé les événements PMU, les pools de nœuds existants ne sont pas concernés.
- Les pools de nœuds du cluster doivent exécuter le type de machine C4 ou C4A.
Créer un cluster GKE
Créez un cluster avec les événements PMU activés pour le pool de nœuds par défaut :
gcloud container clusters create CLUSTER_NAME \
--location=COMPUTE_LOCATION \
--performance-monitoring-unit=PMU_LEVEL \
--machine-type=MACHINE_TYPE
Remplacez les éléments suivants :
CLUSTER_NAME
: nom du nouveau clusterCOMPUTE_LOCATION
: emplacement Compute Engine du nouveau cluster.PMU_LEVEL
: type d'événements PMU à collecter. Pour en savoir plus, consultez Fonctionnement de l'unité de gestion de l'alimentation dans la documentation Compute Engine. Les valeurs acceptées sont les suivantes :architectural
: active les événements PMU architecturaux liés aux événements de cache non de dernier niveau (LLC).standard
: inclut les événements architecturaux et active les événements PMU de base, y compris les événements de cache L2.enhanced
: inclut les événements standards et permet tous les événements locaux en dehors des événements PMU du cœur de processeur et du LLC. Cette option n'est disponible que pour les VM disposant d'un nombre spécifique de processeurs virtuels. Pour en savoir plus, consultez la section Limites de la documentation Compute Engine.
MACHINE_TYPE
: type de machine Compute Engine pour vos nœuds. Pour obtenir la liste des types de machines compatibles, consultez la section Limites dans la documentation Compute Engine.
Vous pouvez également créer un pool de nœuds pour un cluster existant à l'aide de la commande gcloud container node-pools create
.
Se connecter au cluster
Configurez kubectl
pour communiquer avec le cluster :
gcloud container clusters get-credentials CLUSTER_NAME \
--location=COMPUTE_LOCATION
Vérifier que l'unité de gestion de l'alimentation est activée
Vérifiez que la PMU est activée sur les nœuds de votre cluster en examinant les messages du noyau.
Obtenez la liste des nœuds du cluster :
kubectl get nodes
Le résultat ressemble à ce qui suit :
NAME STATUS ROLES AGE VERSION gke-c1-default-pool-44be3e13-prr1 Ready <none> 5d23h v1.27.13-gke.1070000 gke-c1-default-pool-7abc4a17-9dlg Ready <none> 2d21h v1.27.13-gke.1070000 gke-c1-default-pool-ed969ef6-4gzp Ready <none> 5d v1.27.13-gke.1070000
Notez le nom de l'un des nœuds.
Obtenez l'emplacement Compute Engine du nœud :
gcloud compute instances list --filter=NODE_NAME
Remplacez
NODE_NAME
par le nom d'un nœud de l'étape précédente.Le résultat ressemble à ce qui suit :
NAME ZONE MACHINE_TYPE PREEMPTIBLE INTERNAL_IP EXTERNAL_IP STATUS gke-c1-default-pool-44be3e13-prr1 us-central1-c c4-standard-4 true 10.128.0.67 34.170.44.164 RUNNING
Enregistrez le nom de l'
ZONE
Compute Engine. Dans cet exemple, il s'agit deus-central1-c
.Utilisez SSH pour vous connecter au nœud de cluster :
gcloud compute ssh NODE_NAME \ --zone=COMPUTE_ZONE
Remplacez
COMPUTE_ZONE
par le nom de la zone Compute Engine de l'étape précédente.Examinez les messages du noyau :
sudo dmesg |grep -A10 -i "Performance"
Le résultat ressemble à ce qui suit :
[ 0.307634] Performance Events: generic architected perfmon, full- width counters, Intel PMU driver. # Several lines omitted
Ce résultat indique que le pilote PMU est initialisé.
Étapes suivantes
- Découvrez comment choisir une configuration minimale de plate-forme de processeur.