마구잡

kubelet 데몬 동작 본문

Kubernetes

kubelet 데몬 동작

MAGUJOB 2023. 11. 24. 12:30
반응형

개요

kubernetes 클러스터를 삭제 & 재 조인 하는 과정에서 kubelet 데몬이 살아나지 않아 조인이 불가능한 상태로 빠졋다.

확인을 해보니 데몬이 시작할 때 필요한 파일들이 의도치 않게 제거된 상태였다.

 

아래 kubelet 데몬이 동작할때 사용하는 systemd conf 파일이다.

[geon@geon-mn1 ~]$ systemctl cat kubelet.service

# /usr/lib/systemd/system/kubelet.service
[Unit]
Description=kubelet: The Kubernetes Node Agent
Documentation=https://kubernetes.io/docs/
Wants=network-online.target
After=network-online.target

[Service]
ExecStart=/usr/bin/kubelet
Restart=always
StartLimitInterval=0
RestartSec=10

[Install]
WantedBy=multi-user.target

# /usr/lib/systemd/system/kubelet.service.d/10-kubeadm.conf
# Note: This dropin only works with kubeadm and kubelet v1.11+
[Service]
Environment="KUBELET_KUBECONFIG_ARGS=--bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf --kubeconfig=/etc/kubernetes/kubelet.conf"
Environment="KUBELET_CONFIG_ARGS=--config=/var/lib/kubelet/config.yaml"
# This is a file that "kubeadm init" and "kubeadm join" generates at runtime, populating the KUBELET_KUBEADM_ARGS variable dynamically
EnvironmentFile=-/var/lib/kubelet/kubeadm-flags.env
# This is a file that the user can use for overrides of the kubelet args as a last resort. Preferably, the user should use
# the .NodeRegistration.KubeletExtraArgs object in the configuration files instead. KUBELET_EXTRA_ARGS should be sourced from this file.
EnvironmentFile=-/etc/sysconfig/kubelet
ExecStart=
ExecStart=/usr/bin/kubelet $KUBELET_KUBECONFIG_ARGS $KUBELET_CONFIG_ARGS $KUBELET_KUBEADM_ARGS $KUBELET_EXTRA_ARGS

 

10-kubeadm.conf 파일과 Environmnet 구문 내 위치한 파일또한 지워진 상태 복구를 해야한다! 


복구방법

특별한 복구 방법은 따로 없고 클러스터 내 다른 노드에 있는 파일을 복사한뒤 daemon reload이후 kubelet을 재시작하면

잘 살아난다. 

반응형