带有 Auto Scaling 的 Google Compute Engine 负载平衡。它会将我的网站复制到新实例吗?
Posted
技术标签:
【中文标题】带有 Auto Scaling 的 Google Compute Engine 负载平衡。它会将我的网站复制到新实例吗?【英文标题】:Google Compute Engine Load Balancing with Auto Scaling. Will it copy my website to new instances? 【发布时间】:2020-05-05 02:17:20 【问题描述】:我是负载平衡和自动缩放的新手。我正在为网站使用 Google 计算引擎。我还创建了一个具有自动扩展功能的实例组。但现在我很困惑。 Auto Scaling 根据负载创建新实例。但是我在哪里更新网站?如果我在一个实例上进行 SSH 连接并更新网站,这是否会更新该组中的所有实例?
例如,我想将更新后的网页上传到实例组中我的 Apache 服务器实例上的 /var/www/html/。它会更新所有自动缩放的实例吗?自动添加新实例时,是否会复制带有网站的最新更新实例?
【问题讨论】:
【参考方案1】:我建议您直接从 Cloud Storage 提供静态内容。不要将 html 页面上传到服务器,而是根据静态资源基本路径(例如 /static/
)将其上传到 Google Cloud Storage 和 set up your Loadbalancer path
如果您想更新将由您的网络服务器处理和丰富的模板,我建议您发布一个新版本并执行转出。事实上,如果您对这个新模板有疑问,您打包的先前版本将很容易执行并保留这些模板的版本控制。
【讨论】:
【参考方案2】:快速回答是否定的。
当您创建实例组时,您选择了一个实例模板,用于配置映像,因此每个新实例都将从此模板中的映像创建。
我很难给你一个完整的答案,因为我不知道你使用哪种部署方法,但如果是静态网站,也许你应该考虑使用谷歌云存储和谷歌CDN。
如果您确实想要更多控制权并且更喜欢将 google 计算与 LB 一起使用,您可以使用一些部署选项:
-
使用新图像创建新模板并使用“滚动”组
更新”选项。
使用下载静态数据的启动脚本
来自 GCS(或其他地方,例如 github)并使用
实例组中的“替换/重启”选项。
Docker 镜像和
谷歌容器注册表。
当然还有更多选择,但我认为这些是最简单和最快的。
【讨论】:
【参考方案3】:简短的回答是否 如果要更新使用负载平衡的应用程序,最快的方法是滚动更新。 请按照给定的说明进行操作。
转到组实例页面 选择适当的实例组,然后从详细信息页面单击滚动更新。 将有多个选项,您需要根据自己的要求配置滚动更新。如果您不知道所有选项的含义,只需使用默认值单击“确定”。希望对你有帮助。
【讨论】:
以上是关于带有 Auto Scaling 的 Google Compute Engine 负载平衡。它会将我的网站复制到新实例吗?的主要内容,如果未能解决你的问题,请参考以下文章
AWS Auto Scaling 下降 ~/.ssh/authorized_keys
Amazon EC2、Auto-Scaling、AMI,有没有更简单的方法?
AWS Beanstalk Auto-scaling Scaling Triggers with HealthyHostCount 或 UnhealthyHost count