NodePort高可用问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了NodePort高可用问题相关的知识,希望对你有一定的参考价值。

参考技术A 笔者的环境中有这样的情况:本单位部署了k8s环境,对外暴露了一个网关地址,相关单位通过这个IP进行调用。
外部对k8s的服务调用一般有几种方式:

但在使用中,开发人员提出这样一种可能:NodePort的调用是采用k8s集群中任意一个node+映射端口号的方式,如果pod没有落在这台node上,它可以把请求转发出去;但如果提供的这个node刚好宕机/相关k8s服务宕机/网卡宕机的情况下,这个请求就没办法转发到了,这就造成这个服务实际可用时但外部却无法调用的情况。
所以这时候我们采用了nginx+keepalive的方法来实现nodeport的高可用。具体原理是:使用keepalive虚拟出VIP,再用nginx配置ip池,通过nginx来管理ip地址,实现高可用。以下为配置过程。
我们把这两个服务安装在k8s的node1/2上。

现在VIP与反向代理都配好了,可以直接访问 http://你的VIP:8080/

以上是关于NodePort高可用问题的主要内容,如果未能解决你的问题,请参考以下文章

Linux里面啥是高可用?

SpringCloud实现高可用

keepalived集群高可用

架构设计复杂度-高可用问题

高可用软件什么意思?哪些高可用软件好用?

高可用软件什么意思?哪些高可用软件好用?