Elastic Beanstalk 弹性负载均衡器名称

Posted

技术标签:

【中文标题】Elastic Beanstalk 弹性负载均衡器名称【英文标题】:Elastic Beanstalk's Elastic Load Balancer name 【发布时间】:2013-08-10 08:46:08 【问题描述】:

我在 AWS 上创建了一个新的 Elastic Beanstalk 应用程序。我必须使用 CNAME 通过 Network Solutions 管理的 DNS 将流量重定向到 Elastic Load Balancer 的端点,并且它们对 CNAME 目标的长度有大小限制。似乎 Elastic Beanstalk 为其负载均衡器选择了非常大的随机名称。

    有没有办法重命名负载平衡器? 有没有办法在 Elastic Beanstalk 初始化时指定负载均衡器名称? 如果我只是创建一个新的负载均衡器,有没有办法将它添加到我的 Elastic Beanstalk 环境中?

【问题讨论】:

回应@Yurinator 的回答中提出的问题:为什么必须将流量重定向到ELB 地址而不是.elasticbeanstalk.com 地址? 因为 CNAME 对客户端可见并且需要第二次查找 - 将您的 ELB 设置为“别名”意味着它的 IP 将成为 A 记录并通过 ELB/Beanstalk 更改保持 【参考方案1】:

很遗憾,前两个答案是否定的。

最后一个,你可以做到,但它或多或少违背了弹性豆茎的流程。您需要使用您喜欢的任何名称创建自己的 ELB,然后将其放在 beanstalk 创建的实例的前面。您需要删除 beanstalk 创建的 ELB,以免它坐在那里花费您的钱。

我不记得 beanstalk 是否通过 AutoScaling 组引导其环境,但如果是,您需要将该 AutoScaling 组与您的新 ELB 相关联。

创建并同步所有这些后,您需要将您的 CNAME 指向您的新定制 ELB。

应该可以的。

【讨论】:

如何找到我的 AutoScaling 组的名称? 转到您的应用程序的 Elastic Beanstalk 仪表板。它应该为您提供自动缩放组名称。它看起来像Created Auto Scaling group named: awseb-e-2jbfnqmxsp-stack-AWSEBAutoScalingGroup-O6GTFFB8V7O0 当我尝试按照您的步骤操作并重新加载 EB 配置时,我收到以下错误,并且 EB 应用程序永远不会退出“更新”状态错误 Elastic Load Balancer awseb-ey-AWSEBLoa-1HFWF1HL1ZQ4Z找不到。如果此问题仍然存在,请尝试重建您的环境。 啊,是的。这样做之后,您在使用 Elastic Beanstalk 框架时会遇到问题。该应用程序将运行并工作,但从那时起您将无法使用 beanstalk。鉴于您的限制,您最好从网络解决方案迁移到 Route53,或者自己构建由弹性 beantalk 创建的资源。【参考方案2】:

您可以为您的自定义域创建 CNAME 以使用弹性 beanstalk DNS。比如:

www.my-custom-domain.com CNAME to my-stalk-name.elasticbeanstalk.com

这样您就不会依赖自动生成的 ELB 名称。你的豆茎名字是你自己定义的,不会变的。

【讨论】:

以上是关于Elastic Beanstalk 弹性负载均衡器名称的主要内容,如果未能解决你的问题,请参考以下文章

Cloudformation 协助 Elastic Beanstalk 和 Application Load Balancer

在 AWS Elastic Beanstalk 应用程序上启用 HTTPS

Elastic Beanstalk 和 Spring Boot 将 HTTP 重定向到 HTTPS

Elastic Beanstalk 经典负载均衡器

限制对 Elastic Beanstalk 的 HTTP 访问

没有负载均衡器的 Elastic Beanstalk 别名