2017-08-16 140 views
0

我想在外部公开我的Kubernetes部署。我选择创建一个类型为“LoadBalancer”的Kubernetes'服务'。是否提供Kubernetes LoadBalancer服务?

我可以假设这个负载平衡器在我的集群之外进行配置吗?如果是这样,是我的容器/云提供商(在这种情况下为Azure)的责任,为我的Kubernetes集群配置LB?

这是否会引入单点故障?当LB失败时会发生什么? Azure/Amazon/Google是否会以另一个“热门”LB正在等待跳入的方式提供LB?或者是否有可能我的应用程序暂时不可用,而Azure提供给我另一个LB?

Kubernetes和Kubernetes托管服务之间似乎存在一个灰色区域。

回答

0

不天青/亚马逊/谷歌提供的LB:你可以阅读更多关于它在这里?

现在,Azure确实对不支持支持。 Azure仅为您的可用性集支持一个负载平衡器。

在Azure中,无法为一个可用性集合部署两个LB。根据我的知识,Azure负载平衡器SLA与Azure Vnet相同,只有当此位置关闭时,LB才会关闭。

顺便说一句,Azure支持在一个LB中创建多个VMS以提供较高的SLA,所以我猜LB不会失效。

但是我还没有找到关于Azure负载均衡器SLA的官方文章。

这是否会引入单点故障?

根据我的知识,我不认为这是一个单一的失败点。

0

对于Google Container Engine,外部云负载平衡器由Google创建和管理。

在这里您可以看到我为已删除的集群设置的负载均衡器的示例。 enter image description here

当我添加或删除节点池时,云负载平衡器将自动更新配置。请注意,这与入口控制器不同。的方式,另一种“热” LB正在等待在跳https://cloud.google.com/container-engine/docs/tutorials/http-balancerhttps://cloud.google.com/load-balancing/

+0

我假设你向我展示谷歌的云计算负载均衡是如何实现的,在这种情况下,通过创建LB的3个实例因此,如果1个LB实例发生故障,则其他2个实例无缝处理请求。这是正确的吗? – anschoewe

0

我问我们的微软代表这样一个问题:

这似乎是一个愚蠢的问题,但如果我提供的Azure的LB (4层)或网关(7层),我可以承担LB容错? 含义是,如果运行该实际LB的底层硬件死亡,则由Microsoft控制的其他一些虚拟机将进入并继续处理流量 。我有权利承担这一点吗?我无法找到任何关于Azure如何处理此问题的详细信息 。这一点很重要,因为如果Azure LB 可伸缩,Kubernetes节点的群集 不应变为不可用。我不想单点失败。思考?

我收到的答复如下:

是。

因此,虽然这没有透露任何实施细节,但它确实证明LB是高度可用的。

+0

是的,LB是高度可用的。 –

+0

感谢您的确认。你原来的答案或多或少都是这样说的,所以我给你信贷。 – anschoewe

相关问题