Scheduling/74/Static Pod

y001·2025년 2월 16일
post-thumbnail

Static Pods

  • Static Pods는 API server 없이 Kubelet이 노드에서 직접 관리하는 POD입니다. Kubelet은 POD 정의 파일을 주기적으로 읽고 실행하며, POD의 상태를 자동으로 관리합니다.
  • kube-proxy, 네트워크 에이전트, 모니터링 도구 등을 클러스터의 노드에 자동으로 배치하고 관리할 수 있어, 이를 DaemonSet과 비슷한 방식으로 관리할 수 있습니다.

Static Pods를 생성

  • POD 정의 파일을 특정 디렉토리에 배치하여 Kubelet이 자동으로 읽고 관리하도록 할 수 있습니다.
  • 기본 경로는 /etc/kubernetes/manifests/입니다. 이 디렉토리 내에 정의된 POD 파일을 Kubelet이 주기적으로 모니터링하여 POD을 생성하고 관리합니다.
  • pod-manifest-path 옵션을 통해 Kubelet의 설정에서 이 디렉토리를 지정할 수 있습니다.

Kubelet의 설정이 각 노드에 개별적으로 존재합니다. 각 노드에서 Kubelet은 자신만의 설정 파일을 참조하여 Static Pods를 관리합니다. 그래서 Kubelet의 설정(예: staticPodPath)은 각 노드마다 다를 수 있습니다.
예를 들어서, node01의 Static Pods 정의 파일의 위치를 확인하기 위해서는, node01에 접속해서, /etc/lib/kubelt/config.yaml 파일을 확인해야 합니다.

Static Pods 관리

  • kubectl get pods 명령어로 확인할 때 Static Pods는 POD 이름에 노드 이름이 포함되어 나타나거나 mirror pod로 표시되기도 합니다.
NAMESPACE     NAME                                   READY   STATUS    RESTARTS   AGE
kube-system   kube-apiserver-node01                   1/1     Running   0          5m
kube-system   kube-controller-manager-node01          1/1     Running   0          5m
kube-system   kube-proxy-node01                       1/1     Running   0          5m

0개의 댓글