【问题标题】:How to set the health-check-type of an auto-scaling-group created by elastic-beanstalk as ELB programmatically?如何以编程方式将由 elastic-beanstalk 创建的自动缩放组的运行状况检查类型设置为 ELB?
【发布时间】:2019-02-21 07:57:53
【问题描述】:

我只是跟着tutorial 学习如何使用eb 命令。

我想做的一件事是将Elastic-Beanstalk创建的弹性伸缩组的Health Check Type修改为ELB。但我就是不知道怎么做。

这是我所做的:

  1. 通过AWS控制台将环境dev-envHealth Check Type改为ELB

  2. 使用eb config save dev-env --cfg my-configuration将配置文件保存到本地。

  3. ELB 运行状况检查类型未出现在 .elasticbeanstalk/saved_configs/my-configuration.cfg.yml 文件中。这意味着我必须在其他地方指定健康检查类型。

然后我找到另一个article说你可以把健康检查类型放在.ebextensions文件夹中。

所以我对eb-python-flask进行了修改,就是tutorial的例子。

Here's my modificationeb-python-flask

我认为运行eb config put prodeb create prod2-env --cfg prodmy eb-python-flask 会创建一个环境,其Auto Scaling 组的health-check-type 为ELB。但是我错了。 eb 命令创建的健康检查类型仍然是EC2

有人知道如何以编程方式设置健康检查类型吗?

我不想通过 AWS 控制台进行设置。不方便。

【问题讨论】:

    标签: amazon-web-services automation amazon-elastic-beanstalk health-monitoring


    【解决方案1】:

    eb create prod3-env --cfg prod 命令使用 git HEAD 版本创建一个 zip 文件以上传到弹性 beanstalk。

    这可以通过eb create --verbose prod3-env --cfg prod 命令发现,它会显示详细的输出。

    我无法运行自己的configuraion 的原因是我在运行eb create prod3-env --cfg prod 之前没有将配置文件提交到git。

    提交代码修改后,我成功部署了一个健康检查类型为ELB的Auto Scaling Group。

    【讨论】:

      【解决方案2】:

      如下所示的 ebextension 即可:

      Resources: AWSEBAutoScalingGroup: Type: "AWS::AutoScaling::AutoScalingGroup" Properties: HealthCheckType: ELB HealthCheckGracePeriod: 300

      我使用路径 .ebextensions/autoscaling.config

      【讨论】:

      • 我试过这个configuration。但它失败了。添加 ebextension 后我还有什么需要做的吗?
      猜你喜欢
      • 2019-03-17
      • 2015-11-16
      • 2016-06-14
      • 2018-11-07
      • 2018-01-13
      • 2019-10-23
      • 2018-11-02
      • 2020-03-14
      • 2018-03-21
      相关资源
      最近更新 更多