Rancher + RKE 部署 K8s 集群总览
Rancher 用全部容器化的形式来部署 k8s 集群,能大幅降低 k8s 集群部署/扩缩容的门槛。你可以用 Rancher 来扩缩容 etcd、k8s-master、k8s-worker。
本文档由
install/kubernetes/rancher/readme.md(528 行)拆分整理。这是 RKE(rke1,通过 Rancher Server UI 添加自定义集群)的部署方式。如果要用 RKE2,另见《RKE2 + Rancher 方式部署 K8s 集群》。
工作原理(总结)
k8s 集群(包括 etcd)的增删节点动作由 Rancher Server 节点控制、由 Rancher Agent 来执行。在新节点上通过运行 Rancher Agent 容器,访问 Rancher Server 获取要执行的部署命令,部署对应的 k8s 组件容器(包含 kubelet、api-server、scheduler、controller 等)。
Rancher 本身并不改变 k8s 的基础组件和工作原理,k8s 的架构依然不变,只不过多了一个认证代理(auth proxy),也就是 kubeconfig 文件中 Rancher Server 中的接口。
子文档目录(TOC)
| 文件 | 内容 |
|---|---|
| 01-机器初始化与镜像准备.md | clone 项目、建设前准备(镜像仓库 / 离线镜像)、centos8 系统初始化(内核模块、iptables、sysctl) |
| 02-部署RancherServer与K8s集群.md | 单节点部署 Rancher Server、启动可能问题、通过 Rancher UI 添加自定义 k8s 集群(含 kubelet/kube-api/etcd 等 yaml 参数)、部署完成后修正 |
| 03-Rancher运维与故障处理.md | 机器重启 Rancher 打不开、镜像拉取超时修复、时间回拨、api-server/webhook 报错、证书认证过期 |
| 04-扩容多用户与重建迁移.md | 机器扩容、rancher 多用户、客户端 kubectl、kubernetes-dashboard、节点清理、重建/迁移 Rancher Server |
整体流程一览
- 机器初始化、准备镜像(在线/离线)——见 01。
- 部署 Rancher Server,并通过其 UI 添加自定义 k8s 集群——见 02。
- 集群跑起来后的故障处理与日常运维——见 03、04。
部署前的机器/存储/网络检查清单见《部署总览与前置要求》。容器运行时(Docker/Containerd)安装见《节点安装 Containerd 容器运行时》。