Cloud 微服务上的蓝绿色部署-如何将10%的流量路由到一个实例,将剩余90%的流量路由到另一个实例

Cloud 微服务上的蓝绿色部署-如何将10%的流量路由到一个实例,将剩余90%的流量路由到另一个实例,cloud,ibm-cloud,cloud-foundry,microservices,Cloud,Ibm Cloud,Cloud Foundry,Microservices,我在Bluemix(CloudFoundry)中有两个相同微服务的实例。我想将90%的流量路由到一个服务,剩余的10%的流量路由到其他服务。你能告诉我如何在Bluemix中做到这一点吗?这在Cloud Foundry中是不可能的,开源平台Bluemix是基于此的 唯一的解决办法是有九个旧服务实例和一个新服务实例。循环负载平衡器将平均将10%的流量分配给新实例。正如James所说,这在目前是不可能的 您可以用来“模拟”负载平衡器的一个解决方法是设置一个面向所有请求的应用程序。将路由绑定到此应用程序

我在Bluemix(CloudFoundry)中有两个相同微服务的实例。我想将90%的流量路由到一个服务,剩余的10%的流量路由到其他服务。你能告诉我如何在Bluemix中做到这一点吗?这在Cloud Foundry中是不可能的,开源平台Bluemix是基于此的


唯一的解决办法是有九个旧服务实例和一个新服务实例。循环负载平衡器将平均将10%的流量分配给新实例。

正如James所说,这在目前是不可能的

您可以用来“模拟”负载平衡器的一个解决方法是设置一个面向所有请求的应用程序。将路由绑定到此应用程序,然后在其中包含一些逻辑,这些逻辑只是以9:1的比例将流量重定向到其他服务

使用这种方法的风险是:

  • 从理论上讲,负载平衡器应用程序可能会崩溃
  • 负载平衡器应用程序不知道其他两个服务的状态,因此可能会将流量路由到脱机服务实例

通过在“负载平衡器”应用程序上使用多个实例,您可以将第一个风险降至最低。

实际上,Bluemix不支持该应用程序。 解决方案可以是根据需要在容器上安装并运行正确配置的负载平衡器,并使其按照平衡策略将请求转发给代理。
如果您创建一个容器组而不是一个容器,您还可以拥有一个容错解决方案,而不会出现单点故障。

您可以为我提供一个博客链接或任何其他链接,说明如何在bluemix中设置负载平衡器。不幸的是,我不知道任何关于此的博客帖子,但是您可以关注关于docker容器上的服务配置的任何帖子。关于软件平衡器,我建议您使用haproxy或varnish:最后一个是webproxy,但可以轻松配置为负载平衡器,并且具有非常简单的“配置”语言。你也可以从已有的docker图片开始,你可以在Google上搜索,或者更好的是,你可以在Google上搜索。关于容器,您应该从Bluemix官方文档开始。