Docker Kubernetes 高可用架構設計
官方方案:保證master端不發生單點故障。
- 官方使用一台Load Balancer負載均衡代理3台master端,終端與etcd與work Node節點,通過負載均衡的ip進行連接。
- master端的所有信息都會統一保存到etcd的存儲內。
詳細高可用架構流程
組件流程說明
- master:3台
- Node:3台
- etcd:存儲集群
- LB:兩台Nginx負載均衡+keepalived高可用
- kubectl:1台 跳板調度器(堡壘機)
1、master端所有的api都統一連接到etcd集群(分別雙向通信)
2、master端的調度端與管理端連接到負載均衡服務器
3、kubectl端通過nginx負載均衡vip虛擬IP,將客戶端指令裝發到master端
注:配置多master時需要添加選舉參數選項。
配置文件:/opt/kubernetes/cfg/kube-controller-manager
# 在執行主循環之前,先選舉一個leader。高可用性運行組件時啟用此功能,默認true KUBE_LEADER_ELECT="--leader-elect"