Bantu tingkatkan halaman ini
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Untuk berkontribusi pada panduan pengguna ini, pilih Edit halaman ini pada GitHub tautan yang terletak di panel kanan setiap halaman.
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mendeteksi masalah kesehatan simpul dengan agen pemantauan simpul EKS
Topik ini merinci masalah kesehatan simpul yang terdeteksi oleh agen pemantau simpul EKS, bagaimana masalah tersebut muncul sebagai kondisi atau peristiwa node, dan cara mengonfigurasi agen pemantauan node.
Agen pemantauan simpul EKS dapat digunakan dengan atau tanpa perbaikan simpul otomatis EKS. Untuk informasi lebih lanjut tentang perbaikan node otomatis EKS, lihatSecara otomatis memperbaiki node di kluster EKS.
Kode sumber untuk agen pemantauan simpul EKS dipublikasikan GitHub di aws/ eks-node-monitoring-agent
Masalah kesehatan simpul
Tabel berikut menjelaskan masalah kesehatan simpul yang dapat dideteksi oleh agen pemantauan node. Ada dua jenis masalah:
-
Kondisi — Masalah terminal yang menjamin tindakan remediasi seperti penggantian instance atau reboot. Ketika perbaikan otomatis diaktifkan, Amazon EKS akan melakukan tindakan perbaikan, baik sebagai penggantian node atau reboot. Untuk informasi selengkapnya, lihat Kondisi simpul.
-
Event — Masalah sementara atau konfigurasi node sub-optimal. Tidak ada tindakan perbaikan otomatis yang akan terjadi. Untuk informasi selengkapnya, lihat Peristiwa simpul.
AcceleratedHardware masalah kesehatan simpul
Kondisi pemantauan adalah AcceleratedHardwareReady untuk masalah dalam tabel berikut yang memiliki tingkat keparahan “Kondisi”. Peristiwa dan kondisi dalam tabel di bawah ini adalah untuk masalah kesehatan node terkait NVIDIA dan Neuron.
| Nama | Kepelikan | Deskripsi | Tindakan Perbaikan |
|---|---|---|---|
|
DCGMDiagnosticKegagalan |
Kondisi |
Kasus uji dari rangkaian uji diagnostik aktif DCGM gagal. |
Tidak ada |
|
DCGMError |
Kondisi |
Koneksi ke proses host DCGM terputus atau tidak dapat dibuat. |
Tidak ada |
|
DCGMFieldKesalahan [Kode] |
Peristiwa |
DCGM mendeteksi degradasi GPU melalui pengenal bidang. |
Tidak ada |
|
DCGMHealthKode [Kode] |
Peristiwa |
Pemeriksaan kesehatan DCGM gagal dengan cara yang tidak fatal. |
Tidak ada |
|
DCGMHealthKode [Kode] |
Kondisi |
Pemeriksaan kesehatan DCGM gagal secara fatal. |
Tidak ada |
|
Neuron DMAError |
Kondisi |
Mesin DMA mengalami kesalahan yang tidak dapat dipulihkan. |
Ganti |
|
HBMUncorrectableKesalahan Neuron |
Kondisi |
HBM mengalami kesalahan yang tidak dapat diperbaiki dan menghasilkan hasil yang salah. |
Ganti |
|
NCUncorrectableKesalahan Neuron |
Kondisi |
Kesalahan memori Neuron Core yang tidak dapat diperbaiki terdeteksi. |
Ganti |
|
SRAMUncorrectableKesalahan Neuron |
Kondisi |
SRAM on-chip mengalami kesalahan paritas dan menghasilkan hasil yang salah. |
Ganti |
|
NvidiaDeviceCountMismatch |
Peristiwa |
Jumlah yang GPUs terlihat melalui NVMLtidak konsisten dengan jumlah perangkat NVIDIA pada sistem file. |
Tidak ada |
|
NvidiaDoubleBitError |
Kondisi |
Kesalahan bit ganda dihasilkan oleh driver GPU. |
Ganti |
|
Nvidia NCCLError |
Peristiwa |
Segfault terjadi di perpustakaan NVIDIA Collective Communications ( |
Tidak ada |
|
NVLinkKesalahan Nvidia |
Kondisi |
NVLink kesalahan dilaporkan oleh driver GPU. |
Ganti |
|
PCIeKesalahan Nvidia |
Peristiwa |
PCIe tayangan ulang dipicu untuk pulih dari kesalahan transmisi. |
Tidak ada |
|
NvidiaPageRetirement |
Peristiwa |
Pengemudi GPU telah menandai halaman memori untuk pensiun. Ini dapat terjadi jika ada kesalahan bit ganda tunggal atau dua kesalahan bit tunggal ditemui di alamat yang sama. |
Tidak ada |
|
NvidiaPowerError |
Peristiwa |
Pemanfaatan daya GPUs melanggar ambang batas yang diizinkan. |
Tidak ada |
|
NvidiaThermalError |
Peristiwa |
Status termal GPUs melanggar ambang batas yang diizinkan. |
Tidak ada |
|
Kesalahan NvidiaXid [Kode] |
Kondisi |
Terjadi kesalahan GPU kritis. |
Ganti atau Reboot |
|
Peringatan NvidiaXid [Kode] |
Peristiwa |
Terjadi kesalahan GPU non-kritis. |
Tidak ada |
Kode kesalahan NVIDIA XID
Agen pemantauan node mendeteksi kesalahan NVIDIA XID dari log kernel GPU. Kesalahan XID terbagi dalam dua kategori:
-
Kode XID terkenal — Kesalahan kritis yang mengatur kondisi node (
AcceleratedHardwareReady=False) dan memicu perbaikan otomatis saat diaktifkan. Format kode alasannya adalahNvidiaXID[Code]Error. Kode XID terkenal yang dideteksi agen pemantau simpul EKS mungkin tidak mewakili daftar lengkap kode NVIDIA XID yang memerlukan tindakan perbaikan. -
Kode XID tidak dikenal — Logging sebagai event Kubernetes saja. Ini tidak memicu perbaikan otomatis. Format kode alasannya adalah
NvidiaXID[Code]Warning. Untuk menyelidiki kesalahan XID yang tidak diketahui, tinjau log kernel Anda dengandmesg | grep -i nvrm.
Untuk informasi selengkapnya tentang kesalahan XID, lihat Kesalahan Xid
Tabel berikut mencantumkan kode XID yang terkenal, artinya, dan tindakan perbaikan node default jika diaktifkan.
| Kode XID | Deskripsi | Tindakan Perbaikan |
|---|---|---|
|
13 |
Pengecualian Mesin Grafis — Terjadi kesalahan mesin grafis GPU, biasanya disebabkan oleh masalah perangkat lunak atau bug driver. |
Boot ulang |
|
31 |
Kesalahan halaman memori GPU — Aplikasi mencoba mengakses memori GPU yang tidak dipetakan atau dapat diakses. |
Boot ulang |
|
48 |
Kesalahan ECC Bit Ganda - Kesalahan bit ganda yang tidak dapat diperbaiki terjadi dalam memori GPU, yang menunjukkan potensi degradasi perangkat keras. |
Boot ulang |
|
63 |
Acara pemetaan ulang memori GPU - Driver GPU memetakan ulang sebagian memori GPU karena kesalahan yang terdeteksi. Ini sering dapat dipulihkan. |
Boot ulang |
|
64 |
Kegagalan pemetaan ulang memori GPU - GPU tidak dapat memetakan ulang memori yang rusak, menunjukkan masalah perangkat keras. |
Boot ulang |
|
74 |
NVLink Kesalahan - Terjadi kesalahan pada NVLink interkoneksi berkecepatan tinggi antara GPUs. |
Ganti |
|
79 |
GPU telah jatuh dari bus — GPU tidak lagi dapat diakses melalui PCIe, biasanya menunjukkan kegagalan perangkat keras atau masalah daya. |
Ganti |
|
94 |
Kesalahan memori yang terkandung — Terjadi kesalahan memori tetapi terkandung dan tidak mempengaruhi aplikasi lain. |
Boot ulang |
|
95 |
Kesalahan memori yang tidak terkendali — Terjadi kesalahan memori yang mungkin memengaruhi aplikasi atau memori sistem lain. |
Boot ulang |
|
119 |
GSP RPC Timeout — Komunikasi dengan Prosesor Sistem GPU habis waktu, mungkin karena masalah firmware. |
Ganti |
|
120 |
Kesalahan GSP - Terjadi kesalahan pada Prosesor Sistem GPU. |
Ganti |
|
121 |
Kesalahan C2C - Terjadi kesalahan pada chip-to-chip interkoneksi (digunakan dalam multi-die). GPUs |
Ganti |
|
140 |
ECC Unrecover Error - Kesalahan ECC lolos dari penahanan dan mungkin memiliki data yang rusak. |
Ganti |
Untuk melihat kondisi node saat ini yang terkait dengan kesehatan GPU, jalankan perintah berikut.
kubectl get nodes -o custom-columns='NAME:.metadata.name,ACCELERATOR_READY:.status.conditions[?(@.type=="AcceleratedHardwareReady")].status,REASON:.status.conditions[?(@.type=="AcceleratedHardwareReady")].reason'
Untuk melihat peristiwa terkait XID di cluster Anda, jalankan salah satu perintah berikut.
kubectl get events | grep -i "NvidiaXID"
ContainerRuntime masalah kesehatan simpul
Kondisi pemantauan adalah ContainerRuntimeReady untuk masalah dalam tabel berikut yang memiliki tingkat keparahan “Kondisi”.
| Nama | Kepelikan | Deskripsi | Tindakan Perbaikan |
|---|---|---|---|
|
ContainerRuntimeFailed |
Peristiwa |
Runtime container gagal membuat container, kemungkinan terkait dengan masalah yang dilaporkan jika terjadi berulang kali. |
Tidak ada |
|
DeprecatedContainerdConfiguration |
Peristiwa |
Gambar kontainer menggunakan manifes gambar usang versi 2, skema 1 baru-baru ini ditarik ke node melalui. |
Tidak ada |
|
KubeletFailed |
Peristiwa |
Kubelet memasuki keadaan gagal. |
Tidak ada |
|
LivenessProbeFailures |
Peristiwa |
Kegagalan probe keaktifan terdeteksi, berpotensi menunjukkan masalah kode aplikasi atau nilai batas waktu yang tidak mencukupi jika terjadi berulang kali. |
Tidak ada |
|
PodStuckTerminating |
Kondisi |
Sebuah Pod sedang atau macet terminating untuk waktu yang berlebihan, yang dapat disebabkan oleh kesalahan CRI yang mencegah perkembangan status pod. |
Ganti |
|
ReadinessProbeFailures |
Peristiwa |
Kegagalan probe kesiapan terdeteksi, berpotensi menunjukkan masalah kode aplikasi atau nilai batas waktu yang tidak mencukupi jika terjadi berulang kali. |
Tidak ada |
|
[Nama] RepeatedRestart |
Peristiwa |
Unit systemd sering restart. |
Tidak ada |
|
ServiceFailedToStart |
Peristiwa |
Unit systemd gagal memulai. |
Tidak ada |
Masalah kesehatan simpul kernel
Kondisi pemantauan adalah KernelReady untuk masalah dalam tabel berikut yang memiliki tingkat keparahan “Kondisi”.
| Nama | Kepelikan | Deskripsi | Tindakan Perbaikan |
|---|---|---|---|
|
AppBlocked |
Peristiwa |
Tugas telah diblokir untuk jangka waktu yang lama dari penjadwalan, biasanya disebabkan oleh diblokir pada input atau output. |
Tidak ada |
|
AppCrash |
Peristiwa |
Aplikasi pada node telah crash. |
Tidak ada |
|
ApproachingKernelPidMax |
Peristiwa |
Jumlah proses mendekati jumlah maksimum PIDs yang tersedia per |
Tidak ada |
|
ApproachingMaxOpenFiles |
Peristiwa |
Jumlah file yang terbuka mendekati jumlah maksimum file terbuka yang mungkin diberikan pengaturan kernel saat ini, setelah itu membuka file baru akan gagal. |
Tidak ada |
|
ConntrackExceededKernel |
Peristiwa |
Pelacakan koneksi melebihi maksimum untuk kernel dan koneksi baru tidak dapat dibuat, yang dapat mengakibatkan hilangnya paket. |
Tidak ada |
|
ExcessiveZombieProcesses |
Peristiwa |
Proses yang tidak dapat sepenuhnya direklamasi terakumulasi dalam jumlah besar, yang menunjukkan masalah aplikasi dan dapat menyebabkan mencapai batas proses sistem. |
Tidak ada |
|
ForkFailedOutOfPIDs |
Kondisi |
Panggilan fork atau exec gagal karena sistem kehabisan proses IDs atau memori, yang mungkin disebabkan oleh proses zombie atau kelelahan memori fisik. |
Ganti |
|
KernelBug |
Peristiwa |
Bug kernel terdeteksi dan dilaporkan oleh kernel Linux itu sendiri, meskipun ini kadang-kadang disebabkan oleh node dengan CPU tinggi atau penggunaan memori yang menyebabkan pemrosesan peristiwa tertunda. |
Tidak ada |
|
LargeEnvironment |
Peristiwa |
Jumlah variabel lingkungan untuk proses ini lebih besar dari yang diharapkan, berpotensi disebabkan oleh banyak layanan dengan |
Tidak ada |
|
RapidCron |
Peristiwa |
Pekerjaan cron berjalan lebih cepat daripada setiap lima menit pada node ini, yang dapat memengaruhi kinerja jika pekerjaan tersebut menghabiskan sumber daya yang signifikan. |
Tidak ada |
|
SoftLockup |
Peristiwa |
CPU terhenti untuk jangka waktu tertentu. |
Tidak ada |
Masalah kesehatan simpul jaringan
Kondisi pemantauan adalah NetworkingReady untuk masalah dalam tabel berikut yang memiliki tingkat keparahan “Kondisi”.
| Nama | Kepelikan | Deskripsi | Tindakan Perbaikan |
|---|---|---|---|
|
BandwidthInExceeded |
Peristiwa |
Paket telah diantrian atau dijatuhkan karena bandwidth agregat masuk melebihi maksimum untuk instance. |
Tidak ada |
|
BandwidthOutExceeded |
Peristiwa |
Paket telah diantrian atau dijatuhkan karena bandwidth agregat keluar melebihi maksimum untuk instance. |
Tidak ada |
|
ConntrackExceeded |
Peristiwa |
Pelacakan koneksi melebihi maksimum untuk instance dan koneksi baru tidak dapat dibuat, yang dapat mengakibatkan hilangnya paket. |
Tidak ada |
|
EFAErrorMetrik |
Peristiwa |
Metrik driver EFA menunjukkan ada antarmuka dengan penurunan kinerja. |
Tidak ada |
|
IPAMDInconsistentNegara |
Peristiwa |
Status pos pemeriksaan IPAMD pada disk tidak mencerminkan runtime IPs dalam container. |
Tidak ada |
|
IPAMDNoIPs |
Peristiwa |
IPAMD kehabisan alamat IP. |
Tidak ada |
|
IPAMDNotSiap |
Kondisi |
IPAMD gagal terhubung ke server API. |
Ganti |
|
IPAMDNotBerlari |
Kondisi |
Proses Amazon VPC CNI tidak ditemukan berjalan. |
Ganti |
|
IPAMDRepeatedlyMulai ulang |
Peristiwa |
Beberapa restart dalam layanan IPAMD telah terjadi. |
Tidak ada |
|
InterfaceNotRunning |
Kondisi |
Antarmuka ini tampaknya tidak berjalan atau ada masalah jaringan. |
Ganti |
|
InterfaceNotUp |
Kondisi |
Antarmuka ini tampaknya tidak aktif atau ada masalah jaringan. |
Ganti |
|
KubeProxyNotReady |
Peristiwa |
Kube-proxy gagal menonton atau mencantumkan sumber daya. |
Tidak ada |
|
LinkLocalExceeded |
Peristiwa |
Paket dijatuhkan karena PPS lalu lintas ke layanan proxy lokal melebihi maksimum antarmuka jaringan. |
Tidak ada |
|
MACAddressPolicyMisconfigured |
Peristiwa |
Konfigurasi tautan systemd-networkd memiliki nilai yang salah. |
Tidak ada |
|
MissingDefaultRoutes |
Peristiwa |
Ada aturan rute default yang hilang. |
Tidak ada |
|
Hilang IPRoutes |
Peristiwa |
Ada rute yang hilang untuk Pod IPs. |
Tidak ada |
|
Hilang IPRules |
Peristiwa |
Ada aturan yang hilang untuk Pod IPs. |
Tidak ada |
|
MissingLoopbackInterface |
Kondisi |
Antarmuka loopback hilang dari instance ini, menyebabkan kegagalan layanan tergantung pada konektivitas lokal. |
Ganti |
|
NetworkSysctl |
Peristiwa |
|
Tidak ada |
|
PPSExceeded |
Peristiwa |
Paket telah diantrian atau dijatuhkan karena PPS dua arah melebihi maksimum untuk instance. |
Tidak ada |
|
PortConflict |
Peristiwa |
Jika sebuah Pod menggunakan HostPort, ia dapat menulis |
Tidak ada |
|
UnexpectedRejectRule |
Peristiwa |
Sebuah tak terduga |
Tidak ada |
Masalah kesehatan simpul penyimpanan
Kondisi pemantauan adalah StorageReady untuk masalah dalam tabel berikut yang memiliki tingkat keparahan “Kondisi”.
| Nama | Kepelikan | Deskripsi | Tindakan Perbaikan |
|---|---|---|---|
|
EBSInstanceIOPSExceeded |
Peristiwa |
IOPS maksimum untuk instance terlampaui. |
Tidak ada |
|
EBSInstanceThroughputExceeded |
Peristiwa |
Throughput Maksimum untuk instance terlampaui. |
Tidak ada |
|
EBSVolumeIOPSExceeded |
Peristiwa |
IOPS maksimum untuk Volume EBS tertentu terlampaui. |
Tidak ada |
|
EBSVolumeThroughputExceeded |
Peristiwa |
Throughput Maksimum untuk volume Amazon EBS tertentu terlampaui. |
Tidak ada |
|
EtcHostsMountFailed |
Peristiwa |
Pemasangan kubelet yang dihasilkan |
Tidak ada |
|
IODelays |
Peristiwa |
Penundaan input atau output terdeteksi dalam suatu proses, berpotensi menunjukkan penyediaan input-output yang tidak mencukupi jika berlebihan. |
Tidak ada |
|
KubeletDiskUsageSlow |
Peristiwa |
|
Tidak ada |
|
XFSSmallAverageClusterSize |
Peristiwa |
Ukuran XFS Average Cluster kecil, menunjukkan fragmentasi ruang kosong yang berlebihan. Ini dapat mencegah pembuatan file meskipun ada inode atau ruang kosong yang tersedia. |
Tidak ada |
Konfigurasikan agen pemantauan simpul
Agen pemantauan simpul EKS digunakan sebagai DaemonSet file. Saat Anda menerapkannya sebagai add-on EKS, Anda dapat menyesuaikan instalasi dengan nilai konfigurasi berikut. Untuk konfigurasi default, rujuk bagan Helm
| Opsi Konfigurasi | Deskripsi |
|---|---|
|
|
Permintaan sumber daya CPU untuk agen pemantauan. |
|
|
Permintaan sumber daya memori untuk agen pemantauan. |
|
|
Batas sumber daya CPU untuk agen pemantauan. |
|
|
Batas sumber daya memori untuk agen pemantauan. |
|
|
Toleransi untuk menjadwalkan agen pemantauan pada node yang tercemar. |
|
|
Argumen baris perintah tambahan untuk diteruskan ke agen pemantauan. |
catatan
Anda dapat mengkonfigurasi hostname-override dan verbosity seperti monitoringAgent.additionalArgs dengan add-on EKS atau instalasi Helm. Saat ini Anda tidak dapat menyesuaikan probe-address (8002) atau metrics-address (8003) agen pemantauan node melalui argumen tambahan dengan add-on EKS atau instalasi Helm.
Agen pemantauan node mencakup komponen server NVIDIA DCGM (Data Center GPU Manager) (nv-hostengine) untuk memantau NVIDIA. GPUs Komponen ini hanya berjalan pada node yang merupakan tipe instans GPU NVIDIA seperti yang nodeAffinity ditunjukkan oleh bagan Helm
Saat Anda menggunakan agen pemantauan simpul EKS sebagai add-on EKS, Anda dapat menyesuaikan instalasi NVIDIA DCGM dengan nilai konfigurasi berikut.
| Opsi Konfigurasi | Deskripsi |
|---|---|
|
|
Permintaan sumber daya CPU untuk agen DCGM. |
|
|
Permintaan sumber daya memori untuk agen DCGM. |
|
|
Batas sumber daya CPU untuk agen DCGM. |
|
|
Batas sumber daya memori untuk agen DCGM. |
|
|
Toleransi untuk penjadwalan agen DCGM pada node yang tercemar. |
Anda dapat menggunakan perintah AWS CLI berikut untuk mendapatkan informasi yang berguna tentang versi dan skema untuk add-on agen pemantauan simpul EKS EKS.
Dapatkan versi add-on agen terbaru untuk versi Kubernetes Anda. Ganti 1.35 dengan versi Kubernetes Anda.
aws eks describe-addon-versions \ --addon-name eks-node-monitoring-agent \ --kubernetes-version 1.35 \ --query='addons[].addonVersions[].addonVersion'
Dapatkan skema add-on agen yang didukung di add-on EKS. Ganti v1.5.1-eksbuild.1 dengan versi agen Anda.
aws eks describe-addon-configuration \ --addon-name eks-node-monitoring-agent \ --addon-version v1.5.1-eksbuild.1