Pemecahan Masalah Wawasan Kontainer - Amazon CloudWatch

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

Pemecahan Masalah Wawasan Kontainer

Bagian-bagian berikut dapat membantu Anda jika Anda mengalami masalah yang terjadi dengan Wawasan Kontainer.

Deployment mengalami kegagalan di Amazon EKS atau Kubernetes

Jika agen tidak menerapkan deployment dengan benar di klaster Kubernetes, coba lakukan hal berikut:

  • Jalankan perintah berikut untuk mendapatkan daftar pod.

    kubectl get pods -n amazon-cloudwatch
  • Jalankan perintah berikut dan periksa peristiwa di bagian bawah output.

    kubectl describe pod pod-name -n amazon-cloudwatch
  • Jalankan perintah berikut untuk memeriksa log.

    kubectl logs pod-name -n amazon-cloudwatch

Kepanikan yang tidak sah: Tidak dapat mengambil data cadvisor dari kubelet

Jika deployment Anda gagal dan mengalami kesalahan Unauthorized panic: Cannot retrieve cadvisor data from kubelet, maka kubelet Anda mungkin tidak mengaktifkan mode otorisasi Webhook. Mode ini wajib digunakan untuk Wawasan Kontainer. Untuk informasi selengkapnya, lihat Memverifikasi prasyarat untuk Wawasan Kontainer di CloudWatch.

Menerapkan Wawasan Kontainer di sebuah klaster yang dihapus dan dibuat kembali di Amazon ECS

Jika Anda menghapus sebuah klaster Amazon ECS yang sudah ada yang tidak mengaktifkan Wawasan Kontainer, dan Anda kemudian membuat ulang klaster itu dengan nama yang sama, maka Anda tidak akan dapat mengaktifkan Wawasan Kontainer di klaster baru ini pada saat Anda membuat ulang klaster tersebut. Anda dapat mengaktifkan Wawasan Kontainer dengan membuat ulang, dan kemudian memasukkan perintah berikut:

aws ecs update-cluster-settings --cluster myCICluster --settings name=container Insights,value=enabled

Kesalahan titik akhir yang tidak valid

Jika Anda melihat pesan kesalahan yang mirip dengan berikut ini, periksa untuk memastikan bahwa Anda mengganti semua placeholder seperti cluster-name dan region-name dalam perintah yang Anda gunakan dengan informasi yang benar untuk penyebaran Anda.

"log": "2020-04-02T08:36:16Z E! cloudwatchlogs: code: InvalidEndpointURL, message: invalid endpoint uri, original error: &url.Error{Op:\"parse\", URL:\"https://logs.{{region_name}}.amazonaws.com/\", Err:\"{\"}, &awserr.baseError{code:\"InvalidEndpointURL\", message:\"invalid endpoint uri\", errs:[]error{(*url.Error)(0xc0008723c0)}}\n",

Metrik-metrik yang tidak ditampilkan di konsol

Jika Anda tidak melihat metrik Container Insights di dalamnya AWS Management Console, pastikan Anda telah menyelesaikan penyiapan Container Insights. Metrik-metrik tidak ditampilkan sebelum Wawasan Kontainer telah disiapkan sepenuhnya. Untuk informasi selengkapnya, lihat Menyiapkan Wawasan Kontainer.

Pod metrik hilang di Amazon EKS atau Kubernetes setelah melakukan upgrade pada klaster

Bagian ini mungkin berguna jika semua atau beberapa metrik pod hilang setelah Anda menerapkan CloudWatch agen sebagai daemonset pada klaster baru atau yang ditingkatkan, atau Anda melihat log kesalahan dengan pesan tersebut. W! No pod metric collected

Kesalahan-kesalahan ini dapat disebabkan oleh perubahan dalam runtime kontainer, seperti containerd atau docker systemd cgroup driver. Anda biasanya dapat memecahkan masalah ini dengan memperbarui manifes deployment Anda sehingga soket containerd dari host dipasang ke kontainer. Lihat contoh berikut ini:

# For full example see https://github.com/aws-samples/amazon-cloudwatch-container-insights/blob/latest/k8s-deployment-manifest-templates/deployment-mode/daemonset/container-insights-monitoring/cwagent/cwagent-daemonset.yaml apiVersion: apps/v1 kind: DaemonSet metadata: name: cloudwatch-agent namespace: amazon-cloudwatch spec: template: spec: containers: - name: cloudwatch-agent # ... # Don't change the mountPath volumeMounts: # ... - name: dockersock mountPath: /var/run/docker.sock readOnly: true - name: varlibdocker mountPath: /var/lib/docker readOnly: true - name: containerdsock # NEW mount mountPath: /run/containerd/containerd.sock readOnly: true # ... volumes: # ... - name: dockersock hostPath: path: /var/run/docker.sock - name: varlibdocker hostPath: path: /var/lib/docker - name: containerdsock # NEW volume hostPath: path: /run/containerd/containerd.sock

Tidak ada metrik pod saat menggunakan Bottlerocket untuk Amazon EKS

Bottlerocket adalah sebuah sistem operasi sumber terbuka berbasis Linux yang dibangun dengan tujuan oleh AWS untuk menjalankan kontainer.

Bottlerocket menggunakan jalur containerd yang berbeda pada host, sehingga Anda perlu mengubah volumenya ke lokasinya. Jika tidak, maka Anda akan melihat sebuah kesalahan di log yang mencakup W! No pod metric collected. Lihat contoh berikut ini.

volumes: # ... - name: containerdsock hostPath: # path: /run/containerd/containerd.sock # bottlerocket does not mount containerd sock at normal place # https://github.com/bottlerocket-os/bottlerocket/commit/91810c85b83ff4c3660b496e243ef8b55df0973b path: /run/dockershim.sock

Tidak ada metrik filesystem kontainer saat menggunakan runtime containerd untuk Amazon EKS atau Kubernetes

Masalah ini adalah masalah yang diketahui dan sedang dikerjakan oleh kontributor komunitas. Untuk informasi selengkapnya, lihat Metrik penggunaan disk untuk containerd dan metrik sistem file container tidak didukung oleh cadvisor untuk containerd on. GitHub

Volume log yang tidak terduga meningkat dari CloudWatch agen saat mengumpulkan metrik Prometheus

Ini adalah regresi yang diperkenalkan dalam versi 1.247347.6b250880 dari agen. CloudWatch Regresi ini telah diperbaiki dalam versi agen yang lebih baru. Dampaknya terbatas pada skenario di mana pelanggan mengumpulkan log CloudWatch agen itu sendiri dan juga menggunakan Prometheus. Untuk informasi lebih lanjut, lihat agen [prometheus] mencetak semua metrik yang tergores saat masuk. GitHub

Citra docker terbaru yang disebutkan dalam catatan rilis tidak ditemukan dari Dockerhub

Kami memperbarui catatan rilis dan tanda pada Github sebelum kami memulai rilis aktual secara internal. Biasanya dibutuhkan waktu 1-2 minggu untuk melihat citra docker terbaru pada registri setelah kita bertemu nomor versinya di Github. Tidak ada rilis malam untuk gambar wadah CloudWatch agen. Anda dapat membangun gambar langsung dari sumber di lokasi berikut: https://github.com/aws/amazon-cloudwatch-agent/tree/main/amazon-cloudwatch-container-insights/cloudwatch-agent-dockerfile

CrashLoopBackoff kesalahan pada CloudWatch agen

Jika Anda melihat CrashLoopBackOff kesalahan untuk CloudWatch agen, pastikan izin IAM Anda disetel dengan benar. Untuk informasi selengkapnya, lihat Memverifikasi prasyarat untuk Wawasan Kontainer di CloudWatch.

CloudWatch agen atau pod Fluentd terjebak dalam keadaan tertunda

Jika Anda memiliki CloudWatch agen atau pod Fluentd yang terjebak Pending atau mengalami FailedScheduling kesalahan, tentukan apakah node Anda memiliki sumber daya komputasi yang cukup berdasarkan jumlah inti dan jumlah RAM yang dibutuhkan oleh agen. Masukkan perintah berikut untuk mendeskripsikan pod:

kubectl describe pod cloudwatch-agent-85ppg -n amazon-cloudwatch