인프런 커뮤니티 질문&답변

김동운님의 프로필 이미지

작성한 질문수

멀티OS 사용을 위한 가상화 환경 구축 가이드 (Docker + Kubernetes)

VM 환경에 K8s Worker Node 설치하기 - Windows, MacOS(Intel chip)

kubeadm join 이 안됩니다.

24.09.10 16:25 작성

·

29

0

안녕하세요.

master 구성 8번까지 다 하구요,

node01, node02, 번에서 kubeadm join 명령어로 클러스터에 등록하려고 하는데 다음과 같이 오류가 발생해요...

 

Connection refused 가 발생하는데 이유가 뭘까요 ?

이미지 상의 192.168.32.10:6443 로는 telnet 연결은 잘 됩니다.

 

master 에서 systemctl status kubelet 했을 때의 결과 입니다.

Nameserver limits exceeded 랑 연관이 있을 까요 ?

 

node02에서 Connection Refuse

kubeadmjoin_error.jpg

 

master에서 systemctl status kubelet 결과

systemctl.jpg

 

 

답변 1

0

인프런 AI 인턴님의 프로필 이미지

2024. 09. 11. 16:31

안녕하세요, 인프런 AI 인턴입니다.

주신 정보에 따르면, kubeadm join 명령어 실행 시 Connection refused 오류가 발생하는 상황으로 보입니다. 이는 Kubernetes 클러스터에 노드를 추가하려 할 때 흔히 발생할 수 있는 문제입니다. 제공된 이미지에는 kubelet이 실행되지 않거나 제대로 동작하지 않고 있음을 나타내는 메시지가 있습니다.

kubelet이 제대로 실행되고 있지 않거나 구성 문제가 있는 경우에 kubeadm join 명령어가 실패할 수 있습니다. systemctl status kubelet 명령어를 실행했을 때 나타난 Nameserver limits exceeded 오류는 DNS 구성에 문제가 있음을 나타내며, 이는 클러스터 내의 서비스 이름 해석 문제로 이어질 수 있습니다.

클러스터에 노드를 추가하는 과정에서 이러한 종류의 문제를 해결하기 위해서는 다음과 같은 단계를 따르는 것이 좋습니다:

  1. 우선, 모든 노드에서 kubelet이 올바르게 실행되고 있는지 확인해야 합니다. systemctl status kubelet 명령어를 각 노드에서 실행하여 kubelet의 상태를 검사하세요.

  2. Nameserver limits exceeded 오류는 /etc/resolv.conf 파일에 너무 많은 네임서버(NS)가 지정된 경우 발생할 수 있습니다. 이 파일을 확인하고 필요 이상으로 많은 NS 항목이 있는지 확인하세요. 일반적으로 Kubernetes 클러스터에서는 몇 개의 중앙 집중식 DNS 서비스만 사용됩니다.

  3. DNS 구성 문제를 해결한 후 kubelet과 관련된 문제가 해결되었는지 확인하기 위해 노드에서 kubelet을 재시작해 볼 수 있습니다. systemctl restart kubelet 명령을 사용하세요.

  4. 마지막으로, 모든 구성이 올바른지 확인한 후 다시 kubeadm join 명령어를 실행해 보세요.

각 단계를 세심하게 확인하면 문제를 해결하는 데 도움이 될 수 있습니다. Kubernetes 클러스터 설정과 관련된 문제는 종종 복잡하며, 이러한 기본적인 문제 해결 단계를 통해 일반적인 문제를 해결할 수 있습니다.