要在 AWS Beanstalk CloudFormation 中添加对 CPUCreditBalance 的告警,您可以使用以下代码示例:
Resources:
MyEnvironment:
Type: AWS::ElasticBeanstalk::Environment
Properties:
ApplicationName: MyApplication
SolutionStackName: 64bit Amazon Linux 2 v3.3.2 running Python 3.8
OptionSettings:
- Namespace: aws:elasticbeanstalk:environment
OptionName: EnvironmentType
Value: SingleInstance
- Namespace: aws:elasticbeanstalk:environment:process:default
OptionName: CPUCreditThreshold
Value: "30" # 设置 CPUCreditBalance 的阈值
- Namespace: aws:elasticbeanstalk:healthreporting:system
OptionName: SystemType
Value: enhanced
MonitoringInterval: 5
MyAlarm:
Type: AWS::CloudWatch::Alarm
Properties:
AlarmName: CPUCreditBalanceAlarm
AlarmDescription: Alarm for low CPUCreditBalance
Namespace: AWS/EC2
MetricName: CPUCreditBalance
Dimensions:
- Name: EnvironmentName
Value: !Ref MyEnvironment
Statistic: Average
Period: 300 # 检查指标的时间间隔为 5 分钟
EvaluationPeriods: 1
Threshold: 10 # 设置阈值,当 CPUCreditBalance 低于阈值时触发告警
ComparisonOperator: LessThanThreshold
AlarmActions:
- !Ref MySnsTopic
MySnsTopic:
Type: AWS::SNS::Topic
Properties:
DisplayName: MySnsTopic
Subscription:
- Endpoint: your-email@example.com
Protocol: email
上述示例中,我们创建了一个名为 MyEnvironment 的 Elastic Beanstalk 环境,并在 OptionSettings 中设置了 CPUCreditThreshold 为 30。这将设置 CPUCreditBalance 的阈值。
然后,我们创建了一个名为 MyAlarm 的 CloudWatch 告警,使用了 CPUCreditBalance 指标并设置了阈值为 10。如果 CPUCreditBalance 低于此阈值,将会触发告警。
最后,我们创建了一个名为 MySnsTopic 的 SNS 主题,并将您的电子邮件地址作为订阅者添加到主题中。这将使您能够收到低 CPUCreditBalance 的告警通知。
您可以将上述代码示例添加到您的 CloudFormation 模板中,并根据需要进行修改。