【问题标题】:Blue green deployment on microservices - how to route 10% of traffic to one one instance and remaining 90% of traffic to other instance [duplicate]微服务上的蓝绿色部署 - 如何将 10% 的流量路由到一个实例,将剩余 90% 的流量路由到另一个实例 [重复]
【发布时间】:2015-10-23 17:24:59
【问题描述】:

我在 Bluemix(cloud Foundry)中有两个相同的微服务实例。我想将 90% 的流量路由到一项服务,将剩余 10% 的流量路由到其他服务。您能告诉我如何在 Bluemix 中执行此操作吗

【问题讨论】:

    标签: cloud ibm-cloud cloud-foundry microservices


    【解决方案1】:

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

    【讨论】:

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

    这目前在 Cloud Foundry 中是不可能的,它是 Bluemix 所基于的开源平台。

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

    【讨论】:

      【解决方案3】:

      正如詹姆斯所说 - 目前不可能。

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

      使用这种方法的风险是:

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

      您可以通过在“负载均衡器”应用上使用多个实例来最大程度地降低第一个风险。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-12-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-10-03
        • 2021-11-30
        相关资源
        最近更新 更多