website/content/ko/docs/tasks/administer-cluster/kubeadm/upgrading-linux-nodes.md

3.0 KiB

title content_type weight
리눅스 노드 업그레이드 task 100

이 페이지는 kubeadm으로 생성된 리눅스 노드를 업그레이드하는 방법을 설명한다.

{{% heading "prerequisites" %}}

{{< include "task-tutorial-prereqs.md" >}} {{< version-check >}}

워커 노드 업그레이드

kubeadm 업그레이드

kubeadm을 업그레이드한다.

{{< tabs name="k8s_install_kubeadm_worker_nodes" >}} {{% tab name="Ubuntu, Debian or HypriotOS" %}}

# {{< 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" %}}

# {{< skew currentVersion >}}.x-00 에서 x 에 최신 버전을 넣는다.
yum install -y kubeadm-{{< skew currentVersion >}}.x-0 --disableexcludes=kubernetes

{{% /tab %}} {{< /tabs >}}

"kubeadm upgrade" 호출

  • 워커 노드의 경우 로컬 kubelet 구성을 업그레이드한다.

    sudo kubeadm upgrade node
    

노드 드레인

  • 노드를 스케줄 불가능한 것으로 표시하고 워크로드를 축출하여 유지 보수할 노드를 준비한다.

    # <node-to-drain> 에 드레인하려는 노드의 이름을 넣는다.
    kubectl drain <node-to-drain> --ignore-daemonsets
    

kubelet과 kubectl 업그레이드

  • kubelet과 kubectl 업그레이드.

    {{< tabs name="k8s_kubelet_and_kubectl" >}} {{% tab name="Ubuntu, Debian or HypriotOS" %}}

    # {{< 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" %}}

    # {{< skew currentVersion >}}.x-00 에서 x 에 최신 버전을 넣는다.
    yum install -y kubelet-{{< skew currentVersion >}}.x-0 kubectl-{{< skew currentVersion >}}.x-0 --disableexcludes=kubernetes
    

    {{% /tab %}} {{< /tabs >}}

  • kubelet을 재시작한다.

    sudo systemctl daemon-reload
    sudo systemctl restart kubelet
    

노드에 적용된 cordon 해제

  • 스케줄 가능으로 표시하여 노드를 다시 온라인으로 가져온다.

    # <node-to-uncordon> 에 노드의 이름을 넣는다.
    kubectl uncordon <node-to-uncordon>
    

{{% heading "whatsnext" %}}