如何以编程方式将 elastic-beanstalk 创建的自动缩放组的健康检查类型设置为 ELB?

How to set the health-check-type of an auto-scaling-group created by elastic-beanstalk as ELB programmatically?

我只是按照这个 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 modification of eb-python-flask.

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

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

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

像下面这样的 ebextension 就可以做到:

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

我使用路径.ebextensions/autoscaling.config

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

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

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

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