域的 A 记录指向节点故障时,k8s 集群中的 HA

域的 A 记录指向节点故障时,k8s 集群中的 HA

我有一个“如果”的问题

假设有一个 Kubernetes 集群,其中有 4 个节点,某个域指向节点 1 的 IP,Web 应用使用此域,每个节点有 1 个 pod。如果节点 1 发生故障,那么据我所知,应用也会发生故障,因为 A 记录指向发生故障的节点

如何解决以维护 HA 环境?

答案1

这就是Service旨在解决,如果你在云环境中(或者有一个操作员可以提供一些东西,看起来Kubernetes的实现类似于负载均衡器(load balancer),它type: LoadBalancer会从集群外部到集群内部提供一个稳定的入口点,然后 kubernetes 会绕过该 Node 故障进行路由。

在幕后,type: LoadBalancer它只是type: NodePort和负载均衡器之间的粘合剂,所以即使你没有正式的负载均衡器机制,也可以使用type: NodePort和指向的 haproxy 副本每一个集群中的节点将在很大程度上解决您的风险

答案2

感谢 mdaniel 的澄清!

我还找到了一些有用的链接,可以深入了解

HAProxy 服务器可以实现冗余吗?

如何设置具有故障转移功能的 HAProxy?

查看诸如浮动 IP、keepalived 等主题也是一个好主意,如果你的供应商在 digitalocean 上有用于更改浮动 IP 目的地的 API,你可以查看如何操作 https://www.digitalocean.com/community/tutorials/how-to-set-up-highly-available-haproxy-servers-with-keepalived-and-floating-ips-on-ubuntu-14-04

相关内容