在云服务中部署/配置多个虚拟机

deploy / configure multiple VMs in a cloud service

我在一个云服务中有 3 个虚拟机 - 它们都是相同的。由于 SLA 和负载平衡,我创建了 3 个。但是,当我想更新我的 VM(部署、配置我的机器等)时,我必须通过 SSH 连接到每个 VM 并执行 3 次相同的工作。 是否有可能仅通过 SSH 一次,所有其他 VM 都会获得我所做更改的 "copy"? 注意:我使用Visual Studio。

欢迎来到美妙的自动化世界!

最简单的方法是编写一个脚本来执行您要执行的工作,然后使用另一个脚本将其 scp 到服务器并 运行s 它,将结果反馈给您。

有许多工具可以为您完成这项工作。 (查看 Puppet、Chef、Ansible、Salt)这些基础知识是您告诉它您要管理的服务器,将服务器分组,然后针对这些组配置脚本 运行(这非常重要简化!他们的能力远不止于此)

最后,如果您正在查看的是代码部署,您可以将其安装在共享路径上,或者将其从 github 等中拉下来(或者您可以 github etc 告诉你的服务器代码已经改变(通过 webhook))

在撰写本文时,我正在构建三个通过 Azure 资源管理模板构建的网络服务器,一旦它们 运行ning,它们就会从 blob 存储下载脚本并自动配置自己。目的是我永远不需要登录这些服务器,如果我在任何时候登录,然后我返回并编辑脚本以处理我以前没有做过的事情。

这是关于让自己首先进入自动化的心态。因为它在长 运行 中节省了大量时间,因此您的构建通常最终会变得更有弹性。