我们最近需要将 Microsoft.Powershell.DSC 扩展添加到包含我们的服务结构集群的 VMSS。我们使用我们的 ARM 模板重新部署了集群,并添加了新的 DSC 扩展。在部署期间,我们观察到在给定时间,多达 5 个规模集实例中有 4 个处于重启阶段。在此期间,我们集群中的服务也没有响应。中断只有几分钟,但这似乎是不应该发生的事情。
- 可靠性等级:银
- 耐久等级:青铜
我们最近需要将 Microsoft.Powershell.DSC 扩展添加到包含我们的服务结构集群的 VMSS。我们使用我们的 ARM 模板重新部署了集群,并添加了新的 DSC 扩展。在部署期间,我们观察到在给定时间,多达 5 个规模集实例中有 4 个处于重启阶段。在此期间,我们集群中的服务也没有响应。中断只有几分钟,但这似乎是不应该发生的事情。
我建议阅读这篇文章。它是一个 MS 员工博客。我将复制相关部分:
如果您不介意同时重新启动所有 VM,可以将 upgradePolicy 设置为“Automatic”。否则,将其设置为“手动”并自行将规模集模型的更改应用于各个 VM。在保持应用程序正常运行时间的同时,编写向 VM 推出更新的脚本相当容易。有关更多详细信息,请参阅https://docs.microsoft.com/en-us/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-upgrade-scale-set。
如果您的规模集位于 Service Fabric 群集中,则某些更新(例如更改操作系统版本)会被阻止(当前 - 将来会更改),并且建议将 upgradePolicy 设置为“自动”,因为 Service Fabric 会负责安全地应用模型更改(如更新的扩展设置),同时保持可用性。
这是由选定的耐久等级“青铜”引起的。
持久性层用于向系统指示 VM 对基础 Azure 基础结构具有的特权。在主节点类型中,此权限允许 Service Fabric 暂停任何影响系统服务和有状态服务的仲裁要求的 VM 级别基础结构请求(例如 VM 重新启动、VM 重新映像或 VM 迁移)。在非主节点类型中,此权限允许 Service Fabric 暂停任何 VM 级别的基础架构请求,例如 VM 重新启动、VM 重新映像、VM 迁移等,这些请求会影响在其中运行的有状态服务的仲裁要求。
青铜 - 没有特权。这是默认设置,如果您只是 > 在集群中运行无状态工作负载,建议您使用此设置。