View a markdown version of this page

Terapkan Wawasan Kontainer OTel dengan CloudFormation - Amazon CloudWatch

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Terapkan Wawasan Kontainer OTel dengan CloudFormation

Anda dapat menerapkan OTel Container Insights sebagai infrastruktur sebagai kode dengan menggunakan template. CloudFormation Pendekatan ini paling baik untuk tim yang mengelola cluster melalui saluran pipa IAC dan menginginkan penerapan yang dapat diulang dan dikendalikan versi.

Template menginstal add-on amazon-cloudwatch-observability EKS dengan OTel Container Insights diaktifkan. Jika Anda lebih suka manajemen Kubernetes-native paket, lihatTerapkan Wawasan Kontainer OTel dengan Helm.

Prasyarat

Sebelum Anda menerapkan OTel Container Insights dengan CloudFormation, verifikasi bahwa Anda memenuhi persyaratan berikut.

  • Cluster Amazon EKS yang sudah ada yang menjalankan Kubernetes versi 1.28 atau yang lebih baru

  • AWS CLI versi 2.15.0 atau yang lebih baru

  • kubectldikonfigurasi untuk berkomunikasi dengan cluster target Anda

  • Izin IAM untuk pembuatan tumpukan CloudFormation

  • Akses internet keluar dari cluster ke titik akhir CloudWatch

Menyebarkan dengan CloudFormation

Gunakan CloudFormation template untuk menerapkan add-on CloudWatch Observability, peran IAM yang diperlukan, dan asosiasi Pod Identity dalam satu tumpukan. Template ini menggunakan AWS::EKS::Addon sumber daya untuk menginstal add-on dengan OTel Container Insights diaktifkan.

CloudFormation templat

Template berikut membuat kumpulan lengkap sumber daya yang Anda perlukan untuk mengaktifkan OTel Container Insights di klaster Amazon EKS Anda.

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

Template ini menciptakan sumber daya berikut:

  • Peran IAM dengan kebijakan CloudWatchAgentServerPolicy terkelola terlampir

  • Asosiasi Identitas Pod EKS yang memetakan peran ke akun layanan CloudWatch agen

  • Add-on amazon-cloudwatch-observability EKS dengan OTel Container Insights diaktifkan

Untuk menyebarkan CloudFormation tumpukan

Gunakan AWS CLI untuk membuat CloudFormation tumpukan dari template.

Untuk menyebarkan tumpukan
  1. Simpan template sebelumnya ke file bernama. otel-container-insights.yaml

  2. Jalankan perintah berikut. Ganti cluster-name dengan nama cluster Amazon EKS Anda.

    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. Tunggu pembuatan tumpukan selesai.

    aws cloudformation wait stack-create-complete \ --stack-name otel-container-insights
  4. Verifikasi bahwa status tumpukan adalahCREATE_COMPLETE.

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

Verifikasi penyebaran

Setelah pembuatan CloudFormation tumpukan selesai, verifikasi bahwa add-on sedang berjalan dan mengirim data ke. CloudWatch

Untuk memverifikasi penyebaran
  1. Konfirmasikan bahwa pod CloudWatch agen sedang berjalan.

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

    Semua pod harus menunjukkan Running status.

  2. Buka CloudWatch konsol di https://console.aws.amazon.com/cloudwatch/.

  3. Di panel navigasi, pilih Wawasan Kontainer.

  4. Verifikasi bahwa klaster Anda muncul di daftar klaster dan metrik tersebut terisi.

Metrik biasanya muncul CloudWatch dalam waktu 3 hingga 5 menit setelah penerapan selesai.

Hapus penyebaran

Untuk menghapus semua sumber daya yang dibuat CloudFormation template, hapus tumpukan.

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