高可用集群架构
生产环境推荐的高可用架构包含以下组件:
节点规划
| 角色 | 数量 | 配置建议 |
|---|---|---|
| 负载均衡器 | 2 台 | HAProxy + keepalived |
| Master | 3 台 | 4核 8G+,1TB 硬盘 |
| Worker | 3+ 台 | 4核 16G+ |
Master 节点建议奇数台(1/3/5),高可用场景推荐 3 台以上。
架构图
┌─────────── VIP ───────────┐
│ HAProxy + keepalived │
│ (192.168.1.100) │
└───────────────────────────┘
│ │ │
┌──────────┼────────┼────────┼──────────┐
│ │ │ │ │
┌────┴───┐ ┌───┴────┐ ┌──┴─────┐ │
│Master1 │ │Master2 │ │Master3 │ │
│API Svr │ │API Svr │ │API Svr │ │
│etcd │ │etcd │ │etcd │ │
│CtrlMgr │ │CtrlMgr │ │CtrlMgr │ │
│Sched │ │Sched │ │Sched │ │
└────────┘ └────────┘ └────────┘ │
│ │ │ │
┌────┴───┐ ┌───┴────┐ ┌──┴─────┐ │
│Worker1 │ │Worker2 │ │Worker3 │ │
│kubelet │ │kubelet │ │kubelet │ │
│proxy │ │proxy │ │proxy │ │
│runtime │ │runtime │ │runtime │ │
└────────┘ └────────┘ └────────┘ │
text
软件组件清单
Master 节点
| 组件 | 说明 |
|---|---|
| kube-apiserver | 集群统一入口 |
| kube-controller-manager | 控制器管理 |
| kube-scheduler | 调度器 |
| etcd | 分布式存储 |
Worker 节点
| 组件 | 说明 |
|---|---|
| kubelet | 节点代理 |
| kube-proxy | 网络代理 |
| 容器运行时 | containerd 或 docker + cri-dockerd |
负载均衡器
| 组件 | 说明 |
|---|---|
| HAProxy | TCP/HTTP 负载均衡 |
| keepalived | VIP 管理,自动故障转移 |
部署方式对比
| 方式 | 特点 | 适用场景 |
|---|---|---|
| kubeadm | 官方推荐,自动化程度高 | 中小规模集群 |
| 二进制手动 | 完全控制,理解原理 | 大规模生产环境 |
| KubeSphere | 国内方案,中文友好 | 快速部署 |
↑