一、为何需要 CloudWatch Agent?
AWS 基础监控仅提供 5 分钟粒度的 CPU / 内存等有限指标。对于以下需求需部署 Agent:
-
获取 1 分钟高精度监控数据
-
监控进程 / 服务状态(如 Nginx、MySQL)
-
收集操作系统级指标(磁盘 IO、内存分页)
-
统一管理混合云环境(支持本地服务器)

二、5 步安装配置指南
步骤 1:IAM 权限配置
✅ 必须将策略附加到 EC2 实例的 IAM 角色(直接配置密钥有安全风险)
步骤 2:SSH 连接实例执行安装命令
Linux 系统:
wget https://s3.amazonaws.com/amazoncloudwatch-agent/linux/amd64/latest/AmazonCloudWatchAgent.zipunzip AmazonCloudWatchAgent.zipsudo ./install.sh
Windows 系统:
Invoke-WebRequest -Uri https://s3.amazonaws.com/amazoncloudwatch-agent/windows/amd64/latest/amazon-cloudwatch-agent.msi -OutFile .\amazon-cloudwatch-agent.msi
msiexec /i amazon-cloudwatch-agent.msi
步骤 3:生成初始配置文件
sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-config-wizard
步骤 4:手动优化按需配置(高级)
避坑指南:
- 避免监控所有磁盘(增加费用)
- Linux 系统需添加"append_dimensions": {"InstanceId": "${aws:InstanceId}"}确保实例标识
步骤 5:启动服务并验证
sudo systemctl start amazon-cloudwatch-agentsudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -m ec2 -a status
成功输出应包含:"status": "running"
- 典型问题排查
|--------------|------------------------------------------------------------------------|--------------------------------------|
| 问题现象 | 排查步骤 | 解决方案 |
| 数据延迟 > 5 分钟 | 检查日志 /opt/aws/amazon-cloudwatch-agent/logs/amazon-cloudwatch-agent.log | 开放安全组 443 端口出站规则 |
| 内存指标缺失 | 确认配置文件含 "mem": {"measurement": ["mem_used_percent"]} | Windows 需安装性能计数器 |
| 日志收集失败 | 检查路径是否为绝对路径(不支持通配符 *) | IAM 角色附加 CloudWatchLogsFullAccess 策略 |