In diesem Dokument wird beschrieben, wie Sie Ihre Google Kubernetes Engine-Bereitstellung so konfigurieren, dass Sie Google Cloud Managed Service for Prometheus verwenden können, um Messwerte aus NVIDIA Data Center GPU Manager zu erfassen. Dieses Dokument enthält Anleitungen für folgende Aufgaben:
- Exporter für DCGM zum Erfassen von Messwerten einrichten.
- Eine PodMonitoring-Ressource für Managed Service for Prometheus konfigurieren, um die exportierten Messwerte zu erfassen.
Diese Anleitung gilt nur, wenn Sie die verwaltete Sammlung mit Managed Service for Prometheus verwenden. Wenn Sie eine selbst bereitgestellte Sammlung verwenden, finden Sie Informationen zur Installation im Quell-Repository für DCGM Exporter.
Diese Anleitung dient als Beispiel und sollte in den meisten Kubernetes-Umgebungen funktionieren. Informationen zu einem verwalteten DCGM-Angebot finden Sie unter DCGM-Messwerte erfassen und ansehen.
Wenn Sie aufgrund von restriktiven Sicherheits- oder Organisationsrichtlinien Probleme beim Installieren einer Anwendung oder eines Exporters haben, empfehlen wir Ihnen, die Open Source-Dokumentation für Support zu nutzen.
Informationen zu DCGM finden Sie unter NVIDIA DCGM.
Vorbereitung
Zum Erfassen von Messwerten aus DCGM mithilfe von Managed Service for Prometheus und der verwalteten Erfassung muss das Deployment die folgenden Anforderungen erfüllen:
- Ihr Cluster muss Google Kubernetes Engine Version 1.21.4-gke.300 oder höher ausführen.
- Sie müssen Managed Service for Prometheus mit aktivierter verwalteter Sammlung ausführen. Weitere Informationen finden Sie unter Erste Schritte mit verwalteter Sammlung.
Prüfen Sie, ob Sie ein ausreichendes Kontingent für NVIDIA-GPUs haben.
Führen Sie den folgenden Befehl aus, um GPU-Knoten in Ihrem GKE-Cluster und die zugehörigen GPU-Typen im entsprechenden Cluster aufzulisten:
kubectl get nodes -l cloud.google.com/gke-gpu -o jsonpath='{range .items[*]}{@.metadata.name}{" "}{@.metadata.labels.cloud\.google\.com/gke-accelerator}{"\n"}{end}'
Beachten Sie, dass Sie möglicherweise einen kompatiblen NVIDIA GPU-Treiber auf den Knoten installieren müssen, wenn die automatische Installation deaktiviert wurde oder für Ihre GKE-Version nicht unterstützt wird. Führen Sie den folgenden Befehl aus, um zu prüfen, ob das NVIDIA-GPU-Geräte-Plug-in ausgeführt wird:
kubectl get pods -n kube-system | grep nvidia-gpu-device-plugin
DCGM-Exporter installieren
Wir empfehlen, den DCGM-Exporter DCGM-Exporter
mit der folgenden Konfiguration zu installieren:
Richten Sie mit dem folgenden Befehl die Portweiterleitung ein:
kubectl -n gmp-public port-forward POD_NAME 9400
Greifen Sie über den Browser oder das Dienstprogramm
curl
in einer anderen Terminalsitzung auf den Endpunktlocalhost:9400/metrics
zu.
Sie können den Abschnitt „ConfigMap“ anpassen, um auszuwählen, welche GPU-Messwerte gesendet werden sollen.
Alternativ können Sie das offizielle Helm-Diagramm verwenden, um DCGM Exporter zu installieren.
Führen Sie den folgenden Befehl aus, um Konfigurationsänderungen aus einer lokalen Datei anzuwenden:
kubectl apply -n NAMESPACE_NAME -f FILE_NAME
Sie können Ihre Konfigurationen auch mit Terraform verwalten.
PodMonitoring-Ressource definieren
Für die Zielerkennung benötigt der Managed Service for Prometheus-Operator eine PodMonitoring-Ressource, die dem DCGM-Exporter im selben Namespace entspricht.
Sie können die folgende PodMonitoring-Konfiguration verwenden:
Führen Sie den folgenden Befehl aus, um Konfigurationsänderungen aus einer lokalen Datei anzuwenden:
kubectl apply -n NAMESPACE_NAME -f FILE_NAME
Sie können Ihre Konfigurationen auch mit Terraform verwalten.
Konfiguration prüfen
Mit dem Metrics Explorer können Sie prüfen, ob der DCGM-Exporter richtig konfiguriert ist. Es kann ein oder zwei Minuten dauern, bis Cloud Monitoring Ihre Messwerte aufgenommen hat.
So prüfen Sie, ob die Messwerte aufgenommen wurden:
-
Rufen Sie in der Google Cloud Console die Seite leaderboard Metrics Explorer auf.
Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Monitoring ist.
- Klicken Sie in der Symbolleiste des Bereichs "Query Builder" auf die Schaltfläche code MQL oder code PromQL.
- Prüfen Sie, ob PromQL in der Ein-/Aus-Schaltfläche PromQL ausgewählt ist. Die Sprachschaltfläche befindet sich in derselben Symbolleiste, mit der Sie Ihre Abfrage formatieren können.
- Geben Sie die folgende Abfrage ein und führen Sie sie aus:
DCGM_FI_DEV_GPU_UTIL{cluster="CLUSTER_NAME", namespace="gmp-public"}
Fehlerbehebung
Informationen zur Fehlerbehebung bei Problemen mit der Messwertaufnahme finden Sie unter Probleme mit der Erfassung über Exporter unter Fehlerbehebung bei Problemen mit der Aufnahme.