AWS CloudWatch Agent disk_used_percent测量值与本地命令不符问题
问题排查与解决步骤
1. 检查CloudWatch Agent日志,确认监控对象
CloudWatch Agent上报数值异常,先查看日志确认是否监控了错误设备或存在统计异常:
tail -f /var/log/amazon/cloudwatch-agent.log
搜索disk相关内容,确认Agent是否正确识别根目录对应的设备(Ubuntu 22.04通常为/dev/nvme0n1p1),有无报错信息。
2. 验证Agent配置是否真正生效
修改配置后重启Agent,需确认新配置已加载:
amazon-cloudwatch-agent-ctl -m ec2 -a status
查看输出中的disk模块,确认resources参数确实为"/"。若仍为旧配置,手动重启加载新配置:
amazon-cloudwatch-agent-ctl -m ec2 -a stop amazon-cloudwatch-agent-ctl -m ec2 -a start -c file:/opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.json
3. 排查删除文件后磁盘空间未释放问题
删除大量文件后数值未更新,大概率是已删除文件仍被进程占用,系统未实际释放空间:
lsof | grep deleted
若有结果,重启对应进程或直接重启EC2实例释放空间,再观察CloudWatch数值变化。
4. 注意CloudWatch的数据延迟与统计逻辑
CloudWatch Agent默认60秒采集一次磁盘数据,控制台显示存在1-5分钟延迟;且默认视图为聚合后的平均值,若之前的高使用率数据仍在聚合周期内,数值会滞后。可切换到CloudWatch的原始数据视图,查看最新采集值是否正确。
5. 重装CloudWatch Agent(终极方案)
若以上步骤均无效,可能是Agent本身异常,尝试重装:
sudo apt remove -y amazon-cloudwatch-agent sudo rm -rf /opt/aws/amazon-cloudwatch-agent/ sudo apt update && sudo apt install -y amazon-cloudwatch-agent
重装后重新配置并启动Agent。
内容的提问来源于stack exchange,提问作者Datguy
相关产品推荐
相关产品推荐

