어제 control-plane과 worker node를 join 시키고 get nodes 했을 때 모두 Ready 된 것까지 확인하고
pc를 종료했다.
다음날 다시 VirtualBox를 켜고 kubectl get nodes를 입력했더니 아래와 같은 에러가 발생했다.
root@kube-control:~# kubectl get nodes
The connection to the server 192.168.56.106:6443 was refused - did you specify the right host or port?
google에 검색했더니 /etc/kubernetes/admin.conf 를 ~/.kube/config로 copy 해라,
환경변수를 등록해라, 등등의 답변이 많았는데 admin.conf는 이미 copy 해놓은 상태였고
환경변수 또한 오류해결에 도움이 되진 못했다.
여러 글을 찾던 도중 아래 게시글을 참고함으로써 에러를 해결할 수 있었다.
가장 큰 원인은 설치 시 /etc/fstab의 swapfile을 주석처리 했음에도 재부팅 시 주석이 해제되면서 발생하는
오류인 듯 하다.
순서는 아래와 같다.
만약 일반 사용자라면 sudo 명령어를 통해 root 권한에서 swapoff를 진행한다.
root@kube-control:~# sudo -i
root@kube-control:~# swapoff -a
아래는 시스템 콜 추적을 위한 명령어이다.
root@kube-control:~# strace -eopenat kubectl version
(swap을 off하는 이유는 아래 글을 참고한다.)
잘 실행된다.
root@kube-control:~# kubectl get nodes
NAME STATUS ROLES AGE VERSION
jj-virtualbox Ready control-plane,master 47h v1.21.3
node01 Ready <none> 47h v1.21.3
node02 Ready <none> 47h v1.21.3
+ Vagrant를 사용하지 않고 환경을 구성하려고 했는데, 위와 같이 문제를 해결해도
전원을 껐다 켜면 다시 발생하는 것 같다.
root 권한이 아닌 user 사용자에서 kubectl get nodes 해도 안 되면 그냥 vagrant로 깔자..
'Kubernetes' 카테고리의 다른 글
Kubernetes 오브젝트를 이용한 Apache 웹 서버 구성하기 (0) | 2021.09.07 |
---|---|
Kubeadm을 이용한 쿠버네티스 클러스터 배포하기 (0) | 2021.09.07 |
Kubernetes 인강 정리 (0) | 2021.08.20 |
EKS를 활용한 웹 애플리케이션 배포하기 (0) | 2021.08.16 |
Why Kubernetes? (0) | 2021.07.27 |