在应用程序网关后面预配 Service Fabric
Provisioning Service Fabric behind Application Gateway
我们正在努力实现这一目标。
根据我的理解,我们应该将 SF 负载均衡器的外部接口放在专用网络上,然后使用 Azure 虚拟网络对等连接到 App Gateway 的 LB 内部接口。
这个可行吗,有什么问题吗?
我认为使用 Azure API 管理而不是应用程序网关可以更好地支持抽象 Service Fabric。
我假设您的 SF 在 Azure 上,然后 API 管理内置了对 Service fabric 的支持,因此您不必进行端点解析或获取分区键等
是的,这是可行的。您可以采用多种方法 -
部署直接指向 sf 节点的 App Gateway,如此处所示 - Fine Granular Microservices Load Balancing with Azure Service Fabric and Application Gateway
部署指向 SF LB
的 App Gateway
渔获量:
周围有limitations
您可以拥有多少个后端地址池(最多 20 个),以及每个池可以 运行 使用多少台机器和 http 设置。因此,例如,如果您有成千上万的 SF 集群
在不同端口托管的服务,考虑使用 SF LB 和 SF 反向代理。
Azure 应用程序网关需要其子网。创建虚拟网络时,请确保保留足够的地址 space 以拥有多个子网。部署应用程序后
网关到子网,只能将其他应用程序网关添加到子网。
在深入研究您的问题时,我发现 App Gateway 在某些情况下可能无法很好地与 websocket 配合使用。查看
Communication through Azure Application Gateway blocked for WebSocket traffic 了解详情。
P.S.
如果您的 SF LB 是 public,则您不需要 VNET 对等互连。这同样适用于安装在同一个 VNET 中的私有 SF LB 和应用程序网关。
我们正在努力实现这一目标。 根据我的理解,我们应该将 SF 负载均衡器的外部接口放在专用网络上,然后使用 Azure 虚拟网络对等连接到 App Gateway 的 LB 内部接口。
这个可行吗,有什么问题吗?
我认为使用 Azure API 管理而不是应用程序网关可以更好地支持抽象 Service Fabric。
我假设您的 SF 在 Azure 上,然后 API 管理内置了对 Service fabric 的支持,因此您不必进行端点解析或获取分区键等
是的,这是可行的。您可以采用多种方法 -
部署直接指向 sf 节点的 App Gateway,如此处所示 - Fine Granular Microservices Load Balancing with Azure Service Fabric and Application Gateway
部署指向 SF LB
的 App Gateway
渔获量:
周围有limitations 您可以拥有多少个后端地址池(最多 20 个),以及每个池可以 运行 使用多少台机器和 http 设置。因此,例如,如果您有成千上万的 SF 集群 在不同端口托管的服务,考虑使用 SF LB 和 SF 反向代理。
Azure 应用程序网关需要其子网。创建虚拟网络时,请确保保留足够的地址 space 以拥有多个子网。部署应用程序后 网关到子网,只能将其他应用程序网关添加到子网。
在深入研究您的问题时,我发现 App Gateway 在某些情况下可能无法很好地与 websocket 配合使用。查看 Communication through Azure Application Gateway blocked for WebSocket traffic 了解详情。
P.S.
如果您的 SF LB 是 public,则您不需要 VNET 对等互连。这同样适用于安装在同一个 VNET 中的私有 SF LB 和应用程序网关。