自动化微服务负载平衡/缩放

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

我有一个特定的想法,我想实现,但不知道是否有可能,或者我正在考虑错误。 所以在这里呢…


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

首先我想要的是透明部署,我可以使用舰队。

然后,我想要检测,当其中一个服务负载巨大,部署另一个实例,并部署了一个和第一个,自动负载平衡的方式,不会中断其他服务正在使用它(stream量从现在起经过负载平衡器)。

另一种方式可能是我手动部署服务的其他版本,然后自动进行负载平衡,并将stream量路由器传输到负载平衡器。

那么最后一个问题,这和Akka集群有什么不同呢?这些与微服务有什么不同呢?

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

我会说 – 交通应该总是通过负载平衡器

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

在这种情况下,当您获得3倍的stream量,并想要启动另一个相同服务的容器时,一旦容器启动并运行,它必须在服务发现工具中注册自己,并自动更新负载平衡器configuration以添加新的“上游”条目。

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