diff --git a/content/ko/docs/tasks/administer-cluster/kubeadm/upgrading-linux-nodes.md b/content/ko/docs/tasks/administer-cluster/kubeadm/upgrading-linux-nodes.md new file mode 100644 index 0000000000..258ff29c13 --- /dev/null +++ b/content/ko/docs/tasks/administer-cluster/kubeadm/upgrading-linux-nodes.md @@ -0,0 +1,100 @@ +--- +title: 리눅스 노드 업그레이드 +content_type: task +weight: 100 +--- + + + +이 페이지는 kubeadm으로 생성된 리눅스 노드를 업그레이드하는 방법을 설명한다. + +## {{% heading "prerequisites" %}} + +{{< include "task-tutorial-prereqs.md" >}} {{< version-check >}} +* [남은 kubeadm 클러스터를 업그레이드하는 프로세스](/ko/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade)에 +익숙해져야 한다. +리눅스 노드를 업그레이드하기 전에 컨트롤 플레인 노드를 업그레이드해야 한다. + + + +## 워커 노드 업그레이드 + +### kubeadm 업그레이드 + + kubeadm을 업그레이드한다. + + {{< tabs name="k8s_install_kubeadm_worker_nodes" >}} + {{% tab name="Ubuntu, Debian or HypriotOS" %}} + ```shell + # {{< skew currentVersion >}}.x-00 에서 x 에 최신 버전을 넣는다. + 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 + # {{< skew currentVersion >}}.x-00 에서 x 에 최신 버전을 넣는다. + yum install -y kubeadm-{{< skew currentVersion >}}.x-0 --disableexcludes=kubernetes + ``` + {{% /tab %}} + {{< /tabs >}} + +### "kubeadm upgrade" 호출 + +- 워커 노드의 경우 로컬 kubelet 구성을 업그레이드한다. + + ```shell + sudo kubeadm upgrade node + ``` + +### 노드 드레인 + +- 노드를 스케줄 불가능한 것으로 표시하고 워크로드를 축출하여 유지 보수할 노드를 준비한다. + + ```shell + # 에 드레인하려는 노드의 이름을 넣는다. + kubectl drain --ignore-daemonsets + ``` + +### kubelet과 kubectl 업그레이드 + +- kubelet과 kubectl 업그레이드. + + {{< tabs name="k8s_kubelet_and_kubectl" >}} + {{% tab name="Ubuntu, Debian or HypriotOS" %}} + ```shell + # {{< skew currentVersion >}}.x-00 에서 x 에 최신 버전을 넣는다. + 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 + # {{< skew currentVersion >}}.x-00 에서 x 에 최신 버전을 넣는다. + yum install -y kubelet-{{< skew currentVersion >}}.x-0 kubectl-{{< skew currentVersion >}}.x-0 --disableexcludes=kubernetes + ``` + {{% /tab %}} + {{< /tabs >}} +
+ +- kubelet을 재시작한다. + + ```shell + sudo systemctl daemon-reload + sudo systemctl restart kubelet + ``` + +### 노드에 적용된 cordon 해제 + +- 스케줄 가능으로 표시하여 노드를 다시 온라인으로 가져온다. + + ```shell + # 에 노드의 이름을 넣는다. + kubectl uncordon + ``` + + ## {{% heading "whatsnext" %}} + +* [윈도우 노드 업그레이드](/ko/docs/tasks/administer-cluster/kubeadm/upgrading-windows-nodes/)하는 방법을 알아본다. \ No newline at end of file