自动化微服务负载平衡/扩展

时间:2015-07-20 07:16:00

标签: docker load-balancing coreos microservices akka-cluster

现在阅读微服务几天我想知道人们如何自动化负载平衡和扩展这些东西?

我有一个特定的场景,我想要实现的目标,但不确定是否可能或者我认为它错了。所以这就是......

假设我有一个名为A,B和C的3台CoreOS机器的集群。

我想要的第一件事是透明部署,我可以使用它。

然后我想检测一下,当其中一个服务处于巨大负载并部署它的另一个实例并且有一个并且第一个部署时,会以不会破坏正在使用的其他服务的方式自动加载平衡它(从现在开始流量通过负载均衡器)。

另一种方法是我手动部署另一个版本的服务,然后自动进行负载平衡,并将路由器路由到负载均衡器。

然后是最后一个问题,这与Akka集群有什么不同,以及这些与微服务的发展有何不同?

1 个答案:

答案 0 :(得分:4)

在我看来,在您提出的问题中,有一个提示您的回答“(流量通过负载均衡器从现在开始)”。

我会说 - 流量应始终通过负载均衡器

在最简单的情况下,当你拥有每个服务的1个实例时,它仍然必须通过负载均衡器(顺便说一下,我认为至少有2个服务是个好主意。)

在这种情况下,当你获得3倍的流量并想要启动同一服务的另一个容器时,一旦容器启动并运行,它必须在服务发现工具中注册自己并自动更新load-balancer配置以添加新的'上游'进入。

然后使用这种方法,您将能够更轻松地扩展/缩小服务。