停止并启动Elastic Beanstalk服务

时间:2013-12-05 10:12:56

标签: amazon-web-services elastic-beanstalk

我想知道是否有一个选项可以将Amazon Elastic Beanstalk作为一个原子单元停止,因为我可以使用EC2服务器而不是通过每个服务(例如负载均衡器,EC2 ..)和STOP(和START)它们独立地?

3 个答案:

答案 0 :(得分:18)

EB command line interface有一个eb stop命令。 Here有点关于命令实际执行的内容:

  

eb stop命令删除运行应用程序的AWS资源(例如ELB和EC2实例)。但它会留下您已部署的所有应用程序版本和配置设置,因此您可以快速重新开始。当您开发和测试应用程序并且不需要AWS资源运行过夜时,Eb stop非常理想。你可以通过简单地运行eb start来重新开始。

编辑:

如下面的评论中所述,这不再是新eb-cli中的命令。

答案 1 :(得分:4)

如果您有负载均衡的环境,可以尝试以下技巧

$ aws autoscaling update-auto-scaling-group \
--auto-scaling-group-name my-auto-scaling-group \
--min-size 0 --max-size 0 --desired-capacity 0

它将从环境中删除所有实例,但不会删除环境本身。不幸的是,你仍然会支付弹性负载平衡器。但通常EC2是最“重”的部分。

  

是否适用于0?

是的,确实

$ aws autoscaling describe-auto-scaling-groups --region us-east-1 \
--auto-scaling-group-name ASG_NAME \
--query "AutoScalingGroups[].{DesiredCapacity:DesiredCapacity,MinSize:MinSize,MaxSize:MaxSize}"

[
    {
        "MinSize": 2, 
        "MaxSize": 2, 
        "DesiredCapacity": 2
    }
]

$ aws autoscaling update-auto-scaling-group --region us-east-1 \
--auto-scaling-group-name ASG_NAME \
--min-size 0 --max-size 0 --desired-capacity 0

$ aws autoscaling describe-auto-scaling-groups --region us-east-1 \
--auto-scaling-group-name ASG_NAME \
--query "AutoScalingGroups[].{DesiredCapacity:DesiredCapacity,MinSize:MinSize,MaxSize:MaxSize}"

[
    {
        "MinSize": 0, 
        "MaxSize": 0, 
        "DesiredCapacity": 0
    }
]

然后你可以检查环境状态

$ eb status -v
Environment details for: test
  Application name: TEST
  Region: us-east-1
  Deployed Version: app-170925_181953
  Environment ID: e-1234567890
  Platform: arn:aws:elasticbeanstalk:us-east-1::platform/Multi-container Docker running on 64bit Amazon Linux/2.7.4
  Tier: WebServer-Standard
  CNAME: test.us-east-1.elasticbeanstalk.com
  Updated: 2017-09-25 15:23:22.980000+00:00
  Status: Ready
  Health: Grey
  Running instances: 0

在beanstalk webconsole中,您将看到以下消息

INFO Environment health has transitioned from Ok to No Data. 
There are no instances. Auto Scaling group desired capacity is set to zero.

答案 2 :(得分:1)

eb stop已弃用。我也有同样的问题,我能想到的唯一解决方案是备份环境然后恢复它。

这是一篇博文,我正在解释它: http://pminkov.github.io/blog/how-to-shut-down-and-restore-an-elastic-beanstalk-environment.html