[이슈] 쿠버네티스 실습 1 - 클러스터 구성 -> 쿠버네티스 초기화 및 삭제
필기자
2023-11-21 21:57
1,017
1
본문
쿠버네티스 클러스트 초기화 및 삭제
쿠버네티스 재설치(root 로그인 후)
클러스터 구성
아래 2 내용 빽업(메모)
Worker node의 클러스터 오류 해결
네트워크 설정하기(CNI 플러그인 설치)
플라넬 설치
# master worker0 worker1 클러스터 노드에서 다 실행
# 반드시 관리자 권한
sudo kubeadm reset
sudo apt-get purge kubeadm kubectl kubelet kubernetes-cni kube*
sudo apt-get autoremove
sudo rm -rf ~/.kube
쿠버네티스 재설치(root 로그인 후)
sudo su
#반드시 root 계정 접속후 실행
sudo apt install kubeadm kubelet kubectl kubernetes-cni
클러스터 구성
sudo kubeadm init --pod-network-cidr=10.244.0.0/16
아래 2 내용 빽업(메모)
#root 계정에서 실행
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
kubectl get pods --all-namespaces
- mkdir -p $HOME/.kube
- 쿠버네티스 클러스터와 관련된 설정 파일인 ‘config’파일을 저장 하는데 사용
- kubectl 명령어를 사용하여 클러스터에 접근하거나 다양한 작업을 수행할 때 이 설정 파일이 활용
- sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
- 쿠버네티스 클러스터의 관리자 설정 파일이 로컬 환경의 .kube 디렉토리 아래에 ‘config’ 파일로 복사
- 로컬에서 kubectl 명령어를 실행할 때 해당 설정 파일을 사용하여 클러스터에 접근
- sudo chown $(id -u):$(id -g) $HOME/.kube/config
- kubectl 명령어를 실행하기 위한 설정 파일의 소유권이 현재 사용자로 변경
- 현재 사용자는 로컬에서 ‘kubectl'명령어를 실행할 때 설정 파일에 접근 가능
# worker0, worker1 에서 실행
# 반드시 root 계정에서 실행
sudo su
kubeadm join 192.168.47.128:6443 --token t1k7ti.utmaywk7ptli6z8r \
--discovery-token-ca-cert-hash sha256:dd33bc5faf679b38318db2ad636e210c20d6
Worker node의 클러스터 오류 해결
#기존 클러스터 내용 빽업
mv /etc/kubernetes/kubelet.conf /etc/kubernetes/kubelet.conf.backup
mv /etc/kubernetes/pki/ca.crt /etc/kubernetes/pki/ca.crt.backup
#net-tools 설치
apt install net-tools
# 10250 포트 사용 확인
netstat -tulnp | grep 10250
# 10250 포트 프로세스 제거
kill 957
# 위 안될시 강제 종료 kill -9 957
다시 클러스터 맺기 시도
해쉬값 오류 확인 > 마스터에서 해시값 가져오기
openssl x509 -pubkey -in /etc/kubernetes/pki/ca.crt | openssl rsa -pubin -outform der 2>/dev/null | openssl dgst -sha256 -hex | sed 's/^.* //'
정상 해시값 이용한 클러스터 맺기
kubeadm join 192.168.47.128:6443 --token t1k7ti.utmaywk7ptli6z8r --discovery-token-ca-cert-hash sha256:dd33bc5faf679b38318db2ad636e210c20d6057226e14bcbc34626a218e30abc
네트워크 설정하기(CNI 플러그인 설치)
플라넬 설치
#master sudo su에서 설치
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
#이후 pods 확인
kubectl get pods --all-namespaces
#nodes, pods 아이피 확인
kubectl get nodes -n kube-system -o wide
kubectl get pods -n kube-system -o wide
댓글목록1
필기자님의 댓글