本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
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 除錯記錄。 |