본문 바로가기

IT/쿠버네티스

쿠버네티스 설치 저장소 오류

반응형

kubeadm, kubelet, kubectl 설치

쿠버네티스 설치 전 오류가 나는 경우 저장소가 변경 때문에 발생

curl -fsSL https://pkgs.k8s.io/core:/stable:/v1.30/deb/Release.key | sudo gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg

echo 'deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v1.30/deb/ /' | sudo tee /etc/apt/sources.list.d/kubernetes.list

sudo apt update

sudo apt install -y kubeadm kubelet kubectl

sudo systemctl enable kubelet && sudo systemctl start kubelet

worker node에서 조인 추가 시

kubeadm join <마스터 노드 IP>:6443 --token <토큰> --discovery-token-ca-cert-hash sha256:<해시>

에러 발생 시

[preflight] Running pre-flight checks
error execution phase preflight: [preflight] Some fatal errors occurred:
        [ERROR CRI]: container runtime is not running: output: time="2025-01-27T12:32:48Z" level=fatal msg="validate service connection: validate CRI v1 runtime API for endpoint \"unix:///var/run/containerd/containerd.sock\": rpc error: code = Unimplemented desc = unknown service runtime.v1.RuntimeService"
, error: exit status 1
[preflight] If you know what you are doing, you can make a check non-fatal with `--ignore-preflight-errors=...`
To see the stack trace of this error execute with --v=5 or higher

아래와 같이 수정

sudo vi /etc/containerd/config.toml

//주석처리 후 저장
#disabled_plugins = ["cri"]

//재시작 후
sudo systemctl restart containerd

//join 하면 성공
kubeadm join <마스터 노드 IP>:6443 --token <토큰> --discovery-token-ca-cert-hash sha256:<해시>

마스터 노드에서

kubectl get nodes

추가된 노드가 보인다^^

반응형