如何安装和配置统一的 CloudWatch 代理,以便将指标和日志从 EC2 实例推送到 CloudWatch?
我想使用统一的 Amazon CloudWatch 代理,将指标和日志从 Amazon Elastic Compute Cloud(Amazon EC2)实例推送到 Amazon CloudWatch。
解决方案
**注意:**在开始之前,请在 EC2 实例中建立互联网连接。EC2 实例必须具有互联网连接才能连接到所需的端点。
创建一个 IAM 角色,以在 EC2 实例上运行 CloudWatch 代理
1. 打开 AWS Identity and Access Management(IAM)控制台。
2. 在导航窗格中,选择角色。
3. 选择创建角色。
4. 对于选择将使用此角色的服务,请选择 EC2。
5. 选择下一步: 权限。
6. 在策略列表中,选中 CloudWatchAgentServerPolicy 复选框。
7. 选择下一步: 标签,然后选择下一步: 审核。
8. 对于角色名称,输入角色的名称,例如 CloudWatchAgentServerRole。
9. (可选)提供角色描述。
10. 确认 CloudWatchAgentServerPolicy 出现在策略旁边。
11. 选择创建角色。
12. 将新的 IAM 角色附加到 EC2 实例。
在 EC2 实例上下载并安装统一的 CloudWatch 代理
Amazon Linux、Amazon Linux 2 和 Amazon Linux 2023
1. 要下载 CloudWatch 代理,请运行下列命令:
wget https://s3.region.amazonaws.com/amazoncloudwatch-agent-region/amazon_linux/amd64/latest/amazon-cloudwatch-agent.rpm
在前面的命令中,将 region 替换为您的 AWS 区域。
2. 要安装 CloudWatch 代理,请运行下列命令:
sudo rpm -U ./amazon-cloudwatch-agent.rpm
Windows
1. 要下载 CloudWatch 代理,请运行下列命令:
https://s3.region.amazonaws.com/amazoncloudwatch-agent-region/windows/amd64/latest/amazon-cloudwatch-agent.msi
在前面的命令中,将 region 替换为您的 AWS 区域。
2. 移至包含软件包的目录,然后输入下列命令:
msiexec /i amazon-cloudwatch-agent.msi
创建代理配置文件
**注意:**为了简单起见,请使用向导创建代理配置文件。然后,手动编辑该文件,以添加或删除指标或日志。有关更多信息,请参阅以下章节 Tips for completing the agent configuration file wizard。
Amazon Linux、Amazon Linux 2 和 Amazon Linux 2023
sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-config-wizard
Windows
cd "C:\Program Files\Amazon\AmazonCloudWatchAgent" amazon-cloudwatch-agent-config-wizard.exe
默认情况下,向导在以下位置创建代理配置文件: C:\Program Files\Amazon\AmazonCloudWatchAgent\config.json。
启动 CloudWatch 代理
Amazon Linux、Amazon Linux 2 和 Amazon Linux 2023
要启动 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 替换为配置文件路径。
Windows
以管理员身份在 PowerShell 中输入下列命令:
& $Env:ProgramFiles\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent-ctl.ps1 -a fetch-config -m ec2 -c file:configuration-file-path -s
**注意:**在前面的示例中,将 configuration-file-path 替换为配置文件路径。
命令示例:
& $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 predefined metric sets。然后,选择最适合您的使用案例的选项。
- 是否要导入现有 CloudWatch Logs 代理配置文件以进行迁移?如果 awslogs 代理已安装并正在运行,则选择是。如果选择是,则向导会读取 awslogs 代理配置文件(/etc/awslogs/awslogs.conf 或 /var/awslogs/etc/awslogs.conf),以确定要监控的日志文件。
- 是否想要将配置存储在 Parameter Store(AWS Systems Manager 的一个功能)中?如果要将此代理配置文件存储在 Parameter Store 中以便日后重复使用,请选择是。
**重要事项:**在将代理配置文件存储在 Parameter Store 中时,用于启动代理的命令会有所不同。 - 完成向导后,代理配置文件默认存储在 /opt/aws/amazon-cloudwatch-agent/bin/config.json 中。可以手动编辑此文件来添加或删除指标或日志。
有关自定义配置文件示例,请参阅 CloudWatch agent configuration file: Complete examples。
**注意:**修改代理配置文件后,使用 fetch-config 命令启动代理,确保代理反映所做的更改。
启动和停止 CloudWatch 代理
有关更多信息,请参阅 Stopping and restarting the CloudWatch Agent。
相关内容
- 已提问 4 个月前lg...
- AWS 官方已更新 1 年前
- AWS 官方已更新 1 年前
- AWS 官方已更新 7 个月前
- AWS 官方已更新 1 年前