
현재 Kubernetes 클러스터는 마스터 노드와 워커 노드 1개로 구성되어 있다. gpuserver2는 마스터 노드이고 gpuserver3는 워커 노드이다. 화면에도 보이듯이 마스터 노드에서는 kubectl 명령어로 노드 상태나 Pod 상태 등을 확인할 수 있다. 그러면, 워커 노드에서도 확인할 수 있을까?

안타깝게도 워커 노드에서는 kubectl 명령어를 사용할 수 없다. 직접 해보면 위와 같이 에러가 발생한다. 하지만, 방법이 있다.

마스터 노드를 보면 /etc/kubernetes에 admin.conf 파일이 있다. 이 admin.conf 파일을 워커 노드로 복사한다.(복사는 알아서...)

이렇게 워커 노드에 admin.conf를 복사를 해놓으면 이제 아래처럼 해주면 끝이다.

사실 이는 처음 설치할 때 마스터 노드에서 실행했던 명령어들이다. 이를 워커 노드에서도 똑같이 해주면 이제 워커 노드에서도 마스터 노드에서와 똑같이 kubectl 명령어를 사용할 수 있다.

현재 gpuserver3이므로 워커 노드이다. kubectl get pods를 실행했을 때 아까처럼 "The connection to the server localhost:8080 was refused" 메시지가 나오지 않는다. "No resources found~"는 실행되고 있는 Pod가 없기 때문에 나온 것이고 Pod가 실행 중이라면 실행 중인 Pod 상태를 확인할 수 있다. 노드 상태 역시 kubectl get nodes로 워커 노드에서 확인할 수 있다.
참고 사이트
- snowdeer.github.io/kubernetes/2018/02/13/kubernetes-can-not-use-kubectl/
댓글