上次更新时间:2021 年 2 月 1 日
我想使用统一的 Amazon CloudWatch 代理,以便从我的 Amazon Elastic Compute Cloud (Amazon EC2) 实例将指标和日志推送到 CloudWatch。我该如何操作?
简短描述无论使用何种平台(Windows 或 Linux),安装统一 Amazon CloudWatch 代理的步骤都是相同的:
-
创建 AWS Identity and Access Management (IAM) 角色以运行 CloudWatch 代理。然后,将 IAM 角色附加到 EC2 实例。
下载并安装 CloudWatch 代理。
创建代理配置文件,指定您计划从 EC2 实例推送到 CloudWatch 的指标/日志。
使用您在第 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 Agent 预定义指标集。然后,选择最适合您的使用案例的选项。 您是否有现有的用于迁移的 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命令启动代理,以确保代理反映您的更改。