Amazon web services 如何在AWS CloudFormation模板中的Elastic Beanstalk实例上设置运行状况检查URL?
我有一个CloudFormation模板,可以启动弹性Beanstalk服务。我想在模板中将健康检查URL设置为Amazon web services 如何在AWS CloudFormation模板中的Elastic Beanstalk实例上设置运行状况检查URL?,amazon-web-services,amazon-cloudformation,Amazon Web Services,Amazon Cloudformation,我有一个CloudFormation模板,可以启动弹性Beanstalk服务。我想在模板中将健康检查URL设置为/health JSON中的约定是什么 您需要设置AWS::ElasticBeanstalk::Environment的选项设置属性: 例如: { "Type" : "AWS::ElasticBeanstalk::Environment", "Properties" : { "ApplicationName" : { "Ref" : "sampleApplica
/health
JSON中的约定是什么 您需要设置AWS::ElasticBeanstalk::Environment的
选项设置属性:
例如:
{
"Type" : "AWS::ElasticBeanstalk::Environment",
"Properties" : {
"ApplicationName" : { "Ref" : "sampleApplication" },
"Description" : "AWS Elastic Beanstalk Environment running PHP Sample Application",
"VersionLabel" : "Initial Version",
"OptionSettings" : [
{
"Namespace" : "elasticbeanstalk:application",
"OptionName" : "Application Healthcheck URL",
"Value" : "/health"
}
],
"TemplateName" : "DefaultConfiguration",
}
}
在此示例中,选项应用程序健康检查URL
设置为/health
有关更多信息,请参阅:
罗德里戈的回答很好,但不完整
您还需要将health\u check\u类型修改为ELB,否则,当您的web应用程序进程崩溃时,但是您的EC2保持健康,节点将不会被替换
这是我正在使用的格式
$ cat .ebextensions/0090_healthcheckurl.config
Resources:
AWSEBAutoScalingGroup:
Type: "AWS::AutoScaling::AutoScalingGroup"
Properties:
HealthCheckType: "ELB"
HealthCheckGracePeriod: "600"
option_settings:
- namespace: aws:elasticbeanstalk:application
option_name: Application Healthcheck URL
value: /_status
这还不够,我已经做了相当一段时间了,只是受到了伤害。它会在LB上添加运行状况检查,是的,但不会在单个实例上添加。因此实例仍将报告为健康,不会被踢出健康检查url的目的是检查每个实例,如果它们没有响应,则将其从ELB中删除。你看到了不同的行为吗?有关更多信息,请参阅。如果HealthCheckType设置为EC2而不是ELB,则不会从ELB中删除它们…警告:它仅适用于经典负载平衡器。对于应用程序负载平衡器,选项_name应用程序Healthcheck URL不起作用,必须使用进程ALB HealthCheckPath。看到或