在 CloudWatch 中驗證 Container Insights 的先決條件 - Amazon CloudWatch

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

在 CloudWatch 中驗證 Container Insights 的先決條件

在 Amazon EKS 或 Kubernetes 上安裝 Container Insights 前,請檢查下列各項:無論您使用 CloudWatch 代理程式或 AWS Distro for OpenTelemetry 在 Amazon EKS 叢集上設定 Container Insights,這些先決條件都適用。

  • 您擁有可運作的 Amazon EKS 或 Kubernetes 叢集,且其中包含在支援 Amazon EKS 和 Kubernetes Container Insights 的其中一個區域中連接的節點。如需支援區域的清單,請參閱 Container Insights

  • 您已安裝和執行 kubectl。如需詳細資訊,請參閱《Amazon EKS 使用者指南》中的安裝 kubectl

  • 如果您使用的是在 上執行的 Kubernetes, AWS 而不是使用 Amazon EKS,則還需要下列先決條件:

    • 請確定 Kubernetes 叢集已啟用以角色為基礎的存取控制 (RBAC)。如需詳細資訊,請參閱 Kubernetes 參考中的使用 RBAC 授權

    • kubelet 已啟用 Webhook 授權模式。如需詳細資訊,請參閱 Kubernetes 參考中的 Kubelet authentication/authorization

您也必須授與 IAM 許可,讓您的 Amazon EKS 工作節點能夠傳送指標和日誌到 CloudWatch。有兩種方式可以進行:

  • 將政策連接至工作節點的 IAM 角色。這適用於 Amazon EKS 叢集和其他 Kubernetes 叢集。

  • 針對叢集的服務帳戶使用 IAM 角色,並將政策連接至此角色。這僅適用於 Amazon EKS 叢集。

第一個選項會授與 CloudWatch 整個節點的許可,而使用服務帳戶的 IAM 角色只會提供 CloudWatch 適當的 daemonset pod 存取權。

將政策連接至工作節點的 IAM 角色

請依照下列步驟將政策連接至工作節點的 IAM 角色。這適用於 Amazon EKS 外部的 Amazon EKS 叢集和 Kubernetes 叢集。

若要將必要的政策連接至工作節點的 IAM 角色
  1. 前往 https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 選取其中一個工作節點執行個體,然後在描述中選擇 IAM 角色。

  3. 在 IAM role (IAM 角色) 頁面上,選擇 Attach policies (連接政策)。

  4. 在政策清單中,選取 CloudWatchAgentServerPolicy 旁的核取方塊。如有需要,請使用搜尋方塊來尋找此政策。

  5. 選擇連接政策

如果您是在 Amazon EKS 之外執行 Kubernetes 叢集,您可能還沒有將 IAM 角色連接到工作節點。如果不是,您必須依照之前步驟中的說明,先將 IAM 角色連接至該執行個體,然後再新增政策。如需將角色連接至執行個體的詳細資訊,請參閱《Amazon EC2 使用者指南》中的將 IAM 角色連接至執行個體

若您是在 Amazon EKS 外部執行 Kubernetes 叢集,且您希望在指標中收集 EBS 磁碟區 ID,您必須將另一個政策新增到連接至執行個體的 IAM 角色。新增以下內容作為內嵌政策。如需詳細資訊,請參閱《IAM 使用者指南》中的新增和移除 IAM 身分許可

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "ec2:DescribeVolumes" ], "Resource": "*", "Effect": "Allow" } ] }

使用 IAM 服務帳戶角色

此方法僅適用於 Amazon EKS 叢集。

若要使用 IAM 服務帳戶角色授與 CloudWatch 許可
  1. 如果您尚未這麼做,請為叢集上的服務帳戶啟用 IAM 角色。如需詳細資訊,請參閱為叢集上的服務帳戶啟用 IAM 角色

  2. 若尚未就緒,請將服務帳戶設定為使用 IAM 角色。如需詳細資訊,請參閱設定要擔任 IAM 角色的 Kubernetes 服務帳戶

    當您建立角色時,除了將 CloudWatchAgentServerPolicy IAM 政策連接至您為該角色建立的政策之外,也請連接至該角色。此外,應該在 amazon-cloudwatch 命名空間中建立連結至此角色的相關聯 Kubernetes 服務帳戶,其中 CloudWatch 和 Fluent Bit 程式集將在接下來的步驟中部署

  3. 如果您尚未這麼做,請將 IAM 角色與叢集中的服務帳戶建立關聯。如需詳細資訊,請參閱設定要擔任 IAM 角色的 Kubernetes 服務帳戶