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.
Stellen Sie Enhanced Container Insights (Classic) bereit mit CloudFormation oder Helm
Sie können Enhanced Container Insights (Classic) mithilfe von CloudFormation
Vorlagen oder Helm-Diagrammen als Infrastruktur als Code bereitstellen. Bei diesem Ansatz wird das amazon-cloudwatch-observability Add-on mit einer Version vor v6.2.0 installiert, um die Classic-Metrik-Pipeline zu aktivieren. Wählen Sie diesen Ansatz, wenn Sie Cluster über IaC-Pipelines verwalten und wiederholbare, versionskontrollierte Bereitstellungen wünschen.
Empfehlung
Für neue Bereitstellungen empfehlen wir, die Add-On-Version 6.2.0 Otel Container Insights (empfohlen) oder höher mit der Pipeline zu verwenden. OTel-based
Voraussetzungen
Bevor Sie Enhanced Container Insights (Classic) mit CloudFormation oder Helm bereitstellen, stellen Sie sicher, dass Sie die folgenden Anforderungen erfüllen.
-
Ein vorhandener Amazon EKS-Cluster, auf dem Kubernetes Version 1.25 oder höher ausgeführt wird
-
AWS CLI Version 2.12.0 oder höher
-
kubectlkonfiguriert für die Kommunikation mit Ihrem Zielcluster -
IAM-Berechtigungen für die CloudFormation Stack-Erstellung (für die CloudFormation Methode)
-
Helm v3.8 oder höher (für die Helm-Methode)
-
Ausgehender Internetzugang vom Cluster zu Endpunkten CloudWatch
Bereitstellen mit CloudFormation
Verwenden Sie eine CloudFormation Vorlage, um das CloudWatch Observability-Add-on mit der Classic-Konfiguration bereitzustellen. Diese Vorlage verwendet die AWS::EKS::Addon Ressource, um das Add-on mit einer Version vor v6.2.0 zu installieren.
CloudFormation Vorlage
Die folgende Vorlage erstellt die Ressourcen, die Sie benötigen, um Enhanced Container Insights (Classic) auf Ihrem Amazon EKS-Cluster zu aktivieren.
AWSTemplateFormatVersion: '2010-09-09' Description: Deploy Enhanced Container Insights (Classic) on an EKS cluster Parameters: ClusterName: Type: String Description: The name of your EKS cluster Resources: CloudWatchAgentRole: Type: AWS::IAM::Role Properties: RoleName: EKS-CloudWatch-Agent-Role AssumeRolePolicyDocument: Version: '2012-10-17' Statement: - Effect: Allow Principal: Service: pods.eks.amazonaws.com Action: - sts:AssumeRole - sts:TagSession ManagedPolicyArns: - arn:aws:iam::aws:policy/CloudWatchAgentServerPolicy PodIdentityAssociation: Type: AWS::EKS::PodIdentityAssociation Properties: ClusterName: !Ref ClusterName Namespace: amazon-cloudwatch ServiceAccount: cloudwatch-agent RoleArn: !GetAtt CloudWatchAgentRole.Arn CloudWatchObservabilityAddon: Type: AWS::EKS::Addon DependsOn: PodIdentityAssociation Properties: ClusterName: !Ref ClusterName AddonName: amazon-cloudwatch-observability AddonVersion: v5.4.0-eksbuild.1 ServiceAccountRoleArn: !GetAtt CloudWatchAgentRole.Arn ResolveConflicts: OVERWRITE
Diese-Vorlage erstellt die folgenden Ressourcen:
-
Eine IAM-Rolle mit angehängter
CloudWatchAgentServerPolicyverwalteter Richtlinie -
Eine EKS Pod Identity-Zuordnung, die die Rolle dem CloudWatch Agent-Dienstkonto zuordnet
-
Das
amazon-cloudwatch-observabilityEKS-Add-on mit einer Classic-Version (vor v6.2.0)
Um das bereitzustellen CloudFormation Stack
Verwenden Sie den AWS CLI , um den CloudFormation Stack aus der Vorlage zu erstellen.
So stellen Sie den Stack bereit
-
Speichern Sie die vorherige Vorlage in einer Datei mit dem Namen
classic-container-insights.yaml. -
Führen Sie den folgenden Befehl aus.
cluster-nameErsetzen Sie durch den Namen Ihres Amazon EKS-Clusters.aws cloudformation create-stack \ --stack-name classic-container-insights \ --template-body file://classic-container-insights.yaml \ --parameters ParameterKey=ClusterName,ParameterValue=cluster-name\ --capabilities CAPABILITY_NAMED_IAM -
Warten Sie, bis die Stack-Erstellung abgeschlossen ist.
aws cloudformation wait stack-create-complete \ --stack-name classic-container-insights -
Stellen Sie sicher, dass der Stack-Status lautet
CREATE_COMPLETE.aws cloudformation describe-stacks \ --stack-name classic-container-insights \ --query "Stacks[0].StackStatus" \ --output text
Mit Helm bereitstellen
Verwenden Sie das Helm-Diagramm, um Enhanced Container Insights (Classic) bereitzustellen, wenn Sie Kubernetes-Workloads mit Helm verwalten. Das Diagramm installiert den CloudWatch Observability-Operator mit der Classic-Metrik-Pipeline.
Anmerkung
Wenn Sie Helm verwenden, müssen Sie die IAM-Rolle und die Pod Identity-Zuordnung separat erstellen. Das Helm-Diagramm installiert nur die Kubernetes-Ressourcen.
Schritt 1: Erstellen Sie die IAM-Rolle für das
Erstellen Sie eine IAM-Rolle für den CloudWatch Agenten, bevor Sie das Helm-Diagramm installieren.
Um die IAM-Rolle und die Pod Identity-Zuordnung zu erstellen
-
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"] }] }' -
Hängen Sie die von
CloudWatchAgentServerPolicyverwaltete Richtlinie an die Rolle an.aws iam attach-role-policy \ --role-name EKS-CloudWatch-Agent-Role \ --policy-arn arn:aws:iam::aws:policy/CloudWatchAgentServerPolicy -
Erstellen Sie die Pod Identity-Zuordnung.
cluster-nameErsetzen Sie es durch den Namen Ihres Amazon EKS-Clusters undaccount-iddurch Ihre AWS Konto-ID.aws eks create-pod-identity-association \ --cluster-namecluster-name\ --namespace amazon-cloudwatch \ --service-account cloudwatch-agent \ --role-arn arn:aws:iam::account-id:role/EKS-CloudWatch-Agent-Role
Schritt 2: Installieren Sie das Helm-Diagramm
Installieren Sie das CloudWatch Observability Helm-Diagramm mit einer Classic-Version (vor v6.2.0).
Um das Helm-Diagramm zu installieren
-
Führen Sie den folgenden Befehl aus.
cluster-nameErsetzen Sie durch den Namen Ihres Amazon EKS-Clusters undregiondurch Ihre AWS Region.helm install amazon-cloudwatch-observability \ oci://public.ecr.aws/cloudwatch-agent/amazon-cloudwatch-observability-helm-chart \ --namespace amazon-cloudwatch \ --create-namespace \ --set clusterName=cluster-name\ --set region=region\ --version 5.4.0 -
Stellen Sie sicher, dass die Helm-Version erfolgreich bereitgestellt wurde.
helm list -n amazon-cloudwatchDer Status muss angezeigt werden
deployed.
Überprüfen der Bereitstellung
Stellen Sie nach Abschluss der CloudFormation Stack-Erstellung oder Helm-Installation sicher, dass das Add-on läuft und Daten an sendet CloudWatch.
Um die Bereitstellung zu überprüfen
-
Vergewissern Sie sich, dass die CloudWatch Agenten-Pods ausgeführt werden.
kubectl get pods -n amazon-cloudwatch -l app.kubernetes.io/name=cloudwatch-agentAlle Pods müssen
Runningden Status anzeigen. -
Öffnen Sie die CloudWatch Konsole unter https://console.aws.amazon.com/cloudwatch/
. -
Wählen Sie im Navigationsbereich Metrics (Metriken) und dann All metrics (Alle Metriken) aus.
-
Stellen Sie sicher, dass Metriken im
ContainerInsightsNamespace für Ihren Cluster angezeigt werden.
Metriken werden in der Regel CloudWatch innerhalb von 3 bis 5 Minuten nach Abschluss der Bereitstellung angezeigt.
Nächste Schritte
Nach der Bereitstellung von Enhanced Container Insights (Classic) können Sie sich mit den folgenden Themen befassen.
-
Informationen zur konsolenbasierten Einrichtung finden Sie unter. Enhanced Container Insights (Classic) von der Konsole aus aktivieren
-
Informationen zur AWS CLI basierten Einrichtung finden Sie unter. Anleitung zur Einrichtung (AWS CLI)
-
Informationen zu den Metriken, die Enhanced Container Insights (Classic) erfasst, finden Sie unterMetrikreferenz für Enhanced Container Insights (Classic).
-
Informationen zur Migration zu oTEL Container Insights finden Sie unterMigrieren Sie von Enhanced Container Insights (Classic) zu oTEL Container Insights.
-
Weitere Informationen zu OTel Container Insights finden Sie unterOtel Container Insights (empfohlen).