

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

# Panduan pengaturan (AWS CLI)
<a name="container-insights-eks-classic-setup"></a>

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

**Mode pemeliharaan**  
Enhanced Container Insights (Classic) dalam mode pemeliharaan. Untuk penerapan baru, kami sarankan. [Wawasan Kontainer OTel (Direkomendasikan)](container-insights-eks-otel.md)

## Prasyarat
<a name="container-insights-eks-classic-setup-prereqs"></a>

Sebelum Anda mulai, verifikasi bahwa Anda memenuhi persyaratan berikut.
+ Cluster Amazon EKS yang sudah 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
+ `kubectl`dikonfigurasi untuk berkomunikasi dengan cluster target Anda
+ Izin IAM:`eks:CreateAddon`,,`eks:DescribeAddon`,`iam:CreateServiceLinkedRole`, dan `iam:CreateRole` `iam:AttachRolePolicy`
+ Add-on EKS Pod Identity Agent yang diinstal pada klaster Anda, atau IAM Roles for Service Accounts (IRSA) yang dikonfigurasi
+ Akses internet keluar dari cluster ke titik akhir CloudWatch 

## Langkah 1: Buat peran IAM
<a name="container-insights-eks-classic-setup-step1"></a>

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"]
       }]
     }'
   ```

1. Lampirkan kebijakan yang `CloudWatchAgentServerPolicy` dikelola 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
<a name="container-insights-eks-classic-setup-step2"></a>

Kaitkan peran IAM dengan akun layanan CloudWatch agen di klaster 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
<a name="container-insights-eks-classic-setup-step3"></a>

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
<a name="container-insights-eks-classic-setup-step4"></a>

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 adalah`ACTIVE`.

## Langkah 5: Konfirmasikan pod agen sedang berjalan
<a name="container-insights-eks-classic-setup-step5"></a>

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

**Untuk mengonfirmasi pod agen sedang berjalan**
+ Jalankan perintah berikut.

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

  Semua pod agen harus menunjukkan `Running` status.

## Verifikasi data di CloudWatch
<a name="container-insights-eks-classic-setup-verify"></a>

Setelah Anda menyelesaikan penyiapan, data Wawasan Kontainer muncul CloudWatch dalam waktu 3 hingga 5 menit.

**Untuk memverifikasi data Wawasan Kontainer**

1. Buka CloudWatch konsol di [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/).

1. Di panel navigasi, pilih **Wawasan Kontainer**.

1. Verifikasi bahwa metrik seperti `node_cpu_utilization` dan `pod_memory_utilization` muncul untuk klaster Anda.

## Pemecahan masalah
<a name="container-insights-eks-classic-setup-troubleshoot"></a>

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
<a name="container-insights-eks-classic-setup-ts-create-failed"></a>

**Gejala:** Saat Anda berlari`aws eks describe-addon`, status menunjukkan `CREATE_FAILED` atau`DEGRADED`.

**Penyebab:** Instalasi add-on gagal karena izin IAM yang tidak mencukupi atau asosiasi Identitas Pod yang 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"
   ```

1. Verifikasi bahwa peran IAM ada dan memiliki `CloudWatchAgentServerPolicy` terlampir.

1. Verifikasi bahwa asosiasi Pod Identity menargetkan namespace (`amazon-cloudwatch`) dan service account (`cloudwatch-agent`) yang benar.

1. 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
<a name="container-insights-eks-classic-setup-ts-no-metrics"></a>

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

**Penyebab:** Agen tidak dapat mengirim data CloudWatch karena pembatasan jaringan atau izin IAM yang salah.

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

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

1. 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"
   ```

1. Verifikasi bahwa peran IAM memiliki `CloudWatchAgentServerPolicy` kebijakan yang dilampirkan dan bahwa kebijakan kepercayaan memungkinkan`pods.eks.amazonaws.com`.

### Pod agen terjebak di Pending atau CrashLoopBackOff
<a name="container-insights-eks-classic-setup-ts-crashloop"></a>

**Gejala:** Saat Anda menjalankan`kubectl get pods -n amazon-cloudwatch`, satu atau beberapa pod akan ditampilkan `Pending` atau `CrashLoopBackOff` berstatus.

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

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

1. Periksa peristiwa pod untuk mengetahui pesan kesalahan mendetail.

   ```
   kubectl describe pod -n amazon-cloudwatch -l app.kubernetes.io/name=cloudwatch-agent
   ```

1. Verifikasi bahwa node Anda memiliki CPU dan memori yang cukup untuk pod agen.

1. Verifikasi bahwa add-on EKS Pod Identity Agent telah diinstal dan dijalankan.

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

## Langkah selanjutnya
<a name="container-insights-eks-classic-setup-next"></a>

Siap untuk meng-upgrade? Untuk petunjuk langkah demi langkah untuk beralih dari Enhanced Container Insights (Classic) ke OTel Container Insights, lihat. [Bermigrasi dari Enhanced Container Insights (Classic) ke OTel Container Insights](container-insights-eks-migrate-from-classic.md)