有谁知道是否可以将现有的 AWS Elastic Beanstalk 环境更改为应用程序负载均衡器(而不是经典的)。
据我所知,AWS WAF 和 DDOS “Shield”只能保护应用程序 ELB,因此任何现有的 EB 应用程序都无法利用这些功能,因为它们具有经典的 ELB。
有谁知道是否可以将现有的 AWS Elastic Beanstalk 环境更改为应用程序负载均衡器(而不是经典的)。
据我所知,AWS WAF 和 DDOS “Shield”只能保护应用程序 ELB,因此任何现有的 EB 应用程序都无法利用这些功能,因为它们具有经典的 ELB。
无法更改现有环境的负载均衡器类型,但我使用以下过程创建了一个带有应用程序负载均衡器(而不是经典)的克隆环境。
eb config get [save name]
,您将在.elasticbeanstalk\saved_configs
.OptionSettings:
aws:elasticbeanstalk:environment:
LoadBalancerType: application
并删除(如果有的话):
aws:elb:loadbalancer:
CrossZone: true
aws:elb:policies:
ConnectionDrainingEnabled: true
aws:elb:listener:443:
[whatever]
您可以利用此机会进行其他更改,例如升级PlatformArn
eb config put [new save name]
..ebextensions
以拥有LoadBalancerType: application
并可选择将侦听器添加到 elbv2。您也可以稍后在控制台中手动创建。aws:elbv2:listener:443:
ListenerEnabled: true
SSLPolicy: ELBSecurityPolicy-TLS-1-2-2017-01
SSLCertificateArns: [your cert id]
DefaultProcess: default
Protocol: HTTPS
Rules: ''
eb create [new env name] --cfg [new save name]
现在,您将拥有一个具有不同负载均衡器类型的新环境,并与您的旧环境并排。您可以执行测试,进行进一步的配置更改,然后如果一切正常,交换 CNAME 并终止以前的环境。
您好,根据 AWS 文档:
Elastic Beanstalk 环境管理控制台仅支持使用 Classic Load Balancer 创建和管理 Elastic Beanstalk 环境。有关其他选项,请参阅Application Load Balancer和 Network Load Balancer。
还
说明 您只能在环境创建过程中设置负载均衡器类型。(请参阅 AWS 文档)
因此,当您通过AWS CLI将应用程序部署到 Elastic Beanstalk 时:
尝试
eb create test-env --elb-type network
或者
eb create test-env --elb-type application
我发现更改现有应用程序以使用应用程序负载均衡器的最简单方法是同时使用控制台和 CLI:
<saved-config-name>
.<app-version>
.eb create <new-environment-name> --elb-type application --cfg <saved-config-name> --version <app-version>