概述
常见的lb 负载有硬件的f5 big-ip ,同时对于互联网公司大家常用的是nginx haproxy
了解k8s 集群高可用的都知道 api server 是无状态的(etcd 解决了),但是controller-manager
scheduler 组件必须在集群中只能保证有一份副本,保证一个副本解决的方式就是 --leader-elect=true
参数,
但是api server 一般的建议是做负载均衡,具体使用那种大家一般是nginx 。
这里面有一个坑,就是api server 使用的是长连接(stream),所以默认nginx 的lb 就有问题了。
解决方法:
a. 使用haproxy 进行api server 的lb (简单,好使,不用你添加太多的东西就可以了)
b. 修改nginx proxy_pass 参数让支持 stream 模式
proxy_set_header Connection '';
proxy_http_version 1.1;
chunked_transfer_encoding off;
proxy_buffering off;
proxy_cache off;
参考资料:
https://stackoverflow.com/questions/13672743/eventsource-server-sent-events-through-nginx
http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_buffering
最后
以上就是积极香菇为你收集整理的k8s api server ha 连接配置问题的全部内容,希望文章能够帮你解决k8s api server ha 连接配置问题所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复