关闭和启动EC2和RDS实例
aws-cloudformation-power-switch的Python项目详细描述
AWS云信息电源开关
AWS CloudFormation电源开关允许您关闭和启动所有管理的EC2、RDS和自动缩放实例 由一个或多个云层堆积而成。在
安装电源开关
要安装电源开关,请键入:
pip install aws-cloudformation-power-switch
关闭
要关闭由CloudFormation堆栈管理的以名称dev
开头的所有实例,请键入:
这将显示哪些EC2、RDS和AutoScaling实例将被关闭。对于自动缩放组 所需的实例数设置为0。如果最小值大于0,它也将更改最小值设置。在
启动`
要启动由CloudFormation堆栈管理的以名称dev
开头的所有实例,请键入:
cfn-power-switch --dry-run --stack-name-prefix dev off
这将显示将启动哪些EC2、RDS和AutoScaling实例。自动调整所需数量
实例将设置为所需的最大实例。删除--dry-run
,它将被激活。在
打开电源开关
要将电源开关部署为AWS Lambda,请键入:
git clone https://github.com/binxio/aws-cloudformation-power-switch.git cd aws-cloudformation-power-switch.git aws cloudformation deploy \ --capabilities CAPABILITY_IAM \ --stack-name aws-cloudformation-power-switch \ --template-file ./cloudformation/aws-cloudformation-power-switch.yaml
演示
安装演示,键入:
aws cloudformation deploy \
--capabilities CAPABILITY_IAM \
--stack-name aws-cloudformation-power-switch-demo \
--template-file ./cloudformation/demo-stack.yaml
本次部署一个ec2实例、一个autoscaling组和一个RDS MySQL数据库实例,它将在23:30关闭由CloudInformation stacks管理的所有ec2、RDS和自动伸缩实例,并在早上7:30开始备份。在
要手动停止所有实例,请键入:
cfn-power-switch --verbose --stack-name-prefix aws-cloudformation-power-switch off
在关闭所有程序之前需要几分钟时间,您可以重新启动堆栈。在
要启动所有备份,请键入:
cfn-power-switch --verbose --stack-name-prefix aws-cloudformation-power-switch off
几分钟后一切恢复正常。在
不要忘记删除堆栈:
aws cloudformation delete-stack --stack-name aws-cloudformation-power-switch-demo
注意事项
- 电源开关将只启动
stopped
状态, and stop instances in the
可用or
运行状态的实例。如果没有在两个州之间采取过渡行动。在 - 由于CloudFormation没有将
aws:cloudformation:
标记放在RDS Aurora集群上,我们需要加载所有CloudFormation堆栈和资源,以确定是否需要启动或停止它。列出所有的云形成堆栈非常非常慢。。。在
- 项目
标签: