Killer Shell CKA - Kubelet Misconfigured

Jmnote (토론 | 기여)님의 2025년 9월 23일 (화) 02:09 판 (→‎최종 확인)
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)

1 개요[ | ]

Killer Shell CKA - Kubelet Misconfigured

2 문제 진단[ | ]

Node node01에서 Kubelet의 상태를 확인하고 로그를 통해 오류를 파악한다.

controlplane:~$ ssh node01
Last login: Mon Feb 10 22:06:42 2025 from 10.244.0.131
node01:~$ service kubelet status
● kubelet.service - kubelet: The Kubernetes Node Agent
     Loaded: loaded (/usr/lib/systemd/system/kubelet.service; enabled; preset: enabled)
    Drop-In: /usr/lib/systemd/system/kubelet.service.d
             └─10-kubeadm.conf
     Active: activating (auto-restart) (Result: exit-code) since Mon 2025-09-22 17:01:06 U>
       Docs: https://kubernetes.io/docs/
    Process: 5982 ExecStart=/usr/bin/kubelet $KUBELET_KUBECONFIG_ARGS $KUBELET_CONFIG_ARGS>
   Main PID: 5982 (code=exited, status=1/FAILURE)
        CPU: 31ms

Sep 22 17:01:06 node01 systemd[1]: kubelet.service: Main process exited, code=exited, stat>
Sep 22 17:01:06 node01 systemd[1]: kubelet.service: Failed with result 'exit-code'.
node01:~$ cat /var/log/syslog | grep kubelet
..
2025-09-22T17:02:48.588705+00:00 node01 kubelet[6226]: Flag --container-runtime-endpoint has been deprecated, This parameter should be set via the config file specified by the Kubelet's --config flag. See https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/ for more information.
2025-09-22T17:02:48.588874+00:00 node01 kubelet[6226]: Flag --pod-infra-container-image has been deprecated, will be removed in 1.35. Image garbage collector will get sandbox image information from CRI.
2025-09-22T17:02:48.588913+00:00 node01 kubelet[6226]: E0922 17:02:48.588831    6226 run.go:72] "command failed" err="failed to parse kubelet flag: unknown flag: --improve-speed"
2025-09-22T17:02:48.590856+00:00 node01 systemd[1]: kubelet.service: Main process exited, code=exited, status=1/FAILURE
2025-09-22T17:02:48.591142+00:00 node01 systemd[1]: kubelet.service: Failed with result 'exit-code'.

3 문제 해결[ | ]

잘못된 인수를 제거하여 Kubelet 설정 파일을 수정한다.

node01:~$ grep -rn improve /var/lib/kubelet/
/var/lib/kubelet/kubeadm-flags.env:1:KUBELET_KUBEADM_ARGS="--container-runtime-endpoint=unix:///var/run/containerd/containerd.sock --pod-infra-container-image=registry.k8s.io/pause:3.10 --improve-speed"
node01:~$ vim /var/lib/kubelet/kubeadm-flags.env
#KUBELET_KUBEADM_ARGS="--container-runtime-endpoint=unix:///var/run/containerd/containerd.sock --pod-infra-container-image=registry.k8s.io/pause:3.10 --improve-speed"
KUBELET_KUBEADM_ARGS="--container-runtime-endpoint=unix:///var/run/containerd/containerd.sock --pod-infra-container-image=registry.k8s.io/pause:3.10"

4 최종 확인[ | ]

Kubelet을 재시작하고 상태를 확인하여 정상적으로 동작하는지 확인한다.

node01:~$ service kubelet restart
node01:~$ service kubelet status
● kubelet.service - kubelet: The Kubernetes Node Agent
     Loaded: loaded (/usr/lib/systemd/system/kubelet.service; enabled; preset: enabled)
    Drop-In: /usr/lib/systemd/system/kubelet.service.d
             └─10-kubeadm.conf
     Active: active (running) since Mon 2025-09-22 17:08:53 UTC; 3s ago
       Docs: https://kubernetes.io/docs/
   Main PID: 7153 (kubelet)
      Tasks: 9 (limit: 2320)
     Memory: 21.7M (peak: 22.1M)
        CPU: 187ms
     CGroup: /system.slice/kubelet.service
             └─7153 /usr/bin/kubelet --bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf --kubeconfig=/etc/kubernetes/kubelet.conf --config=/var/lib/kube>

Sep 22 17:08:54 node01 kubelet[7153]: I0922 17:08:54.678376    7153 operation_generator.go:781] UnmountVolume.TearDown succeeded for volume "kubernetes.io/configma>
Sep 22 17:08:54 node01 kubelet[7153]: I0922 17:08:54.681738    7153 operation_generator.go:781] UnmountVolume.TearDown succeeded for volume "kubernetes.io/configma>
Sep 22 17:08:54 node01 kubelet[7153]: I0922 17:08:54.683666    7153 operation_generator.go:781] UnmountVolume.TearDown succeeded for volume "kubernetes.io/projecte>
Sep 22 17:08:54 node01 kubelet[7153]: I0922 17:08:54.684643    7153 operation_generator.go:781] UnmountVolume.TearDown succeeded for volume "kubernetes.io/projecte>
Sep 22 17:08:54 node01 kubelet[7153]: I0922 17:08:54.775571    7153 reconciler_common.go:299] "Volume detached for volume \"config-volume\" (UniqueName: \"kubernet>
Sep 22 17:08:54 node01 kubelet[7153]: I0922 17:08:54.775601    7153 reconciler_common.go:299] "Volume detached for volume \"kube-api-access-qg5rs\" (UniqueName: \">
Sep 22 17:08:54 node01 kubelet[7153]: I0922 17:08:54.775610    7153 reconciler_common.go:299] "Volume detached for volume \"config-volume\" (UniqueName: \"kubernet>
Sep 22 17:08:54 node01 kubelet[7153]: I0922 17:08:54.775618    7153 reconciler_common.go:299] "Volume detached for volume \"kube-api-access-tglnq\" (UniqueName: \">
Sep 22 17:08:55 node01 kubelet[7153]: I0922 17:08:55.311800    7153 scope.go:117] "RemoveContainer" containerID="005a8d8c25faec8acdff8cb2b9582e0f0ee86c9de794fd582a>
Sep 22 17:08:55 node01 kubelet[7153]: I0922 17:08:55.330159    7153 scope.go:117] "RemoveContainer" containerID="3554b4007ea2f92f2369932ed049477bcf678d

5 같이 보기[ | ]

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}