← 中文资源

简体中文版本

创建云成本异常告警

启用 AWS Cost Anomaly Detection,按金额阈值告警并路由到负责团队的值班渠道。

阅读英文原文

概述

月度预算告警在总额越线时才触发,往往已经来不及处理。异常检测按服务学习历史基线并比较当前支出,能在一天内发现被遗忘的压测或配置错误的自动扩缩容,此时支出仍然可控。

步骤

  1. 创建按服务维度的监控器:
aws ce create-anomaly-monitor \
  --anomaly-monitor '{"MonitorName":"acme-services","MonitorType":"DIMENSIONAL","MonitorDimension":"SERVICE"}'
  1. 创建订阅,将每日影响超过 100 美元的异常发送到 SNS:
aws ce create-anomaly-subscription \
  --anomaly-subscription '{
    "SubscriptionName":"acme-cost-alerts",
    "MonitorArnList":["arn:aws:ce::123456789012:anomalymonitor/abc123"],
    "Subscribers":[{"Address":"arn:aws:sns:us-east-1:123456789012:platform-alerts","Type":"SNS"}],
    "Threshold":100,
    "Frequency":"DAILY"
  }'
  1. 用 get-anomaly-subscriptions 确认订阅存在,并在 Cost Explorer 中查看检测历史。
  2. 编写响应流程:确认异常服务、对比发布记录、停止或调整资源。

验证

预期订阅出现在返回列表中,异常发生后次日收到包含服务名和影响金额的通知。用 aws ce get-cost-and-usage 按服务拆分当天成本,确认能定位到具体增长来源。

注意事项

  • 检测需要约十天历史数据,刚启用时可能没有结果。
  • 检测粒度为天,不是实时,快速失控仍可能产生可观支出。
  • 归因到服务或账户,不精确到单个资源,需要结合标签和资源清单排查。
  • 沙箱账户应使用更低阈值,生产环境需观察数周波动后再调优,避免长期静默。