公开部署在 Service Fabric 集群上的服务(流量分配由内部负载均衡器处理)

Exposing services deployed on Service Fabric Cluster (with traffic distribution handled by an Internal Load Balancer)

我有一个安全的 Service Fabric 集群(我目前使用的是自签名证书)和一个部署在 azure 上的内部负载均衡器,它配置了所有规则和探测。现在我没有面向 Internet 的负载均衡器或具有 public IP 的等效资源,这意味着我无法从我的 VNet 之外的任何地方访问它。

我需要在不公开 Service Fabric 管理的情况下公开部署在我的集群中的服务 URL(如 westus.cloudapp.azure.com:19080)。

根据我的发现,我的选择是:

  1. 使用 Public 负载均衡器
  2. 配置我的 VPN 网关
  3. 使用应用程序网关

选项 1 意味着我必须用面向 Internet 的负载均衡器替换我现有的内部负载均衡器(如果可能的话),但这也会暴露我的管理 url。或者我将不得不使用具有 Web 层和后端的多层应用程序 - https://azure.microsoft.com/en-in/documentation/articles/load-balancer-internal-overview/

选项 2 需要我配置通过我无权访问的 VPN 网关访问我的私有 IP。

选项 3 似乎再次破坏了现有的内部负载平衡器

有没有什么方法可以使用可以构建在我现有架构之上的东西来自定义路由我对服务的请求?

您可以使用面向 Internet 的负载平衡器,只需将其配置为仅接受和转发面向 public 的服务使用的端口上的流量。如果您不想暴露管理端点,请不要通过负载均衡器暴露端口 19000 和 19080(或您为集群配置的任何端口)。希望您已经 secured your cluster 这样即使未经授权的用户确实以某种方式访问​​了管理端点,他们也无权执行任何操作。