반응형

Kubernetes 3] 에서 구성한 단일 클러스터에 작업 노드를 추가한다.

1. kubeadm join

#기본 형식
kubeadm join --token <token> <control-plane-host>:<control-plane-port> --discovery-token-ca-cert-hash sha256:<hash>

#현재 내 구성
kubeadm join 192.168.110.131:6443 --token 4nk7yb.2h8kigh2besrnvdu --discovery-token-ca-cert-hash sha256:cbabe58bf46f053ed28273f94317e021182bb2509e347b53194389cb594064d0 

 1) 토큰을 모를 경우

kubeadm token list

 2) 토큰이 없는 경우 (기본 24시간 후 삭제)

kubeadm token create

 3) --discovery-token-ca-cert-hash를 모를 경우

openssl x509 -pubkey -in /etc/kubernetes/pki/ca.crt | openssl rsa -pubin -outform der 2>/dev/null | \
   openssl dgst -sha256 -hex | sed 's/^.* //'

 

2. 마스터 노드에서 확인

kubectl get nodes
NAME         STATUS     ROLES    AGE   VERSION
k8s-master   Ready      master   70m   v1.17.0
k8s-node1    NotReady   <none>   23s   v1.17.0

 

위에 STATUS를 보면 k8s-node1이 가입을 하였으나 'NotReady' 상태이다.

생각해보니 CNI를 설치하지 않았다. 

3. 마스터노드 Config 복사 및 Calico 설치

마스터 노드의 config 파일을 복사한다. 필자는 sftp 사용했다.

$ mkdir .kube

$ cd .kube

$ sftp 192.168.110.131

sftp> get .kube/config

$ sudo chown $(id -u):$(id -g) $HOME/.kube/config

Calico 설치는 동일하다.

kubectl apply -f https://docs.projectcalico.org/v3.11/manifests/calico.yaml

 

3. 마스터 노드 확인

kubectl get nodes
NAME         STATUS   ROLES    AGE   VERSION
k8s-master   Ready    master   94m   v1.17.0
k8s-node1    Ready    <none>   25m   v1.17.0

 

STATUS 값이 'Ready'로 변경 된 것을 확인 할 수 있다.

 

단일 클러스터 구성이 완료되었고, 다음 포스트에서 HA구성을 진행한다.

 

반응형
Posted by kev1n
,