转载

Microsoft Azure Scale Sets发布公共预览版

在近期的一篇博客中,负责微软Azure产品的CTO Mark Russinovich宣布了Azure Scale Sets这一新特性的公开预览版的发布。Azure Scale Sets属于一种Azure计算资源,通过这一特性,可以对一组虚拟机(VM)以集合或组合的形式进行部署及管理。

对于那些需要部署一组相同规格的虚拟机的客户来说,当他们在部署虚拟机,或是对这些虚拟机进行水平伸缩时,这一新特性能够为他们带来一种一致的管理体验。通过这一服务,客户就无需事先搭建好额外的虚拟机以备不时之需了。

Azure Scale Set支持运行Windows系统或Linux系统的虚拟机,也支持各种虚拟机的扩展。这一特性不仅支持Azure Marketplace中提供的虚拟机,也支持自定义的虚拟机。如果要创建或部署一个Azure Scale Set,开发者可以利用基于JSON格式的 Azure Resource Manager (ARM)模板,通过ARM进行部署。此外,也可以通过PowerShell cmdlet 或Azure命令行( CLI )工具进行部署。

在定义Azure Scale Set时,客户必须指定一些必要的资源,包括一个资源组、网络适配(NIC)、可扩展存储、各种扩展以及负载均衡器(如适用)。

Microsoft Azure Scale Sets发布公共预览版

图片来源: https://azure.microsoft.com/en-us/blog/azure-vm-scale-sets-public-preview/

管理员也需要设定VM Scale Set的各种属性,包括所预期的VM的数量(上限),以及指示如何对伸缩操作进行管理的阀值。不过,按照Russinovich 所说 :“与单实例的虚拟机组不同,在VM Scale Set中,你无需为每个虚拟机实例分别定义网络、存储属性和扩展资源,以及为这些资源建立关联。”

下图展示了如何通过ARM模板定义各种属性,包括capacity属性。

Microsoft Azure Scale Sets发布公共预览版

图片来源: (视频截图) https://www.youtube.com/watch?v=vh6sLvTNCCs

来自微软的高级程序经理Guy Bowerman 提出 了一种适合使用这种架构的场景,即一个多虚拟机的无状态web farm。在这种场景下,某个web客户端能够连接至某个具有外部IP地址的负载均衡器上。随后,负载均衡器将通过轮询调度算法,将访问在Azure Scale Set中所定义的多个VM中进行路由。如果在这个Scale Set中产生了CPU占用率升高的情况,比方说占用率在60%以上的情形持续了超过5分钟,那么该平台将自动创建另一台VM以进行水平伸缩。而一旦负载下降,比方说近5分钟内CPU占用率始终低于50%,该平台就会自动减少VM的数目。

下图展示了该架构的大体结构。

Microsoft Azure Scale Sets发布公共预览版

图片来源: (视频截图) https://www.youtube.com/watch?v=vh6sLvTNCCs

Bowerman还描述了另一种使用场景,它牵涉到网络地址转换(NAT)的使用,使私有的或内部的网络端口对外部客户端展现为不同的IP地址。在这一场景中,管理员可定义一个外部端口的范围,例如从50000至50100。而在服务端内部,每个虚拟机仍然将暴露他们的常见端口号,例如用于SSH的端口号依然为22。Inbound NAT规则将为外部端口范围与内部虚拟机之间提供一个端口映射机制。例如端口号50000将对应第一台虚拟机,端口号50001则对应第二台虚拟机,以此类推。对于这种方式,可以减少外部端口号与内部服务器之间的关联。

下图展示了这种配置是如何搭建的。

Microsoft Azure Scale Sets发布公共预览版

图片来源: (视频截图) https://www.youtube.com/watch?v=vh6sLvTNCCs

查看英文原文: Microsoft Azure Scale Sets In Public Preview

正文到此结束
Loading...