CloudWatch 代理程式憑證偏好設定 - Amazon CloudWatch

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

CloudWatch 代理程式憑證偏好設定

本節概述 CloudWatch 代理程式在與其他 AWS 服務和 APIs 通訊時用來取得憑證的憑證提供者鏈結。排序如下:

注意

數字 2 到 5 中列出的偏好設定與 AWS SDK 中定義的偏好設定順序相同。如需詳細資訊,請參閱 SDK 文件中的指定憑證

  1. CloudWatch 代理程式的 common-config.toml 檔案中有定義共用組態與憑證檔案。如需詳細資訊,請參閱使用 AWS Systems Manager安裝 CloudWatch 代理程式

  2. AWS SDK 環境變數

    重要

    在 Linux 上,如果您使用 amazon-cloudwatch-agent-ctl 指令碼執行 CloudWatch 代理程式,指令碼會將代理程式作為 systemd 服務啟動。在此情況下,代理程式無法存取 HOMEAWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEY 等環境變數。

  3. $HOME/%USERPROFILE% 中的共用組態與憑證檔案

    注意

    CloudWatch 代理程式在適用於 Linux 和 MacOS 的 $HOME,以及適用於 Windows 的 %USERPROFILE% 中尋找 .aws/credentials。與 AWS SDK 不同,在無法存取環境變數時,CloudWatch 代理程式沒有備用方法來確定主目錄。這種行為的差異在於維持與 AWS SDK 先前實作的回溯相容性。

    此外,與 中找到的共用登入資料不同common-config.toml,如果 AWS SDK 衍生的共用登入資料過期並輪換,CloudWatch 代理程式不會自動收取續約的登入資料,並且需要重新啟動代理程式才能這麼做。

  4. 如果存在使用 Amazon Elastic Container Service 任務定義或 RunTask API 操作的應用程式,則為任務 AWS Identity and Access Management 的角色。

  5. 連接至 Amazon EC2 執行個體的執行個體設定檔。

最佳實務是,建議您在使用 CloudWatch 代理程式時,依下列順序指定憑證。

  1. 如果您的應用程式使用 Amazon Elastic Container Service 任務定義或 RunTask API 操作,使用任務的 IAM 角色。

  2. 如果您的應用程式在 Amazon EC2 執行個體上執行,使用 IAM 角色。

  3. 使用 CloudWatch 代理程式 common-config.toml 檔案來指定憑證檔案。此登入資料檔案與 AWS SDKs和 使用的登入資料檔案相同 AWS CLI。如果您目前已正在使用共用的憑證檔案,也可以將該檔案用於此用途。若您透過 CloudWatch 代理程式的 common-config.toml 檔案提供憑證,即可確保代理程式在憑證到期並被替換時自動使用輪替憑證,無需手動重新啟動代理程式。

  4. 使用環境變數。如果您在 Amazon EC2 執行個體以外的電腦上執行開發工作,設定環境變數會非常有用。

注意

如果您將遙測傳送至 將指標、日誌和追蹤傳送到不同帳戶 中的不同帳戶,CloudWatch 代理程式會使用本節所述的憑證提供者鏈結來取得初始的憑證集。然後,它會在 CloudWatch 代理程式設定檔中擔任 role_arn 指定的 IAM 角色時,使用這些憑證。