Azure Service Fabric 如何为全状态服务支持多区域?
我了解可以为无状态服务配置多区域支持,但是陈述完整服务如何跨越多区域
答案 0 :(得分:0)
可以从FAQ
进行,但不建议公开使用我可以创建一个跨多个Azure区域或我自己的数据中心的群集吗?
是的
可以使用核心Service Fabric群集技术进行组合 只要有网络就可以在世界任何地方运行 彼此之间的连通性。但是,构建并运行这样一个 集群可能很复杂...
有很多挑战和局限性,例如VNET不能跨越多个区域,性能和延迟。
在有状态服务上,挑战将更加严峻,因为必须先复制数据才能将其视为“已提交”,而且必须在多个区域中复制数据,这会增加大量延迟并增加发生故障的风险,因此它也可能受到网络速度影响的速度将不及相同区域或同一数据中心内区域之间的连接速度。还存在将服务(数据)实例放置在可以在不同区域上同时删除的放置组上的风险,即使它们是不同的域,它们也可能处于相同的维护计划中。
在Azure内部,基于SF的服务(如EventHub)被部署为同一区域内跨越多个区域的多个群集。在整个区域发生故障的情况下,这已经为您的群集提供了足够的可靠性,为了获得更好的可靠性和持久性,您可以将现有群集镜像为另一个区域中的故障转移,并进行连续的备份\还原以保持同步。