Amazon web services CloudFormation:条件自动缩放组通知
我希望使用SNS接收自动缩放事件通知,但只能在PROD环境中接收。如何配置我的CloudFormation模板以实现此目的 如果是这样的话:Amazon web services CloudFormation:条件自动缩放组通知,amazon-web-services,amazon-cloudformation,amazon-sns,autoscaling,Amazon Web Services,Amazon Cloudformation,Amazon Sns,Autoscaling,我希望使用SNS接收自动缩放事件通知,但只能在PROD环境中接收。如何配置我的CloudFormation模板以实现此目的 如果是这样的话: 参数: 环境: 描述:应用程序的环境 类型:字符串 默认值:dev 允许值: -发展 -刺激 条件: 伊斯德夫:!等于[!Ref环境,dev] 伊斯普罗德:!等于[!参考环境,产品] 资源: 我的观点: 类型:AWS::SNS::Topic 特性: 订阅: -端点:“my@email.com" 协议:“电子邮件” myProdAutoScalingGrou
参数:
环境:
描述:应用程序的环境
类型:字符串
默认值:dev
允许值:
-发展
-刺激
条件:
伊斯德夫:!等于[!Ref环境,dev]
伊斯普罗德:!等于[!参考环境,产品]
资源:
我的观点:
类型:AWS::SNS::Topic
特性:
订阅:
-端点:“my@email.com"
协议:“电子邮件”
myProdAutoScalingGroupWithNotifications:
类型:AWS::AutoScaling::AutoScalingGroup
条件:IsProd
特性:
通知配置:
-通知类型:
-“自动缩放:EC2\u实例\u启动\u错误”
-“自动缩放:EC2\u实例\u终止”
-“自动缩放:EC2\u实例\u终止\u错误”
托皮卡恩:!参考“mynstopic”
MyDeVautoScalingGroup无通知:
类型:AWS::AutoScaling::AutoScalingGroup
条件:IsDev
特性:
或者CloudFormation是否也支持以下内容:
参数:
环境:
描述:应用程序的环境
类型:字符串
默认值:dev
允许值:
-发展
-刺激
条件:
伊斯普罗德:!等于[!参考环境,产品]
资源:
我的观点:
类型:AWS::SNS::Topic
特性:
订阅:
-端点:“my@email.com"
协议:“电子邮件”
myAutoScalingGroup:
类型:AWS::AutoScaling::AutoScalingGroup
特性:
通知配置:
-条件:IsProd
通知类型:
-“自动缩放:EC2\u实例\u启动\u错误”
-“自动缩放:EC2\u实例\u终止”
-“自动缩放:EC2\u实例\u终止\u错误”
托皮卡恩:!参考“mynstopic”
它应该是双重使用功能:
NotificationConfigurations:
- !If
- IsProd
- NotificationTypes:
- "autoscaling:EC2_INSTANCE_LAUNCH_ERROR"
- "autoscaling:EC2_INSTANCE_TERMINATE"
- "autoscaling:EC2_INSTANCE_TERMINATE_ERROR"
TopicARN: !Ref "mySNSTopic"
- !Ref "AWS::NoValue"
也可以尝试以下形式:
NotificationConfigurations:
!If
- IsProd
- - NotificationTypes:
- "autoscaling:EC2_INSTANCE_LAUNCH_ERROR"
- "autoscaling:EC2_INSTANCE_TERMINATE"
- "autoscaling:EC2_INSTANCE_TERMINATE_ERROR"
TopicARN: !Ref "mySNSTopic"
- !Ref "AWS::NoValue"
请小心压痕。您可能需要调整它以匹配模板