協助改進此頁面
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
若要為本使用者指南貢獻內容,請點選每個頁面右側面板中的在 GitHub 上編輯此頁面連結。
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
偵測節點運作狀態問題並啟用自動節點修復
節點運作狀態是指 Kubernetes 節點有效執行工作負載的操作狀態和功能。運作狀態良好的節點會維持預期的網路連線能力、有足夠的運算和儲存資源,而且可以成功執行工作負載而不會中斷。
為了協助在 EKS 叢集中維護正常運作的節點,EKS 提供節點監控代理程式和自動節點修復。這些功能會透過 EKS Auto Mode 運算自動啟用。您也可以搭配 EKS 受管節點群組和 Karpenter 使用自動節點修復,也可以搭配 AWS Fargate 以外的任何 EKS 運算類型使用 EKS 節點監控代理程式。EKS 節點監控代理程式和自動節點修復在一起使用時最有效,但也可以在 EKS 叢集中個別使用。
重要
節點監控代理程式與節點自動修復功能僅適用於 Linux。這些功能不適用於 Windows。
節點監控代理程式
EKS 節點監控代理程式會讀取節點日誌,以偵測運作狀態問題。它會剖析日誌,以偵測故障並顯示節點運作狀態的相關資訊。對於偵測到的每個問題類別,代理程式會將專用 NodeCondition 套用至工作者節點。如需 EKS 節點監控代理程式偵測到的節點運作狀態問題詳細資訊,請參閱 使用 EKS 節點監控代理程式偵測節點運作狀態問題。
EKS Auto Mode 運算包含節點監控代理程式。對於其他 EKS 運算類型,您可以將節點監控代理程式新增為 EKS 附加元件,也可以使用 Helm 等 Kubernetes 工具進行管理。如需詳細資訊,請參閱設定節點監控代理程式。
使用 EKS 節點監控代理程式時,下列類別的節點運作狀態問題會呈現為節點條件。請注意,Ready、 DiskPressure和 MemoryPressure是標準 Kubernetes 節點條件,即使沒有 EKS 節點監控代理程式也會呈現。
| 節點條件 | Description |
|---|---|
|
AcceleratedHardwareReady |
AcceleratedHardwareReady 指出節點上的加速硬體 (GPU、Neuron) 是否正常運作。 |
|
ContainerRuntimeReady |
ContainerRuntimeReady 指出容器執行時間 (容器等) 是否正常運作且能夠執行容器。 |
|
DiskPressure |
DiskPressure 是標準 Kubernetes 條件,表示節點遇到磁碟壓力 (磁碟空間不足或 I/O 高)。 |
|
KernelReady |
KernelReady 指出核心是否正常運作,而不會發生嚴重錯誤、恐慌或資源耗盡。 |
|
MemoryPressure |
MemoryPressure 是標準 Kubernetes 條件,表示節點正經歷記憶體壓力 (可用的記憶體不足)。 |
|
NetworkingReady |
NetworkingReady 指出節點的網路堆疊是否正常運作 (介面、路由、連線能力)。 |
|
StorageReady |
StorageReady 指出節點的儲存子系統是否正常運作 (磁碟、檔案系統、I/O)。 |
|
備妥 |
Ready 是標準 Kubernetes 條件,表示節點運作狀態良好且已準備好接受 Pod。 |
自動節點修復
EKS 自動節點修復會持續監控節點運作狀態、對偵測到的問題做出反應,並盡可能取代或重新啟動節點。這可在最少手動介入的情況下改善叢集可靠性,並有助於減少應用程式停機時間。
EKS 自動節點修復本身會回應 kubelet Ready的條件、任何手動刪除的節點物件,以及無法加入叢集的 EKS 受管節點群組執行個體。在安裝節點監控代理程式的情況下啟用 EKS 自動節點修復時,EKS 自動節點修復會回應其他節點條件:AcceleratedHardwareReady、ContainerRuntimeReady、KernelReady、 NetworkingReady和 StorageReady。
EKS 自動節點修復不會回應標準 Kubernetes DiskPressureMemoryPressure、 或 PIDPressure節點條件。這些條件通常表示應用程式行為、工作負載組態或資源限制的問題,而不是節點層級失敗,因此難以判斷適當的預設修復動作。在這些情況下,工作負載會受到 Kubernetes 節點壓力移出行為
如需 EKS 自動節點修復的詳細資訊,請參閱 自動修復 EKS 叢集中的節點。