创建 IAM 角色和用户以用于 CloudWatch 代理 - Amazon CloudWatch

创建 IAM 角色和用户以用于 CloudWatch 代理

要访问 AWS 资源,需要具有相应的权限。您可以创建包含所需权限的 IAM 角色和用户,以使 CloudWatch 代理将指标写入到 CloudWatch 中,以及使 CloudWatch 代理与 Amazon EC2 和 AWS Systems Manager 进行通信。您在 Amazon EC2 实例上使用 IAM 角色,在本地部署服务器上使用 IAM 用户。

一个角色或用户能让 CloudWatch 代理安装到服务器上,并将指标发送到 CloudWatch。需要使用另一个角色或用户以在 Systems Manager Parameter Store 中存储 CloudWatch 代理配置。Parameter Store 允许多个服务器使用一个 CloudWatch 代理配置。

写入 Parameter Store 是一项广泛而强大的权限。您应该仅在需要时使用它,并且不应将其附加到部署中的多个实例。如果在 Parameter Store 中存储 CloudWatch 代理配置,我们建议您执行以下操作:

  • 设置一个实例以在其中执行该配置。

  • 使用仅在该实例上有权限写入到 Parameter Store 的 IAM 角色。

  • 使用仅在处理并保存 CloudWatch 代理配置文件时,有权限写入到 Parameter Store 的 IAM 角色。

注意

我们最近修改了以下过程,具体来说就是使用由 Amazon 创建的新 CloudWatchAgentServerPolicyCloudWatchAgentAdminPolicy 策略,而不需要客户自行创建这些策略。要使用这些策略将代理配置文件写入 Parameter Store,然后从 Parameter Store 中下载该文件,您的代理配置文件的名称必须以 AmazonCloudWatch- 开头。如果您的 CloudWatch 代理配置文件的文件名不以 AmazonCloudWatch- 开头,则这些策略不能用于将文件写入 Parameter Store 或从 Parameter Store 下载文件。

在 Amazon EC2 实例上创建要与 CloudWatch 代理一起使用的 IAM 角色

第一个过程会创建一个 IAM 角色,您必须将其附加到运行 CloudWatch 代理的每个 Amazon EC2 实例。该角色提供从实例中读取信息并将其写入到 CloudWatch 的权限。

第二个过程会创建一个 IAM 角色,您必须将其附加到用于创建 CloudWatch 代理配置文件的 Amazon EC2 实例。如果要将该文件存储在 Systems Manager Parameter Store 中,以便其他服务器可以使用该文件,则需要执行该步骤。除了从实例中读取信息并将其写入到 CloudWatch 的权限以外,该角色还提供写入到 Parameter Store 的权限。该角色包含足以运行 CloudWatch 代理以及写入到 Parameter Store 的权限。

注意

Parameter Store 支持标准层和高级层中的参数。这些参数层与 CloudWatch 代理预定义指标集提供的“基本”、“标准”和“高级”详细信息级别无关。

创建每个服务器运行 CloudWatch 代理所需的 IAM 角色
  1. 登录 AWS Management Console,然后打开 IAM 控制台:https://console.aws.amazon.com/iam/

  2. 在导航窗格中,选择角色,然后选择创建角色

  3. 选择受信任实体的类型 下,选择 AWS 服务

  4. Common use cases(常见使用案例)下,选择 EC2,然后选择 Next: Permissions(下一步:权限)

  5. 在策略列表中,选中 CloudWatchAgentServerPolicy 旁边的复选框。如有必要,请使用搜索框查找该策略。

  6. 要使用 Systems Manager 安装或配置 CloudWatch 代理,请选中 AmazonSSMManagedInstanceCore 旁边的框。此 AWS 托管策略使实例能够使用 Systems Manager 服务核心功能。如有必要,请使用搜索框查找该策略。如果要仅通过命令行启动和配置代理,则不需要此策略。

  7. 选择 下一步:标签

  8. (可选)添加一个或多个标签键值对,以组织、跟踪或控制此角色的访问,然后选择 Next: Review (下一步:审核)

  9. 对于角色名称,请输入新角色的名称,如 CloudWatchAgentServerRole或所需其他名称。

  10. (可选)对于角色描述,请输入描述。

  11. 确认 CloudWatchAgentServerPolicy 和(可选)AmazonSSMManagedInstanceCore 是否显示在 Policies(策略)旁边。

  12. 选择 Create role(创建角色)。

    将立即创建该角色。

以下过程创建也可以写入到 Parameter Store 的 IAM 角色。您可以使用该角色在 Parameter Store 中存储代理配置文件,以便其他服务器检索该文件。

写入到 Parameter Store 的权限提供了广泛的访问。此角色不应附加到您的所有服务器,只有管理员才能使用它。在创建代理配置文件并将其复制到 Parameter Store 后,应将该角色从实例中分离并改用 CloudWatchAgentServerRole

为管理员创建 IAM 角色以写入到 Parameter Store
  1. 登录 AWS Management Console,然后打开 IAM 控制台:https://console.aws.amazon.com/iam/

  2. 在导航窗格中,选择角色,然后选择创建角色

  3. 选择受信任实体的类型 下,选择 AWS 服务

  4. 在紧靠选择将使用此角色的服务下面,选择 EC2,然后选择下一步: 权限

  5. 在策略列表中,选中 CloudWatchAgentAdminPolicy 旁边的复选框。如有必要,请使用搜索框查找该策略。

  6. 要使用 Systems Manager 安装或配置 CloudWatch 代理,请选中 AmazonSSMManagedInstanceCore 旁边的框。此 AWS 托管策略使实例能够使用 Systems Manager 服务核心功能。如有必要,请使用搜索框查找该策略。如果要仅通过命令行启动和配置代理,则不需要此策略。

  7. 选择 下一步:标签

  8. (可选)添加一个或多个标签键值对,以组织、跟踪或控制此角色的访问,然后选择 Next: Review (下一步:审核)

  9. 对于角色名称,请输入新角色的名称,如 CloudWatchAgentAdminRole或所需其他名称。

  10. (可选)对于角色描述,请输入描述。

  11. 确认 CloudWatchAgentAdminPolicy 和(可选)AmazonSSMManagedInstanceCore 是否显示在 Policies(策略)旁边。

  12. 选择 Create role(创建角色)。

    将立即创建该角色。

创建 IAM 用户以用于本地部署服务器上的 CloudWatch 代理

第一个过程会创建运行 CloudWatch 代理所需的 IAM 用户。该用户提供将数据发送到 CloudWatch 的权限。

第二个过程会创建一个 IAM 用户,您可以在创建 CloudWatch 代理配置文件时使用该用户。可以使用此过程将该文件存储在 Systems Manager Parameter Store 中,以便其他服务器使用该文件。除了将数据写入到 CloudWatch 的权限以外,该用户还提供了写入到 Parameter Store 的权限。

注意

Parameter Store 支持标准层和高级层中的参数。这些参数层与 CloudWatch 代理预定义指标集提供的“基本”、“标准”和“高级”详细信息级别无关。

创建 CloudWatch 代理将数据写入 CloudWatch 所需的 IAM 用户
  1. 登录 AWS Management Console,然后打开 IAM 控制台:https://console.aws.amazon.com/iam/

  2. 在导航窗格中,选择 Users,然后选择 Add user

  3. 为新用户输入用户名。

  4. 对于访问类型,请选择编程访问,然后选择下一步:权限

  5. 对于设置权限,请选择直接附加现有策略

  6. 在策略列表中,选中 CloudWatchAgentServerPolicy 旁边的复选框。如有必要,请使用搜索框查找该策略。

  7. 要使用 Systems Manager 安装或配置 CloudWatch 代理,请选中 AmazonSSMManagedInstanceCore 旁边的框。此 AWS 托管策略使实例能够使用 Systems Manager 服务核心功能。(如有必要,请使用搜索框查找策略。如果仅通过命令行启动和配置该代理,则不需要使用该策略。)

  8. 选择 下一步:标签

  9. (可选)添加一个或多个标签键值对,以组织、跟踪或控制此角色的访问,然后选择 Next: Review (下一步:审核)

  10. 确认列出了正确的策略,然后选择创建用户

  11. 在新用户的行中,选择显示。将访问密钥和私有密钥复制到一个文件以便在安装该代理时使用。选择关闭

以下过程会创建也可以写入到 Parameter Store 的 IAM 用户。如果要在 Parameter Store 中存储代理配置文件以使其他服务器可以使用该文件,您需要使用该 IAM 用户。该 IAM 用户提供写入到 Parameter Store 的权限。该用户还提供从实例中读取信息以及将其写入到 CloudWatch 的权限。写入到 Systems Manager Parameter Store 的权限提供了广泛的访问。该 IAM 用户不应附加到您的所有服务器,仅管理员应该使用该用户。只有在 Parameter Store 中存储代理配置文件时,才应使用该 IAM 用户。

创建将配置文件存储到 Parameter Store 中以及向 CloudWatch 发送信息所需的 IAM 用户
  1. 登录 AWS Management Console,然后打开 IAM 控制台:https://console.aws.amazon.com/iam/

  2. 在导航窗格中,选择 Users,然后选择 Add user

  3. 为新用户输入用户名。

  4. 对于访问类型,请选择编程访问,然后选择下一步:权限

  5. 对于设置权限,请选择直接附加现有策略

  6. 在策略列表中,选中 CloudWatchAgentAdminPolicy 旁边的复选框。如有必要,请使用搜索框查找该策略。

  7. 要使用 Systems Manager 安装或配置 CloudWatch 代理,请选中 AmazonSSMManagedInstanceCore 旁边的复选框。此 AWS 托管策略使实例能够使用 Systems Manager 服务核心功能。(如有必要,请使用搜索框查找策略。如果仅通过命令行启动和配置该代理,则不需要使用该策略。)

  8. 选择 下一步:标签

  9. (可选)添加一个或多个标签键值对,以组织、跟踪或控制此角色的访问,然后选择 Next: Review (下一步:审核)

  10. 确认列出了正确的策略,然后选择创建用户

  11. 在新用户的行中,选择显示。将访问密钥和私有密钥复制到一个文件以便在安装该代理时使用。选择关闭