View a markdown version of this page

Stellen Sie Otel Container Insights bereit mit CloudFormation - 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.

Stellen Sie Otel Container Insights bereit mit CloudFormation

Sie können OTel Container Insights mithilfe einer CloudFormation Vorlage als Infrastruktur als Code bereitstellen. Dieser Ansatz eignet sich am besten für Teams, die Cluster über IaC-Pipelines verwalten und wiederholbare, versionskontrollierte Bereitstellungen wünschen.

Die Vorlage installiert das amazon-cloudwatch-observability EKS-Add-on mit aktiviertem oTEL Container Insights. Wenn Sie Kubernetes-native Paketverwaltung bevorzugen, finden Sie weitere Informationen unterStellen Sie Otel Container Insights mit Helm bereit.

Voraussetzungen

Stellen Sie vor der Bereitstellung von OTel Container Insights sicher CloudFormation, dass Sie die folgenden Anforderungen erfüllen.

  • Ein vorhandener Amazon EKS-Cluster, auf dem Kubernetes Version 1.28 oder höher ausgeführt wird

  • AWS CLI Version 2.15.0 oder höher

  • kubectlkonfiguriert für die Kommunikation mit Ihrem Zielcluster

  • IAM-Berechtigungen für die CloudFormation Stack-Erstellung

  • Ausgehender Internetzugang vom Cluster zu den Endpunkten CloudWatch

Bereitstellen mit CloudFormation

Verwenden Sie eine CloudFormation Vorlage, um das CloudWatch Observability-Add-on, die erforderliche IAM-Rolle und die Pod Identity-Zuordnung in einem einzigen Stack bereitzustellen. Diese Vorlage verwendet die AWS::EKS::Addon Ressource, um das Add-on mit aktiviertem OTel Container Insights zu installieren.

CloudFormation Vorlage

Die folgende Vorlage erstellt den kompletten Satz von Ressourcen, den Sie benötigen, um OTel Container Insights auf Ihrem Amazon EKS-Cluster zu aktivieren.

AWSTemplateFormatVersion: '2010-09-09' Description: Deploy OTel Container Insights 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-Observability-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: v6.2.0-eksbuild.1 ConfigurationValues: '{"otelContainerInsights":{"enabled":true}}' ServiceAccountRoleArn: !GetAtt CloudWatchAgentRole.Arn ResolveConflicts: OVERWRITE

Diese-Vorlage erstellt die folgenden Ressourcen:

  • Eine IAM-Rolle mit angehängter CloudWatchAgentServerPolicy verwalteter Richtlinie

  • Eine EKS Pod Identity-Zuordnung, die die Rolle dem CloudWatch Agent-Dienstkonto zuordnet

  • Das amazon-cloudwatch-observability EKS-Add-on mit aktiviertem oTEL Container Insights

Um das zu implementieren CloudFormation Stack

Verwenden Sie den AWS CLI , um den CloudFormation Stack aus der Vorlage zu erstellen.

So stellen Sie den Stack bereit
  1. Speichern Sie die vorherige Vorlage in einer Datei mit dem Namenotel-container-insights.yaml.

  2. Führen Sie den folgenden Befehl aus. cluster-nameErsetzen Sie durch den Namen Ihres Amazon EKS-Clusters.

    aws cloudformation create-stack \ --stack-name otel-container-insights \ --template-body file://otel-container-insights.yaml \ --parameters ParameterKey=ClusterName,ParameterValue=cluster-name \ --capabilities CAPABILITY_NAMED_IAM
  3. Warten Sie, bis die Stack-Erstellung abgeschlossen ist.

    aws cloudformation wait stack-create-complete \ --stack-name otel-container-insights
  4. Stellen Sie sicher, dass der Stack-Status lautetCREATE_COMPLETE.

    aws cloudformation describe-stacks \ --stack-name otel-container-insights \ --query "Stacks[0].StackStatus" \ --output text

Überprüfen der Bereitstellung

Stellen Sie nach Abschluss der CloudFormation Stack-Erstellung sicher, dass das Add-on läuft und Daten an sendet CloudWatch.

Um die Bereitstellung zu überprüfen
  1. Vergewissern Sie sich, dass die CloudWatch Agenten-Pods ausgeführt werden.

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

    Alle Pods müssen Running den Status anzeigen.

  2. Öffnen Sie die CloudWatch Konsole unter https://console.aws.amazon.com/cloudwatch/.

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

  4. Vergewissern Sie sich, dass Ihr Cluster in der Cluster-Liste erscheint und dass die Metriken aufgefüllt werden.

Metriken werden in der Regel CloudWatch innerhalb von 3 bis 5 Minuten nach Abschluss der Bereitstellung angezeigt.

Entfernen Sie die Bereitstellung

Um alle Ressourcen zu entfernen, die mit der CloudFormation Vorlage erstellt wurden, löschen Sie den Stack.

aws cloudformation delete-stack \ --stack-name otel-container-insights