View a markdown version of this page

Anleitung zur Einrichtung (AWS CLI) - Amazon CloudWatch

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Anleitung zur Einrichtung (AWS CLI)

Diese Anleitung führt Sie durch die Installation von Enhanced Container Insights (Classic) auf einem vorhandenen Amazon EKS-Cluster mithilfe von AWS CLI. Das Add-on stellt einen CloudWatch Agenten bereit DaemonSet , der Infrastrukturmetriken, Container-Protokolle und Leistungsdaten sammelt.

Wartungsmodus

Enhanced Container Insights (Classic) befindet sich im Wartungsmodus. Für neue Bereitstellungen empfehlen Otel Container Insights (empfohlen) wir.

Voraussetzungen

Bevor Sie beginnen, stellen Sie sicher, dass Sie die folgenden Anforderungen erfüllen.

  • Ein vorhandener Amazon EKS-Cluster mit Kubernetes Version 1.25 oder höher

  • Plattformversion oder höher eks.1

  • AWS CLI Version 2.12.0 oder höher

  • kubectlkonfiguriert für die Kommunikation mit Ihrem Zielcluster

  • IAM-Berechtigungen:eks:CreateAddon,eks:DescribeAddon, iam:CreateServiceLinkedRoleiam:CreateRole, und iam:AttachRolePolicy

  • Das auf Ihrem Cluster installierte EKS Pod Identity Agent-Add-On oder die konfigurierten IAM-Rollen für Dienstkonten (IRSA)

  • Ausgehender Internetzugang vom Cluster zu den Endpunkten CloudWatch

Schritt 1: Erstellen Sie die IAM-Rolle für das

Erstellen Sie eine IAM-Rolle, an die der CloudWatch Agent Daten senden kann. CloudWatch

Um die CloudWatch Agenten-IAM-Rolle zu erstellen
  1. Führen Sie den folgenden Befehl aus, um die Rolle mit einer Vertrauensrichtlinie für EKS Pod Identity zu erstellen.

    aws iam create-role \ --role-name EKS-CloudWatch-Agent-Role \ --assume-role-policy-document '{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Principal": { "Service": "pods.eks.amazonaws.com" }, "Action": ["sts:AssumeRole", "sts:TagSession"] }] }'
  2. Hängen Sie die von CloudWatchAgentServerPolicy verwaltete Richtlinie an die Rolle an.

    aws iam attach-role-policy \ --role-name EKS-CloudWatch-Agent-Role \ --policy-arn arn:aws:iam::aws:policy/CloudWatchAgentServerPolicy

Schritt 2: Erstellen Sie die Pod Identity-Zuordnung

Ordnen Sie die IAM-Rolle dem CloudWatch Agent-Dienstkonto in Ihrem Cluster zu.

Um die Pod Identity-Zuordnung zu erstellen
  • Führen Sie den folgenden Befehl aus. cluster-nameErsetzen Sie es durch den Namen Ihres Amazon EKS-Clusters und account-id durch Ihre AWS Konto-ID.

    aws eks create-pod-identity-association \ --cluster-name cluster-name \ --namespace amazon-cloudwatch \ --service-account cloudwatch-agent \ --role-arn arn:aws:iam::account-id:role/EKS-CloudWatch-Agent-Role

Schritt 3: Installieren Sie das Amazon CloudWatch Observability-Add-on

Installieren Sie das amazon-cloudwatch-observability Add-on auf Ihrem Cluster.

Um das Add-on zu installieren
  • Führen Sie den folgenden Befehl aus. cluster-nameErsetzen Sie durch den Namen Ihres Amazon EKS-Clusters.

    aws eks create-addon \ --cluster-name cluster-name \ --addon-name amazon-cloudwatch-observability \ --addon-version v5.x.x-eksbuild.x

    v5.x.x-eksbuild.xErsetzen Sie durch die neueste verfügbare Version v5.x. Bei der Installation ohne --addon-version wird die neueste Version (v6.2.0+) installiert, wodurch die oTEL-Pipeline anstelle von Classic aktiviert wird.

Schritt 4: Überprüfen Sie den Status des Add-ons

Vergewissern Sie sich, dass das Add-on erfolgreich installiert wurde.

Um den Status des Add-ons zu überprüfen
  • Führen Sie den folgenden Befehl aus. cluster-nameErsetzen Sie durch den Namen Ihres Amazon EKS-Clusters.

    aws eks describe-addon \ --cluster-name cluster-name \ --addon-name amazon-cloudwatch-observability \ --query "addon.status" \ --output text

    Die erwartete Ausgabe istACTIVE.

Schritt 5: Stellen Sie sicher, dass die Agent-Pods ausgeführt werden

Stellen Sie sicher, dass die CloudWatch Agent-Pods im amazon-cloudwatch Namespace ausgeführt werden.

Um zu überprüfen, ob die Agenten-Pods ausgeführt werden
  • Führen Sie den folgenden Befehl aus.

    kubectl get pods -n amazon-cloudwatch -l app.kubernetes.io/name=cloudwatch-agent

    Alle Agenten-Pods müssen Running den Status anzeigen.

Überprüfen Sie die Daten in CloudWatch

Nachdem Sie die Einrichtung abgeschlossen haben, werden die Container Insights-Daten CloudWatch innerhalb von 3 bis 5 Minuten angezeigt.

Um Container Insights-Daten zu verifizieren
  1. Öffnen Sie die CloudWatch Konsole unter https://console.aws.amazon.com/cloudwatch/.

  2. Wählen Sie im Navigationsbereich Container Insights aus.

  3. Vergewissern Sie sich, dass Metriken wie node_cpu_utilization und für Ihren Cluster pod_memory_utilization angezeigt werden.

Fehlerbehebung

Verwenden Sie die folgenden Anleitungen, um häufig auftretende Probleme bei der Installation von Enhanced Container Insights (Classic) auf Amazon EKS zu lösen.

Add-on Der Status zeigt CREATE_FAILED oder DEGRADED

Symptom: Beim Ausführen wird der Status aws eks describe-addon oder angezeigt. CREATE_FAILED DEGRADED

Ursache: Die Installation des Add-ons ist aufgrund unzureichender IAM-Berechtigungen oder einer fehlenden Pod Identity-Zuordnung fehlgeschlagen.

Lösung: Gehen Sie wie folgt vor, um dieses Problem zu beheben.

  1. Führen Sie den folgenden Befehl aus, um nach detaillierten Fehlerinformationen zu suchen. Ersetzen Sie cluster-name mit dem Namen Ihres Clusters.

    aws eks describe-addon \ --cluster-name cluster-name \ --addon-name amazon-cloudwatch-observability \ --query "addon.health"
  2. Stellen Sie sicher, dass die IAM-Rolle vorhanden ist und dass sie CloudWatchAgentServerPolicy angehängt ist.

  3. Stellen Sie sicher, dass die Pod Identity-Zuordnung auf den richtigen Namespace (amazon-cloudwatch) und das richtige Dienstkonto (cloudwatch-agent) abzielt.

  4. Löschen Sie das fehlgeschlagene Add-on und installieren Sie es erneut, nachdem Sie das Problem behoben haben.

    aws eks delete-addon \ --cluster-name cluster-name \ --addon-name amazon-cloudwatch-observability

Metriken werden CloudWatch nach 5 Minuten nicht angezeigt

Symptom: Die Agenten-Pods zeigen Running den Status an, aber CloudWatch nach 5 Minuten werden keine Metriken angezeigt.

Ursache: Der Agent kann CloudWatch aufgrund von Netzwerkeinschränkungen oder falschen IAM-Berechtigungen keine Daten an senden.

Lösung: Gehen Sie wie folgt vor, um dieses Problem zu beheben.

  1. Stellen Sie sicher, dass Ihre VPC-Sicherheitsgruppen und Netzwerk-ACLs ausgehenden HTTPS-Verkehr (Port 443) zu Endpunkten zulassen. CloudWatch

  2. Überprüfen Sie die Agentenprotokolle auf Berechtigungsfehler oder Verbindungstimeouts.

    kubectl logs -n amazon-cloudwatch -l app.kubernetes.io/name=cloudwatch-agent --tail=100 | grep -i "error\|timeout\|denied"
  3. Stellen Sie sicher, dass die IAM-Rolle die CloudWatchAgentServerPolicy Richtlinie angehängt hat und ob die Vertrauensrichtlinie dies zulässt. pods.eks.amazonaws.com

Agenten-Pods bleiben im Status „Ausstehend“ hängen oder CrashLoopBackOff

Symptom: Beim Ausführen wird kubectl get pods -n amazon-cloudwatch für einen oder mehrere Pods der CrashLoopBackOff Status „PendingUnser“ angezeigt.

Ursache: Die Agenten-Pods können aufgrund unzureichender Knotenressourcen, fehlgeschlagener Image-Pulls oder fehlender Berechtigungen nicht gestartet werden.

Lösung: Gehen Sie wie folgt vor, um dieses Problem zu beheben.

  1. Überprüfen Sie die Pod-Ereignisse auf detaillierte Fehlermeldungen.

    kubectl describe pod -n amazon-cloudwatch -l app.kubernetes.io/name=cloudwatch-agent
  2. Stellen Sie sicher, dass Ihre Knoten über ausreichend CPU und Arbeitsspeicher für die Agenten-Pods verfügen.

  3. Stellen Sie sicher, dass das EKS Pod Identity Agent-Add-on installiert ist und ausgeführt wird.

    kubectl get pods -n kube-system -l app.kubernetes.io/name=eks-pod-identity-agent

Nächste Schritte

Bereit für das Upgrade? Eine schrittweise Anleitung zur Umstellung von Enhanced Container Insights (Classic) auf oTEL Container Insights finden Sie unterMigrieren Sie von Enhanced Container Insights (Classic) zu oTEL Container Insights.