Skip to content

Kubelet 소개 ​

Kubelet이란? ​

Kubelet은 Kubernetes 클러스터 내의 워커 노드에서 실행되는 주요 구성 요소로, '선박의 선장'과 같은 역할을 합니다. 클러스터에 노드를 등록하고, 스케줄러로부터 받은 지시에 따라 파드와 컨테이너를 로드하거나 언로드합니다. 또한, 노드와 그 위의 컨테이너 상태에 대한 정기적인 보고를 kube API 서버에 전송합니다.

주요 기능 ​

  • 노드 등록: Kubernetes 클러스터와 워커 노드의 연결을 담당합니다.
  • 컨테이너 로드 및 언로드: 스케줄러의 지시에 따라 컨테이너 런타임 엔진(Docker 등)을 통해 필요한 이미지를 가져오고 인스턴스를 실행합니다.
  • 상태 모니터링 및 보고: 파드와 컨테이너의 상태를 지속적으로 모니터링하고, 이에 대한 정보를 kube API 서버에 정기적으로 보고합니다.

Kubelet 설치 ​

  • kubeadm을 사용한 클러스터 배포 시: kubeadm은 클러스터의 다른 구성 요소와 달리 kubelet을 자동으로 배포하지 않습니다. 따라서 워커 노드에 kubelet을 수동으로 설치해야 합니다.
  • 수동 설치: Kubernetes 릴리스 페이지에서 kubelet 인스톨러를 다운로드하여 워커 노드에 서비스로 실행합니다.
sh
wget https://storage.googleapis.com/kubernetes-release/release/v1.13.0/bin/linux/amd64/kubelet

Kubelet 프로세스 및 옵션 확인 ​

  • 워커 노드에서 프로세스를 나열하고 kubelet을 검색하여 실행 중인 kubelet 프로세스와 효과적인 옵션을 확인할 수 있습니다.

TIP

클러스터의 워커 노드에서 파드와 컨테이너의 생명주기를 관리하는 kubelet은 Kubernetes 운영에 있어 핵심적인 구성 요소입니다. kubelet의 정확한 설치와 구성은 클러스터의 안정적인 운영을 위해 중요합니다.

K8s Reference Docs: ​

https://kubernetes.io/docs/reference/command-line-tools-reference/kubelet/https://kubernetes.io/docs/concepts/overview/components/https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/kubelet-integration/