背景介绍
AWS的Cloudwatch 可以很方便的监控各种数据,但是他的缺陷在于默认情况下他只能监控Hypervisor 的数据,而不会监控客户端OS级别的数据。传统的解决方式,比如我们需要监控内存,硬盘使用状况,或者其他自定义的数据,我们需要自己写个脚本,发送到对应的Cloudwatch API。这种方式相对而言,不算太友好,AWS提供了一个官方的解决方案,叫做Cloudwatch agent(https://docs.aws.amazon.com/zh_cn/AmazonCloudWatch/latest/monitoring/install-CloudWatch-Agent-on-EC2-Instance.html) ,安装之后,使用向导生成对应的配置文件,就可以实现手写脚本的功能了。
创新互联建站是专业的曲江网站建设公司,曲江接单;提供成都网站设计、成都网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行曲江网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
操作步骤
配置IAM Role
下面看看如何实现的。豆子所有的部署都是通过SSM实现的,这样不需要一台台的手动去配置。因此第一步需要配置IAM Role,确保EC2实例可以访问SSM。 具体步骤参考 https://blog.51cto.com/beanxyz/2316695
除此之外,我们还需要权限安装 CloudwatchAgent,以及权限访问 SSM的 Parameter Store; 后者是为了把配置文件写入Parameter Store, 这样统一推送的时候可以直接指定这个文件进行配置。
配置好IAM Role的 权限之后,记得分配给EC2实例。
安装CloudWatchAgent
然后回到SSM,在Managed Instances 里面 确保所有的EC2 实例都安装了最新的SSM Agent,如果没有,可以点击 Agent auto update 进行升级
在Run Command 执行下列操作,统一安装 CloudWatchAgent
输入安装的Name和Version
等待1分钟之后就成功下载安装了
生成配置文件
接下来,我们需要生成配置文件。
在一台安装了CloudwatchAgent的服务器上 打开配置向导,根据自己的需求进行选择,选择的最后他会询问是否保存生成的config.json文件到 parameter store,选择yes,然后输入一个文件名字即可
生成的配置文件
配置CloudwatchAgent
接下来再次打开Run Command, 选择 AmazonCloudWatch-ManageAgent
指定配置文件的名字
执行 run 操作
查看结果
他会在Cloudwatch 里面自动生成一个叫做 CWAgent的名称空间
等待片刻之后,就可以查看对应的内存,CPU和磁盘甚至自定义的数据使用情况了
本文标题:AWSCloudWatchAgent的配置和使用
本文地址:http://scgulin.cn/article/jphhds.html