在应用程序网关后面预配 Service Fabric

Provisioning Service Fabric behind Application Gateway

我们正在努力实现这一目标。 根据我的理解,我们应该将 SF 负载均衡器的外部接口放在专用网络上,然后使用 Azure 虚拟网络对等连接到 App Gateway 的 LB 内部接口。

这个可行吗,有什么问题吗?

我认为使用 Azure API 管理而不是应用程序网关可以更好地支持抽象 Service Fabric。

我假设您的 SF 在 Azure 上,然后 API 管理内置了对 Service fabric 的支持,因此您不必进行端点解析或获取分区键等

是的,这是可行的。您可以采用多种方法 -

  1. 部署直接指向 sf 节点的 App Gateway,如此处所示 - Fine Granular Microservices Load Balancing with Azure Service Fabric and Application Gateway

  2. 部署指向 SF LB

  3. 的 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 和应用程序网关。