Code change:
The upgrade procedure on worker nodes should be executed one node at a time or few nodes at a time, without compromising the minimum required capacity for running your workloads. <del> ### Upgrade kubeadm </del> <ins> The following pages show how to  Upgrade Linux and Windows worker nodes: </ins> <del> - Upgrade kubeadm: {{< tabs name="k8s_install_kubeadm_worker_nodes" >}} {{% tab name="Ubuntu, Debian or HypriotOS" %}} ```shell # replace x in {{< skew currentVersion >}}.x-00 with the latest patch version apt-mark unhold kubeadm &&  apt-get update && apt-get install -y kubeadm={{< skew currentVersion >}}.x-00 &&  apt-mark hold kubeadm ``` {{% /tab %}} {{% tab name="CentOS, RHEL or Fedora" %}} ```shell # replace x in {{< skew currentVersion >}}.x-0 with the latest patch version yum install -y kubeadm-{{< skew currentVersion >}}.x-0 --disableexcludes=kubernetes ``` {{% /tab %}} {{< /tabs >}} ### Call "kubeadm upgrade" - For worker nodes this upgrades the local kubelet configuration: ```shell sudo kubeadm upgrade node ``` ### Drain the node - Prepare the node for maintenance by marking it unschedulable and evicting the workloads: ```shell # replace <node-to-drain> with the name of your node you are draining kubectl drain <node-to-drain> --ignore-daemonsets ``` ### Upgrade kubelet and kubectl - Upgrade the kubelet and kubectl: {{< tabs name="k8s_kubelet_and_kubectl" >}} {{% tab name="Ubuntu, Debian or HypriotOS" %}} ```shell # replace x in {{< skew currentVersion >}}.x-00 with the latest patch version apt-mark unhold kubelet kubectl &&  apt-get update && apt-get install -y kubelet={{< skew currentVersion >}}.x-00 kubectl={{< skew currentVersion >}}.x-00 &&  apt-mark hold kubelet kubectl ``` {{% /tab %}} {{% tab name="CentOS, RHEL or Fedora" %}} ```shell # replace x in {{< skew currentVersion >}}.x-0 with the latest patch version yum install -y kubelet-{{< skew currentVersion >}}.x-0 kubectl-{{< skew currentVersion >}}.x-0 --disableexcludes=kubernetes ``` {{% /tab %}} {{< /tabs >}} <br /> - Restart the kubelet: ```shell sudo systemctl daemon-reload sudo systemctl restart kubelet ``` ### Uncordon the node - Bring the node back online by marking it schedulable: ```shell # replace <node-to-uncordon> with the name of your node kubectl uncordon <node-to-uncordon> ``` </del> <ins> * [Upgrade Linux nodes](/docs/tasks/administer-cluster/kubeadm/upgrading-linux-nodes/) * [Upgrade Windows nodes](/docs/tasks/administer-cluster/kubeadm/upgrading-windows-nodes/) </ins> ## Verify the status of the cluster

Related discussion:
text: This is a Feature Request <!-- Please only use this template for submitting feature/enhancement requests --<!-- See for guidance on writing an actionable issue description. --What would you like to be Add a page titled “Upgrading Linux Nodes” Why is this needed We have an for Windows. Someone who runs Linux worker nodes may well want to see a page just like that, but explaining what to do for their Linux-based node OS. It is OK to adapt existing pages and to link to them. Comments /sig cluster-lifecycle /priority backlog /language en
Hi there is a section on in the , which has the content for upgrading Linux worker nodes. I wonder do you want a separate document for it?
Yes. This issue is a request for a document just like but with Linux in the title. It is OK to adapt existing pages and to link to them.
right, i can recall the section only says: From the Windows node, upgrade kubeadm: and no addition for another os. This will be helpful. are you working on it?
Thanks, for the information!
Hi thanks for your comments. Yeah, I am working on it. I will soon open a PR for it.
/assign
/triage accepted
I have raised a PR: Please take a look!