【问题标题】:deploy / configure multiple VMs in a cloud service在云服务中部署/配置多个虚拟机
【发布时间】:2015-10-29 21:09:32
【问题描述】:
我在一个云服务中有 3 个虚拟机 - 它们都是相同的。由于 SLA 和负载平衡,我创建了 3。但是,当我想更新我的虚拟机(部署、配置我的机器等)时,我必须通过 SSH 连接到每个虚拟机并执行 3 次相同的工作。
是否有可能只 SSH 一次,所有其他虚拟机都得到我所做更改的“副本”?
注意:我不使用 Visual Studio。
【问题讨论】:
标签:
azure
azure-virtual-machine
azure-deployment
【解决方案1】:
欢迎来到自动化的美妙世界!
最简单的方法是编写一个脚本来执行您想要执行的工作,然后让另一个脚本将其发送到服务器并运行它,将结果反馈给您。
有许多工具可以为您完成这项工作。 (查看 Puppet、Chef、Ansible、Salt)这些的基础是您告诉它您要管理的服务器,将服务器设置为组,然后配置脚本以针对这些组运行(这大大简化了!它们是能力远不止于此)
最后,如果您正在查看的是代码部署,您可以将其挂载到共享路径上,或者从 github 等中拉下它(或者您可以让 github 等告诉您的服务器代码已更改(通过一个网络钩子))
在撰写本文时,我正在构建三个通过 Azure 资源管理模板构建的网络服务器,一旦它们运行,它们就会从 blob 存储下载脚本并自动配置自己。目的是我永远不需要登录这些服务器,如果我在任何时候登录,然后我会返回并编辑脚本以处理我以前没有做过的事情。
首先要让自己进入自动化的心态。因为从长远来看,它可以节省大量时间,并且您的构建通常最终会变得更有弹性。