監控叢集效能與檢視日誌 - Amazon EKS

協助改進此頁面

若要為本使用者指南貢獻內容,請點選每個頁面右側面板中的在 GitHub 上編輯此頁面連結。

監控叢集效能與檢視日誌

您可以使用許多可用的監控或日誌記錄工具在 Amazon EKS 中觀察您的資料。您的 Amazon EKS 日誌資料可以串流至 AWS 服務或合作夥伴工具來進行資料分析。AWS 管理主控台 中有許多服務可提供資料以解決您的 Amazon EKS 問題。您也可以使用 AWS 支援的開放原始碼解決方案來監控 Amazon EKS 基礎結構

在 Amazon EKS 主控台左側導覽窗格中選取叢集後,您就可以透過選擇叢集名稱,以及可觀測性索引標籤,以檢視叢集執行狀況和詳細資訊。若要檢視有關部署到叢集的任何現有 Kubernetes 資源的詳細資訊,請參閱 檢視 AWS 管理主控台 中的 Kubernetes 資源

監控是維護 Amazon EKS 及 AWS 解決方案的可靠性、可用性和效能所不可或缺。建議您從 AWS 解決方案的所有部分收集監控數據。這樣,如果出現多點故障,您可以更輕鬆地進行偵錯。開始監控 Amazon EKS 前,請確保您的監控計畫可以解決下列問題。

  • 您的目標是什麼? 如果叢集大幅擴展,您是否需要即時通知?

  • 需要觀察哪些資源?

  • 您需要多長時間觀察這些資源? 貴公司是否希望快速應對風險?

  • 您要使用哪些工具? 如果您已在啟動過程中執行 AWS Fargate,則您可以使用內建的日誌路由器

  • 您要由誰來執行監控任務?

  • 當出現問題時,您希望向誰傳送通知?

在 Amazon EKS 上記錄和監控

Amazon EKS 提供了用於日誌監控和記錄的內建工具。對於支援的版本,可觀測性儀表板能讓您了解叢集的效能。它有助於您快速進行偵測、故障診斷及修復問題。除了監控功能之外,它還包含基於控制平面稽核日誌的清單。Kubernetes 控制平面公開了大量也可以在主控台外部抓取的指標。

控制平面日誌記錄工具記錄對叢集的所有 API 呼叫、稽核資訊 (擷取哪些使用者對叢集執行哪些操作),以及以角色為基礎的資訊。如需詳細資訊,請參閱《AWS 規範指引》中的在 Amazon EKS 上的記錄和監控

Amazon EKS 控制平面記錄從 Amazon EKS 控制平面將稽核和診斷日誌直接提供至您帳戶中的 CloudWatch Logs。這些日誌可讓您輕鬆執行叢集並確保叢集的安全。您可以選取所需的確切日誌類型,且日誌將以日誌串流傳送至 CloudWatch 中各個 Amazon EKS 叢集的群組中。如需詳細資訊,請參閱 將控制平面日誌傳送至 CloudWatch Logs

注意

當您檢查 Amazon CloudWatch 中的 Amazon EKS 驗證器日誌時,會顯示包含類似下列範例文字的項目。

level=info msg="mapping IAM role" groups="[]" role="arn:aws:iam::111122223333:role/XXXXXXXXXXXXXXXXXX-NodeManagerRole-XXXXXXXX" username="eks:node-manager"

預期應包含此文字的項目。username 是 Amazon EKS 內部服務角色,可對受管節點群組和 Fargate 執行特定操作。

對於低層級、可自訂的日誌記錄,可以使用 Kubernetes 日誌記錄

Amazon EKS 已與 AWS CloudTrail 整合,這項服務可提供由使用者、角色或 Amazon EKS 中 AWS 服務所採取之動作的記錄。CloudTrail 會將 Amazon EKS 的所有 API 呼叫擷取為事件。擷取的呼叫包括從 Amazon EKS 主控台執行的呼叫,以及對 Amazon EKS API 作業發出的程式碼呼叫。如需詳細資訊,請參閱 將 API 呼叫記錄為 AWS CloudTrail 事件

Kubernetes API 伺服器公開多個可用於監控和分析的指標。如需詳細資訊,請參閱 藉助 Prometheus 監控叢集指標

如要為自訂 Amazon CloudWatch logs 設定 Fluent Bit,請參閱《Amazon CloudWatch 使用者指南》中的設定 Fluent Bit

在 Amazon EKS 中監控和記錄工具

Amazon Web Services 提供各種工具讓您可用於監控 Amazon EKS。您可以設定某些工具來設定自動監控,但有些工具則需要手動呼叫。建議您在您的環境和現有工具集允許的範圍內自動執行監控任務。

下表描述了各種監控工具選項。

區域 工具 描述 設定

控制平台

可觀測性儀表板

對於支援的版本,可觀測性儀表板能讓您了解叢集的效能。它有助於您快速進行偵測、故障診斷及修復問題。

設定程序

應用程式/控制平面

Prometheus

Prometheus 可用於監控應用程式與控制平面的指標和提醒。

設定程序

應用程式

CloudWatch Container Insights

CloudWatch Container Insights 會從您的容器化應用程式和微型服務收集、彙總及總結指標和日誌。

設定程序

應用程式

AWS Distro for OpenTelemetry (ADOT)

ADOT 會收集相關指標、追蹤資料和中繼資料,並將其傳送到 AWS 監測服務或合作夥伴。可以透過 CloudWatch Container Insights 進行設定。

設定程序

應用程式

Amazon DevOps Guru

Amazon DevOps Guru 可偵測節點級的執行性能和可用性。

設定程序

應用程式

AWS X-Ray

AWS X-Ray 接收有關您的應用程式的追蹤資料。此追蹤資料包括傳入和傳出請求以及有關請求的中繼資料。對於 Amazon EKS,實作需要 OpenTelemetry 附加元件。

設定程序

應用程式

Amazon CloudWatch

CloudWatch 在支援的版本上可免費提供一些基本的 Amazon EKS 指標。您可使用 CloudWatch 可觀測性運算子擴展此功能,以處理收集指標、日誌和追蹤資料。

設定程序

下表描述了各種記錄工具選項。

區域 工具 描述 設定

控制平台

可觀測性儀表板

對於支援的版本,可觀測性儀表板會顯示控制平面稽核日誌的清單。它還包含 Amazon CloudWatch 中控制平面日誌的連結。

設定程序

應用程式

Amazon CloudWatch Container Insights

Amazon CloudWatch Container Insights 會從您的容器化應用程式和微型服務收集、彙總及總結指標和日誌。

設定程序

控制平台

Amazon CloudWatch Logs

您可以從 Amazon EKS 控制平面將稽核和診斷日誌直接傳送至您帳戶中的 CloudWatch Logs。

設定程序

控制平台

AWS CloudTrail

它記錄由使用者、角色或服務所進行的 API 呼叫。

設定程序

AWS Fargate 執行個體的多個區域

AWS Fargate 日誌路由器

對於 AWS Fargate 執行個體,日誌路由器將日誌串流至 AWS 服務或合作夥伴工具。它使用 AWS for Fluent Bit。日誌可以串流至其他 AWS 服務或合作夥伴工具。

設定程序