【问题标题】:Move from a Single Instance to a Load Balanced configuration从单个实例迁移到负载平衡配置
【发布时间】:2019-03-11 04:25:27
【问题描述】:

我们目前在 AWS ElasticBeanstalk 上有一个站点作为生产中的单个实例,但我们希望将其更改为负载平衡。

该站点目前使用 .ebextensions 来运行一些东西,并且还设置了来自 LetsEncrypt 的 SSL。除此之外,这是一个非常标准的 Magento 网站。

那么,在不导致任何停机的情况下进行切换并通过 HTTPS 保持网站可用的最佳方式是什么?

我假设它并不像在配置中将其从单个实例更改为负载平衡那样简单 -> 修改容量,然后将其设置为例如 1:5 以实现实例可用性?

【问题讨论】:

    标签: amazon-web-services amazon-ec2 amazon-elastic-beanstalk


    【解决方案1】:

    是的,真的就是这么简单。但是,会有少量的停机时间。

    在证书管理器中创建 SSL 证书。这将用于负载平衡器。

    然后在 AWS 控制台中切换配置以添加负载均衡并设置 Auto Scaling 启动配置。

    重新配置大约需要两分钟(根据我的经验)。

    【讨论】:

    • 谢谢,@john-hanley。一些,可能是简单的问题:1)负载均衡器如何知道使用我在证书管理器中创建的证书,亚马逊魔术? 2) 我们域的 A 记录当前指向 Amazon EB 环境 URL (abc.eu-west-1.elasticbeanstalk.com),我认为这仍然是入口点,因为负载均衡器会自动映射到那个? 3) 如果在创建证书/更改配置后出现问题,我们是否可以简单地选择返回单服务器模式而没有任何问题(除了一两分钟的停机时间)?
    • 1) 当您在 Beanstalk 控制台中添加负载均衡器时,如果您有(定义)HTTPS 侦听器,您将选择要使用的证书。 2) 添加负载均衡器时,dns 名称不会改变。 3) 是的,您只需将配置改回来(删除负载均衡器,...),Beanstalk 将自动缩减。您也可以先保存环境。根据我的经验,Beanstalk 是相当防弹的。
    • 啊,所以步骤应该是 1)通过证书管理器创建 SSL 证书,2)通过 EC2>负载均衡器>创建负载均衡器创建负载均衡器,3)前往 EB 并更改为负载平衡配置?如果是这样,在进入第 3 步之前,第 2 步会干扰网站吗?
    • 不完全是。第 1 步是正确的。负载均衡器等由 Beanstalk 在 Beanstalk 控制台中创建和配置。您不要在 Beanstalk 之外创建负载均衡器。
    • 谢谢,@john-hanley,我认为可能是这样。但是,当我从选择菜单中选择负载平衡时,我没有看到任何 SSL 选项?我假设这意味着 EB 将创建负载均衡器,但我需要进入 EC2>负载均衡器并将其设置为接受 443 上的请求并更改 SSL 证书?非常感谢您的帮助!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-23
    • 2014-08-31
    • 1970-01-01
    • 1970-01-01
    • 2023-02-04
    • 2018-02-17
    相关资源
    最近更新 更多