View a markdown version of this page

Panduan penyiapan (AWS CLI) - Amazon CloudWatch

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

Panduan penyiapan (AWS CLI)

Panduan ini memandu Anda menginstal Enhanced Container Insights (Klasik) pada cluster Amazon EKS yang ada dengan menggunakan AWS CLI. Add-on menerapkan CloudWatch agen sebagai DaemonSet yang mengumpulkan metrik infrastruktur, log kontainer, dan data kinerja.

Modus pemeliharaan

Enhanced Container Insights (Klasik) berada dalam mode pemeliharaan. Untuk penerapan baru, Anda harus merekomendasikan. Wawasan Kontainer OTel (Direkomendasikan)

Prasyarat

Sebelum Anda mulai, verifikasi bahwa Anda memenuhi persyaratan berikut.

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

  • Versi platform eks.1 atau yang lebih baru

  • AWS CLI versi 2.12.0 atau yang lebih baru

  • kubectldikonfigurasi untuk berkomunikasi dengan cluster target Anda

  • Izin IAM:eks:CreateAddon,eks:DescribeAddon,, iam:CreateServiceLinkedRoleiam:CreateRole, dan iam:AttachRolePolicy

  • Add-on EKS Pod Identity Agent diinstal pada cluster Anda, atau Peran IAM untuk Akun Layanan (IRSA) dikonfigurasi

  • Akses internet keluar dari cluster ke titik akhir CloudWatch

Langkah 1: Buat peran IAM

Buat peran IAM yang memungkinkan CloudWatch agen mengirim data ke CloudWatch.

Untuk membuat peran IAM CloudWatch agen
  1. Jalankan perintah berikut untuk membuat peran dengan kebijakan kepercayaan untuk EKS Pod Identity.

    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. Lampirkan CloudWatchAgentServerPolicy kebijakan terkelola ke peran.

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

Langkah 2: Buat asosiasi Pod Identity

Kaitkan peran IAM dengan akun layanan CloudWatch agen di cluster Anda.

Untuk membuat asosiasi Pod Identity
  • Jalankan perintah berikut. Ganti cluster-name dengan nama cluster Amazon EKS Anda dan account-id dengan ID AWS akun Anda.

    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

Langkah 3: Instal add-on Amazon CloudWatch Observability

Instal amazon-cloudwatch-observability add-on di cluster Anda.

Untuk menginstal add-on
  • Jalankan perintah berikut. Ganti cluster-name dengan nama cluster Amazon EKS Anda.

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

    Ganti v5.x.x-eksbuild.x dengan versi v5.x terbaru yang tersedia. Menginstal tanpa --addon-version menginstal versi terbaru (v6.2.0 +), yang mengaktifkan pipeline OTel alih-alih Classic.

Langkah 4: Verifikasi status add-on

Konfirmasikan bahwa add-on berhasil diinstal.

Untuk memverifikasi status add-on
  • Jalankan perintah berikut. Ganti cluster-name dengan nama cluster Amazon EKS Anda.

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

    Output yang diharapkan adalahACTIVE.

Langkah 5: Konfirmasikan pod agen sedang berjalan

Verifikasi bahwa CloudWatch pod agen berjalan di amazon-cloudwatch namespace.

Untuk mengonfirmasi bahwa pod agen sedang berjalan
  • Jalankan perintah berikut.

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

    Semua pod agen harus menampilkan Running status.

Verifikasi data di CloudWatch

Setelah Anda menyelesaikan penyiapan, data Container Insights muncul CloudWatch dalam waktu 3 hingga 5 menit.

Untuk memverifikasi data Container Insights
  1. Buka CloudWatch konsol di https://console.aws.amazon.com/cloudwatch/.

  2. Di panel navigasi, pilih Wawasan Kontainer.

  3. Verifikasi metrik tersebut seperti node_cpu_utilization dan pod_memory_utilization muncul untuk cluster Anda.

Pemecahan masalah

Gunakan panduan berikut untuk mengatasi masalah umum saat Anda menginstal Enhanced Container Insights (Classic) di Amazon EKS.

Add-on status menunjukkan CREATE_FAILED atau DEGRADED

Gejala: Saat Anda berlariaws eks describe-addon, status menunjukkan CREATE_FAILED atauDEGRADED.

Penyebab: Penginstalan add-on gagal karena izin IAM tidak mencukupi atau asosiasi Identitas Pod hilang.

Solusi: Selesaikan langkah-langkah berikut untuk mengatasi masalah ini.

  1. Jalankan perintah berikut untuk memeriksa informasi kesalahan terperinci. Ganti cluster-name dengan nama klaster Anda.

    aws eks describe-addon \ --cluster-name cluster-name \ --addon-name amazon-cloudwatch-observability \ --query "addon.health"
  2. Verifikasi bahwa peran IAM ada dan memiliki CloudWatchAgentServerPolicy terlampir.

  3. Verifikasi bahwa asosiasi Identitas Pod menargetkan namespace (amazon-cloudwatch) dan akun layanan (cloudwatch-agent) yang benar.

  4. Hapus add-on yang gagal dan instal ulang setelah Anda menyelesaikan masalah.

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

Metrik tidak muncul CloudWatch setelah 5 menit

Gejala: Pod agen menampilkan Running status, tetapi tidak ada metrik yang muncul CloudWatch setelah 5 menit.

Penyebab: A gen tidak dapat mengirim data ke CloudWatch karena pembatasan jaringan atau izin IAM yang salah.

Solusi: Selesaikan langkah-langkah berikut untuk mengatasi masalah ini.

  1. Pastikan grup keamanan VPC dan ACL jaringan mengizinkan lalu lintas HTTPS keluar (port 443) ke titik akhir. CloudWatch

  2. Periksa log agen untuk kesalahan izin atau batas waktu koneksi.

    kubectl logs -n amazon-cloudwatch -l app.kubernetes.io/name=cloudwatch-agent --tail=100 | grep -i "error\|timeout\|denied"
  3. Verifikasi bahwa peran IAM memiliki CloudWatchAgentServerPolicy kebijakan yang dilampirkan dan kebijakan kepercayaan memungkinkanpods.eks.amazonaws.com.

Pod agen terjebak di Pending atau CrashLoopBackOff

Gejala: Saat Anda menjalankankubectl get pods -n amazon-cloudwatch, satu atau lebih pod ditampilkan Pending atau ber CrashLoopBackOff status.

Penyebab: Pod agen tidak dapat memulai karena sumber daya node tidak mencukupi, kegagalan penarikan gambar, atau kehilangan izin.

Solusi: Selesaikan langkah-langkah berikut untuk mengatasi masalah ini.

  1. Periksa acara pod untuk pesan kesalahan terperinci.

    kubectl describe pod -n amazon-cloudwatch -l app.kubernetes.io/name=cloudwatch-agent
  2. Pastikan node Anda memiliki CPU dan memori yang cukup tersedia untuk pod agen.

  3. Pastikan add-on EKS Pod Identity Agent diinstal dan berjalan.

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

Langkah selanjutnya

Siap untuk upgrade? Untuk petunjuk langkah demi langkah untuk beralih dari Enhanced Container Insights (Klasik) ke oTel Container Insights, lihatBermigrasi dari Enhanced Container Insights (Classic) ke OTel Container Insights.