实战案例 | 监控 AWS 账户预估费用的解决方案(CloudWatch)


  项目需求

A公司拥有多个 AWS 账户,这些账户分别归属各个业务部门进行单独实用和管理。其中一个 AWS 账户最近受到攻击。攻击者启动了大量实例,导致该账户产生很高的账单金额。该公司解决了安全漏洞,但解决方案架构师需要开发一款解决方案,以防止所有账户过度支出。

  解决方案

为每个 AWS 账户开启账单提醒,创建 Amazon CloudWatch 告警,在账户超过指定支出阈值时,通过 Amazon SNS 随时向账户管理员发送通知。

  作业步骤

备注:作业者可使用 AWS IAM 根用户或者已经具备账单权限的普通用户。

步骤一:为 AWS 账户开启账单提醒
1. 打开 AWS Billing 控制台,在导航窗格中,选择 Billing Preferences(账单首选项)。
2. 在提醒首选项界面,选择编辑,然后选择接收 CloudWatch 账单提醒。
3. 选择 Save preferences(保存首选项)。

步骤二:创建账单警报
1. 在导航窗格中,选择 Alarms(告警),然后选择 All alarms(所有告警)。
2. 选择Create alarm(创建警报),选择选择指标。
3. 在 Browse(浏览)中,选择 Billing(账单),然后选择 Total Estimated Charge(总估算费用)。
4. 分别设置账单金额阈值以及相应的 SNS 主题
5. 为正在创建的警告设置一个名称,然后选择创建。

备注:
1. 如果没看到账单/总估算费用指标,则启用账单提醒,并将您的区域更改为美国东部(弗吉尼亚州北部)
2. 如果需要使用普通 IAM 用户来执行任务,需要提前为 IAM 用户访问账单控制台提供授权。

  结果验证

1. 在 CloudWatch 的导航窗格中,选择 Alarms (告警)。
2. 在 Alarms (告警)中,选择所有告警,并观察刚才创建的账单报警。