用于更改 Ec2 实例状态的 Cloudformation
Cloudformation to Change Ec2 Instance State
目前我正在设计 Cloudformation 模板以创建 EC2 实例并监控 EC2 实例,使用 cloudwatch 启用详细监控并将实例状态更改为在达到指标后停止,
我能够创建一个能够启用指标的实例,但我无法将实例状态更改为停止。
查看 CloudFormation AWS::EC2::Instance resource 的官方文档,似乎不支持此功能。
您始终可以从源中删除资源,但这当然会终止实例,我认为这不是您要查找的内容。
也许一种解决方法是更改 UserData
部分,使其按照 shutdown -h now
的方式运行,同时将 InstanceInitiatedShutdownBehavior 更改为 stop
。
可能值得一试。
如果要在指定AWS::CloudWatch::Alarm
Resouce transitions into ALARM
state, you can accomplish this using the special arn:aws:automate:region:ec2:stop
ARN in the AlarmActions
属性 报警时将EC2实例状态更改为stop
。
但请注意,在此之前,您需要使用 Amazon EC2 或 CloudWatch 控制台手动创建至少一个停止、终止或重启警报,以创建 EC2ActionsAccess
IAM 角色。创建此 IAM 角色后,您可以直接使用 CloudFormation 资源创建停止、终止或重启警报。有关详细信息,请参阅 PutMetricAlarm
documentation。
目前我正在设计 Cloudformation 模板以创建 EC2 实例并监控 EC2 实例,使用 cloudwatch 启用详细监控并将实例状态更改为在达到指标后停止,
我能够创建一个能够启用指标的实例,但我无法将实例状态更改为停止。
查看 CloudFormation AWS::EC2::Instance resource 的官方文档,似乎不支持此功能。
您始终可以从源中删除资源,但这当然会终止实例,我认为这不是您要查找的内容。
也许一种解决方法是更改 UserData
部分,使其按照 shutdown -h now
的方式运行,同时将 InstanceInitiatedShutdownBehavior 更改为 stop
。
可能值得一试。
如果要在指定AWS::CloudWatch::Alarm
Resouce transitions into ALARM
state, you can accomplish this using the special arn:aws:automate:region:ec2:stop
ARN in the AlarmActions
属性 报警时将EC2实例状态更改为stop
。
但请注意,在此之前,您需要使用 Amazon EC2 或 CloudWatch 控制台手动创建至少一个停止、终止或重启警报,以创建 EC2ActionsAccess
IAM 角色。创建此 IAM 角色后,您可以直接使用 CloudFormation 资源创建停止、终止或重启警报。有关详细信息,请参阅 PutMetricAlarm
documentation。