问题描述
我正在尝试建立一种方法来监视属于AutoScaling组的实例的磁盘使用情况,并在与这些实例相关联的卷几乎已满时添加一个警报。
由于似乎亚马逊通常没有提供任何指标来执行此操作,所以我诉诸使用CloudWatch Agent来获得所需的信息。到目前为止,我可以使用CloudWatch控制台为所需的指标创建图形和警报。
我的问题是如何使用CDK自动化一切。如何在不事先知道实例ID的情况下自动为每个实例创建指标?这个问题有解决方案吗?
解决方法
您可以通过EC2用户数据安装和配置CloudWatch代理,并且自动伸缩组使用启动模板来启动EC2实例。所有这些事情都可以通过AWS CDK完成。
this open source project中有一个示例供您参考。
,您可以采用的另一种方法是使用AWS Systems Manager。本质上,您为实例安装了SSM代理,并创建了一个SSM文档(认为是Shell / Python脚本)来运行设置脚本/自动化。
然后,您创建一个州管理者协会,并根据EC2标签(例如, Application=MyApp
或Team=MyTeam
。这样,您不必提供任何资源ID,只需提供可以扩展多个实例和将来替换实例的标记键值对即可。您可以安排它在特定时间(cron)或特定频率(速率)运行以强制执行状态。