阅读量:1
在 Debian 上更新或安装指定版本的 Kubernetes
一 准备与版本选择
- 备份关键数据与配置:建议备份 /etc/kubernetes/、/var/lib/etcd/,并使用 etcdctl 进行快照;同时确认集群当前状态健康。升级前阅读目标版本的发行说明与变更。
- 升级顺序与兼容性:遵循 kubeadm 升级指南 的版本路径,通常要求在同一 小版本内逐级升级(例如从 v1.28.x → v1.29.x → v1.30.x),避免跨多个小版本;升级前确保网络插件、存储插件与集群内组件均支持目标版本。
- 系统与容器运行时:保持 Debian 系统与容器运行时(如 containerd)为稳定版本;确保 swap 已禁用,并满足 kubelet 运行要求。
二 安装指定版本(全新安装或重装场景)
- 添加 Kubernetes APT 仓库(Debian 12 示例):
echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list curl -fsSL https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo gpg --dearmor | sudo tee /usr/share/keyrings/kubernetes-archive-keyring.gpg >/dev/null echo "deb [signed-by=/usr/share/keyrings/kubernetes-archive-keyring.gpg] https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list sudo apt update - 安装指定版本(将 1.30.x 替换为你的目标版本):
KVER=1.30.0-1.1 sudo apt-get update sudo apt-get install -y kubelet=${KVER} kubeadm=${KVER} kubectl=${KVER} sudo apt-mark hold kubelet kubeadm kubectl - 初始化或加入集群(示例):
# 仅在全新初始化时执行 sudo kubeadm init --pod-network-cidr=10.244.0.0/16 # 工作节点加入(使用 kubeadm init 输出的 join 命令) sudo kubeadm join: --token --discovery-token-ca-cert-hash sha256: - 验证:
kubectl version --short kubectl get nodes
说明:上述仓库条目中的 xenial 是 Kubernetes APT 仓库的发行代号,并非 Debian 版本;安装后使用 apt-mark hold 防止组件被意外升级。
三 就地升级集群(已存在集群)
- 控制平面节点
- 检查升级计划并升级控制平面:
sudo kubeadm upgrade plan sudo kubeadm upgrade apply v1.30.0 - 腾空节点并升级 kubelet/kubectl(保持与 kubeadm 一致的小版本):
kubectl drain--ignore-daemonsets sudo apt-get update sudo apt-get install -y kubelet=1.30.0-1.1 kubectl=1.30.0-1.1 sudo systemctl daemon-reload sudo systemctl restart kubelet kubectl uncordon
- 检查升级计划并升级控制平面:
- 工作节点
- 逐台升级,先腾空:
kubectl drain--ignore-daemonsets - 升级 kubelet/kubectl 并重启:
sudo apt-get update sudo apt-get install -y kubelet=1.30.0-1.1 kubectl=1.30.0-1.1 sudo systemctl daemon-reload sudo systemctl restart kubelet kubectl uncordon
- 逐台升级,先腾空:
- 验证:
kubectl version --short kubectl get nodes kubectl get pods -A
要点:升级期间保持 单主节点可调度 或合理安排控制平面维护窗口;升级完成后逐一恢复节点调度。
四 常见问题与注意事项
- 版本锁定:为避免误升级,安装后用 apt-mark hold kubelet kubeadm kubectl 固定版本;升级完成再按需解除。
- 组件一致性:确保 kubelet、kubeadm、kubectl 与控制平面镜像版本一致或兼容;升级后使用 kubectl version --short 与 kubectl get nodes 校验。
- 网络与插件:升级前后确认 CNI 网络插件 与 存储插件 已支持目标版本;升级期间建议暂停可能影响稳定性的变更。
- 生产建议:先在测试环境验证,再滚动升级节点,全程关注监控与日志,出现异常及时回滚或扩容维护窗口。
以上就是关于“Debian如何更新Kubernetes版本安装”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm