我要如何安装与配置统一的 CloudWatch 代理,以便从我的 EC2 实例将指标和日志推送到 CloudWatch?

上次更新时间:2020 年 2 月 20 日

我要如何安装与配置统一的 Amazon CloudWatch 代理,以便从我的 Amazon Elastic Compute Cloud (Amazon EC2) 实例将指标和日志推送到 Amazon CloudWatch?

简短描述

无论使用何种平台(Windows 或 Linux),安装统一 Amazon CloudWatch 代理的步骤如下:

  1. 创建 AWS Identity and Access Management (IAM) 角色以运行 CloudWatch 代理。然后,将 IAM 角色附加到 EC2 实例。
  2. 下载并安装 CloudWatch 代理。
  3. 创建代理配置文件,指定您计划从 EC2 实例推送到 CloudWatch 的指标/日志。
  4. 使用您在第 3 步中创建的配置文件启动 CloudWatch 代理。

解决方法

注意:在开始前,确保您已在 EC2 实例中创建互联网连接。您需要互联网连接才能将您的 EC2 实例连接到所需终端节点。

安装统一的 CloudWatch 代理(Amazon Linux 或 Amazon Linux 2)

1.    创建一个 IAM 角色,以便在您的 EC2 实例上运行 CloudWatch 代理:

       打开 IAM 控制台
       在导航窗格中,选择角色
       选择创建角色
       对于选择将使用此角色的服务,选择 EC2
       选择下一步:权限
       在策略列表中,选择 CloudWatchAgentServerPolicy 复选框。
       选择下一步:添加标签,然后选择下一步:检查
       对于角色名称,为角色输入一个名称,如 CloudWatchAgentServerRole
       (可选)提供一段角色描述。
       确认策略旁显示的 CloudWatchAgentServerPolicy
       选择创建角色
       将此新创建的 IAM 角色附加到 EC2 实例。

2.    在您的 EC2 实例上下载并安装统一的 CloudWatch 代理:

下载:

wget https://s3.<region>.amazonaws.com/amazoncloudwatch-agent-<region>/amazon_linux/amd64/latest/amazon-cloudwatch-agent.rpm

安装:

sudo rpm -U ./amazon-cloudwatch-agent.rpm

3.    创建代理配置文件。

注意:为简便起见,您可以使用向导创建代理配置文件。然后,您可以手动编辑该文件,以添加或移除指标或日志。 见下方的“完成代理配置文件向导的提示”。

运行向导:

sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-config-wizard

4.    启动 CloudWatch 代理:

sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config -m ec2 -c file:<configuration-file-path> -s 

注意: <configuration-file-path> 替换为您在第 3 步中收到的配置文件的路径。

指标和日志现在会被推送到 CloudWatch。在默认情况下,代理会将指标推送到 NameSpace CWAgent

安装统一的 CloudWatch 代理 (Windows)

1.    按照上述第 1 步的说明创建一个 IAM 角色,以便在您的 EC2 实例上运行 CloudWatch 代理。

2.    在您的 EC2 实例上下载并安装统一的 CloudWatch 代理:

下载:

https://s3.<region>.amazonaws.com/amazoncloudwatch-agent-<region>/windows/amd64/latest/amazon-cloudwatch-agent.msi

移动到包含程序包的目录,然后输入以下信息:

msiexec /i amazon-cloudwatch-agent.msi

3.    创建代理配置文件:
注意:为简便起见,您可以使用向导创建代理配置文件。然后,您可以手动编辑该文件,以添加或移除指标或日志。见下方的“完成代理配置文件向导的提示”。

cd "C:\Program Files\Amazon\AmazonCloudWatchAgent"

amazon-cloudwatch-agent-config-wizard.exe

在默认情况下,向导将在以下位置创建代理配置文件:C:\Program Files\Amazon\AmazonCloudWatchAgent\config.json

4.    启动 CloudWatch 代理。在 PowerShell 中以管理员身份输入以下信息:

& $Env:ProgramFiles\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent-ctl.ps1 -a fetch-config -m ec2 -c file:<configuration-file-path> -s        

示例命令:

& $Env:ProgramFiles\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent-ctl.ps1 -a fetch-config -m ec2 -c file:'C:\Program Files\Amazon\AmazonCloudWatchAgent\config.json' -s

指标和日志现在会被推送到 CloudWatch。在默认情况下,代理会将指标推送到 NameSpace CWAgent

配置代理配置文件向导的提示

  • 您是否要开启 StatsD 守护程序?您是否想要从 CollectD 监控指标?– 仅在您的 EC2 实例上安装 StatsD 和 CollectD 插件时,为这些问题选择
  • 您想要哪个默认指标配置?参阅本指南以了解关于不同详细信息级别的更多信息。然后,选择最适合您的使用案例的选项。
  • 您是否有现有的用于迁移的 CloudWatch Logs 代理配置文件可供导入?– 此问题问的是您是否已安装并且正在运行 awslogs 代理。如果是,向导将读取 awslogs 代理配置文件(/etc/awslogs/awslogs.conf /var/awslogs/etc/awslogs.conf)以确定您需要监控的日志文件。
  • 您是否要将配置储存到 SSM Parameter Store?– 如果您要将此代理配置文件储存到 SSM Parameter Store 当中,选择,以便您可以在未来重复使用该文件。重要提示:当代理配置文件储存于 SSM Parameter Store 时,启动代理命令会有所不同。
  • 在您完成向导以后,代理配置文件将默认被储存到 /opt/aws/amazon-cloudwatch-agent/bin/config.json 当中。您可以手动编辑此文件以添加或移除指标或日志。

启动和停止 CloudWatch 代理

如需了解关于在 Linux 和 Windows 中启动和停止 CloudWatch 代理的步骤,请见停止和重新启动 CloudWatch 代理

注意:在修改代理配置文件时,使用 fetch-config 命令启动代理,以确保在代理中反映您的更改。


这篇文章对您有帮助吗?

我们可以改进什么?


需要更多帮助?