AMS Accelerate 中 Amazon EKS 監控和事件管理的基準警示 - AMS Accelerate 使用者指南

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

AMS Accelerate 中 Amazon EKS 監控和事件管理的基準警示

驗證警示後,AMS 會為 Amazon EKS 啟用下列警示,然後為您選取的 Amazon EKS 叢集進行監控和事件管理。服務水準協議 (SLAs) 和服務水準目標 (SLOs回應時間取決於您選擇的帳戶服務層 (Plus、Premium)。如需詳細資訊,請參閱 AMS Accelerate 中的事件報告和服務請求

提醒和動作

下表列出 AMS 採取的 Amazon EKS 警示和個別動作:

警示 閾值 動作

容器 OOM 已終止

過去 10 分鐘內重新啟動的容器總數至少為 1,且 Pod 中的 Kubernetes 容器已在過去 10 分鐘內因「OOMKilled」而終止。

AMS 會調查 OOM 刪除是否因為達到容器限制或記憶體超額遞交而導致,然後建議您採取修正動作。

Pod 任務失敗

Kubernetes 任務無法完成。失敗是透過至少有一個失敗的任務狀態來表示。

AMS 會調查 Kubernetes 任務或對應 Cron 任務失敗的原因,然後為您提供修正動作的建議。

StatefulSet Down

準備好提供流量的複本數量,與每個 StatefulSet 的現有複本目前數量不符至少 1 分鐘。

AMS 透過檢閱 Pod 事件中的錯誤訊息和 Pod 日誌中的錯誤日誌程式碼片段,判斷 Pod 為何未就緒,然後建議您採取修正動作。

HPA 擴展功能

由於狀態條件「AbleToScale」至少 2 分鐘為 false,Horizontal Pod Autoscaler (HPA) 無法擴展。

AMS 會判斷哪些 Kubernetes Horizontal Pod Autoscaler (HPA) 無法為其後續工作負載資源擴展 Pod,例如部署或 StatefulSet。

HPA 指標可用性

由於狀態條件「ScalingActive」至少 2 分鐘為 false,Horizontal Pod Autoscaler (HPA) 無法收集指標。

AMS 會判斷 HPA 為何無法收集指標,例如與伺服器組態問題或 RBAC 授權問題相關的指標。

Pod 未就緒

Kubernetes Pod 會維持在非執行中狀態 (例如待定、未知或失敗) 超過 15 分鐘。

AMS 會調查受影響的 Pod (s) 以取得詳細資訊、檢閱 Pod 日誌是否有相關的錯誤和事件,然後為您提供修正動作的建議。

Pod 損毀迴圈

在 1 小時期間內,Pod 容器至少每 15 分鐘重新啟動一次。

AMS 會調查 Pod 未啟動的原因,例如資源不足、另一個容器鎖定的檔案、另一個容器鎖定的資料庫、服務相依性失敗、外部服務的 DNS 問題,以及設定錯誤。

Daemonset 排程錯誤

至少有一個 Kubernetes Daemonset Pod 在 10 分鐘內排程錯誤。

AMS 會判斷為什麼 Daemonset 排程在節點上,而節點不應該執行。當將錯誤的 Pod nodeSelector/taints/affinities 套用到 Daemonset Pod 或節點 (節點集區) 上色且未排定要移出的現有 Pod 時,可能會發生這種情況。

Kubernetes API 錯誤

Kubernetes API 伺服器錯誤率在 2 分鐘內超過 3%。

AMS 會分析控制平面日誌,以判斷造成此警示的錯誤數量和類型,並識別主節點或等自動擴展群組的任何資源爭用問題。如果 API 伺服器未復原,AMS 會與 Amazon EKS 服務團隊互動。

Kubernetes API 延遲

對 Kubernetes API 伺服器提出請求的第 99 個百分位數延遲在 2 分鐘內超過 1 秒。

AMS 會分析控制平面日誌,以判斷導致延遲的錯誤數量和類型,並識別主節點或等自動擴展群組的任何資源爭用問題。如果 API 伺服器未復原,AMS 會與 Amazon EKS 服務團隊互動。

Kubernetes 用戶端憑證即將到期

用於向 Kubernetes API 伺服器進行身分驗證的用戶端憑證將在 24 小時內過期。

AMS 會傳送此通知,通知您叢集憑證將在 24 小時內過期。

節點未就緒

節點「就緒」條件狀態至少為 false 10 分鐘。

AMS 會調查節點條件和事件,例如網路問題,以防止 kubelet 存取 API 伺服器。

節點高 CPU

CPU 負載在 5 分鐘內超過 80%。

AMS 會判斷一或多個 Pod 是否使用異常大量的 CPU。然後,AMS 會與您確認請求、限制和 Pod 活動是否如預期。

偵測到節點 OOM 刪除

在 4 分鐘的時段內,節點至少會報告一個主機 OOM 刪除。

AMS 會判斷 OOM 終止是否因為達到容器限制或節點過度遞交而導致。如果應用程式活動正常,AMS 會建議您提出超額承諾和修訂 Pod 限制的請求和限制。

節點連線限制

在 5 分鐘內,目前連線追蹤項目數量與上限的比率超過 80%。

AMS 建議您了解每個核心的建議連線值。Kubernetes 節點會設定與節點的總記憶體容量成比例的 conntrack 最大值。高負載應用程式,特別是在較小的節點上,可以輕鬆超過連接最大值,導致連線重設和逾時。

節點時鐘未同步

2 分鐘期間的最小同步狀態為 0,以秒為單位的最大錯誤為 16 或更高。

AMS 會判斷網路時間通訊協定 (NTP) 是否已安裝並正常運作。

Pod 高 CPU

容器的 CPU 用量在 3 分鐘的速率內超過 80%,持續至少 2 分鐘。

AMS 會調查 Pod 日誌,以判斷耗用大量 CPU 的 Pod 任務。

Pod 高記憶體

在 2 分鐘內,容器的記憶體用量超過其指定記憶體限制的 80%。

AMS 會調查 Pod 日誌,以判斷耗用大量記憶體的 Pod 任務。

CoreDNS 關閉

CoreDNS 已從 Prometheus 目標探索消失超過 15 分鐘。

這是一個重要提醒,指出內部或外部叢集服務的網域名稱解析已停止。AMS 會檢查 CoreDNS Pod 的狀態、驗證 CoreDNS 組態、驗證指向 CoreDNS Pod 的 DNS 端點、驗證 CoreDNS 限制,並在您的核准下啟用 CoreDNS 除錯記錄。

CoreDNS 錯誤

CoreDNS 會在 10 分鐘內傳回超過 3% DNS 請求的 SERVFAIL 錯誤。

此提醒可能表示應用程式發生問題或組態錯誤。AMS 會檢查 CoreDNS Pod 的狀態、驗證 CoreDNS 組態、驗證指向 CoreDNS Pod 的 DNS 端點、驗證 CoreDNS 限制,並在您的核准下啟用 CoreDNS 除錯記錄。

CoreDNS 延遲

DNS 請求持續時間的第 99 個百分位數超過 4 秒,持續 10 分鐘。

此提醒 表示 CoreDNS 可能超載。AMS 會檢查 CoreDNS Pod 的狀態、驗證 CoreDNS 組態、驗證指向 CoreDNS Pod 的 DNS 端點、驗證 CoreDNS 限制,並在您的核准下啟用 CoreDNS 除錯記錄。

CoreDNS 轉送延遲

CoreDNS 轉送請求至 kube-dns 的回應時間第 99 個百分位數,在 10 分鐘的期間內超過 4 秒。

當 CoreDNS 不是授權伺服器或沒有 Domanin 名稱的快取項目時,CoreDNS 會將 DNS 請求轉送到上游 DNS 伺服器。此提醒表示 CoreDNS 可能過載,或上游 DNS 伺服器可能有問題。AMS 會檢查 CoreDNS Pod 的狀態、驗證 CoreDNS 組態、驗證指向 CoreDNS Pod 的 DNS 端點、驗證 CoreDNS 限制,並在您的核准下啟用 CoreDNS 除錯記錄。

CoreDNS 轉送錯誤

超過 3% 的 DNS 查詢在 5 分鐘內失敗。

當 CoreDNS 不是授權伺服器或沒有 Domanin 名稱的快取項目時,CoreDNS 會將 DNS 請求轉送到上游 DNS 伺服器。此提醒會向上游 DNS 伺服器發出可能組態錯誤或問題訊號。AMS 會檢查 CoreDNS Pod 的狀態、驗證 CoreDNS 組態、驗證指向 CoreDNS Pod 的 DNS 端點、驗證 CoreDNS 限制,並在您的核准下啟用 CoreDNS 除錯記錄。