一、背景二、创建IAM角色和用户三、配置CloudWatch代理日志保留策略四、下载并安装代理安装包五、创建CloudWatch代理配置文件六、运行CloudWatchAgent参考
CloudWatch是亚马逊云平台自带的服务监控,默认只采集cpu使用率、磁盘读取和写入等指标,而我们对于机器的监控一般会覆盖cpu使用率、内存使用率和磁盘使用率等指标,那么我们可以使用亚马逊提供的CloudWatchAgent插件来上报内存和磁盘使用情况,用以后续监控和告警。
我们需要将CloudWatchAgent安装到ec2机器上并运行。
创建 IAM 角色和用户以用于 CloudWatch 代理。

勾选CloudWatchAgentServerPolicy,点击下一步:

输入角色名CloudWatchAgentServerRole,创建角色:


勾选直接附加策略和CloudWatchAgentServerPolicy点击下一步并创建:


使用以下内容替换,然后保存:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "logs:PutRetentionPolicy",
"Resource": "*"
}
]
}
到具体的ec2机器root角色执行:
sudo yum install amazon-cloudwatch-agent
mkdir -p /opt/tools/cloudwatch
cd /opt/tools/cloudwatch
wget https://s3.amazonaws.com/amazoncloudwatch-agent/amazon_linux/amd64/latest/amazon-cloudwatch-agent.rpmsudo rpm -U ./amazon-cloudwatch-agent.rpm运行模板配置:
sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-config-wizard
基于交互式方式创建模板配置,配置好之后会把配置文件放在/opt/aws/amazon-cloudwatch-agent/bin/config.json。
需要注意的是,CloudWatch默认回收机cpu使用情况,另外我们需要采集和监控磁盘和RAM使用情况,所以创建配置文件交互过程中选择基本或者标准基本够用。

sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config -m ec2 -s -c file:/opt/aws/amazon-cloudwatch-agent/bin/config.json
运行可能会出现以下报错:

原因是缺少collectd依赖,安装相关依赖:
sudo yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
sudo yum install -y collectd再次运行启动命令成功。
在linux服务器上执行:
sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -m ec2 -a status
CloudWatchAgent已经启动,运行状态正常。
https://docs.aws.amazon.com/zh_cn/AmazonCloudWatch/latest/monitoring/download-cloudwatch-agent-commandline.html
https://aws.amazon.com/cn/premiumsupport/knowledge-center/cloudwatch-memory-metrics-ec2/
https://docs.aws.amazon.com/zh_cn/AmazonCloudWatch/latest/monitoring/create-cloudwatch-agent-configuration-file-wizard.html
https://docs.aws.amazon.com/zh_cn/AmazonCloudWatch/latest/monitoring/install-CloudWatch-Agent-commandline-fleet.html#start-CloudWatch-Agent-EC2-commands-fleet
https://docs.aws.amazon.com/zh_cn/AmazonCloudWatch/latest/monitoring/create-iam-roles-for-cloudwatch-agent-commandline.html
https://docs.aws.amazon.com/zh_cn/AmazonCloudWatch/latest/monitoring/Install-CloudWatch-Agent.html
https://github.com/awsdocs/amazon-cloudwatch-user-guide/issues/54
https://docs.aws.amazon.com/zh_cn/AmazonCloudWatch/latest/monitoring/troubleshooting-CloudWatch-Agent.html
https://docs.aws.amazon.com/zh_cn/AmazonCloudWatch/latest/monitoring/troubleshooting-CloudWatch-Agent.html#CloudWatch-Agent-troubleshooting-cannot-start
本文分享自 PersistentCoder 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!