升级 Windows 节点

特性状态: Kubernetes v1.18 [测试版]

本页面介绍如何升级使用 kubeadm 创建的 Windows 节点。

准备工作

您需要具备所有节点的 shell 访问权限,并且 kubectl 命令行工具必须配置为与您的集群通信。建议在至少有两个节点不充当控制平面主机的集群上运行本教程。

您的 Kubernetes 服务器必须是 1.17 或更高版本。要检查版本,请输入 kubectl version

升级工作节点

升级 kubeadm

  1. 从 Windows 节点升级 kubeadm

    # replace 1.30.0 with your desired version
    curl.exe -Lo <path-to-kubeadm.exe>  "https://dl.k8s.io/v1.30.0/bin/windows/amd64/kubeadm.exe"
    

驱逐节点

  1. 从可以访问 Kubernetes API 的机器上,通过将节点标记为不可调度并驱逐工作负载来准备进行维护

    # replace <node-to-drain> with the name of your node you are draining
    kubectl drain <node-to-drain> --ignore-daemonsets
    

    您应该会看到类似于以下内容的输出

    node/ip-172-31-85-18 cordoned
    node/ip-172-31-85-18 drained
    

升级 kubelet 配置

  1. 从 Windows 节点,调用以下命令以同步新的 kubelet 配置

    kubeadm upgrade node
    

升级 kubelet 和 kube-proxy

  1. 从 Windows 节点,升级并重启 kubelet

    stop-service kubelet
    curl.exe -Lo <path-to-kubelet.exe> "https://dl.k8s.io/v1.30.0/bin/windows/amd64/kubelet.exe"
    restart-service kubelet
    
  2. 从 Windows 节点,升级并重启 kube-proxy。

    stop-service kube-proxy
    curl.exe -Lo <path-to-kube-proxy.exe> "https://dl.k8s.io/v1.30.0/bin/windows/amd64/kube-proxy.exe"
    restart-service kube-proxy
    

取消节点的 cordon 状态

  1. 从可以访问 Kubernetes API 的机器上,通过将节点标记为可调度来使其重新联机

    # replace <node-to-drain> with the name of your node
    kubectl uncordon <node-to-drain>
    

后续操作

上次修改时间:太平洋标准时间 2024 年 4 月 4 日下午 5:27:添加节点升级集群任务的 shell 访问先决条件 (7a91dcc078)