Linux 워커 노드 추가하기
Linux 워커 노드 추가하기
이 페이지에서는 kubeadm 클러스터에 Linux 워커 노드를 추가하는 방법을 설명해요.
출처: 문서
본문
시작하기 전에
- 조인할 각 워커 노드에 kubeadm 설치의 필수 구성 요소, 즉 kubeadm·kubelet·컨테이너 런타임이 설치돼 있어야 해요.
kubeadm init으로 생성되고 kubeadm으로 클러스터 만들기 문서의 절차를 따른 실행 중인 kubeadm 클러스터가 있어야 해요.- 노드에 대한 슈퍼유저 접근이 필요해요.
Linux 워커 노드 추가하기
클러스터에 새 Linux 워커 노드를 추가하려면 각 머신에서 다음을 수행해요:
- SSH나 다른 방법으로 머신에 접속한다.
kubeadm init이 출력한 명령을 실행한다. 예를 들어:
sudo kubeadm join --token <token> <control-plane-host>:<control-plane-port> --discovery-token-ca-cert-hash sha256:<hash>
kubeadm join을 위한 추가 정보
토큰이 없다면 컨트롤 플레인 노드에서 다음 명령을 실행해 토큰을 얻을 수 있어요:
# Run this on a control plane node
sudo kubeadm token list
출력은 다음과 비슷합니다:
TOKEN TTL EXPIRES USAGES DESCRIPTION EXTRA GROUPS
8ewj1p.9r9hcjoqgajrj4gi 23h 2018-06-12T02:51:28Z authentication, The default bootstrap system:
signing token generated by bootstrappers:
'kubeadm init'. kubeadm:
default-node-token
기본적으로 노드 조인 토큰은 24시간 후 만료돼요. 현재 토큰이 만료된 뒤 노드를 클러스터에 조인한다면, 컨트롤 플레인 노드에서 다음 명령으로 새 토큰을 만들 수 있습니다:
# Run this on a control plane node
sudo kubeadm token create
출력은 다음과 비슷합니다:
5didvk.d09sbcov8ph2amjw
kubeadm 조인 명령을 출력하면서 새 토큰도 함께 생성하려면 다음을 사용해요:
sudo kubeadm token create --print-join-command
--discovery-token-ca-cert-hash 값이 없다면, 컨트롤 플레인 노드에서 다음 명령을 실행해 얻을 수 있어요:
# Run this on a control plane node
sudo cat /etc/kubernetes/pki/ca.crt | openssl x509 -pubkey | openssl rsa -pubin -outform der 2>/dev/null | \
openssl dgst -sha256 -hex | sed 's/^.* //'
출력은 다음과 비슷합니다:
8cb2de97839780a412b93877f8507ad6c94f73add17d5d7058e91741c9d5ec78
kubeadm join 명령의 출력은 다음과 비슷하게 나와요:
[preflight] Running pre-flight checks
... (log output of join workflow) ...
Node join complete:
* Certificate signing request sent to control-plane and response
received.
* Kubelet informed of new secure connection details.
Run 'kubectl get nodes' on control-plane to see this machine join.
몇 초 뒤 kubectl get nodes의 출력에서 이 노드를 확인할 수 있어요. (예를 들어 컨트롤 플레인 노드에서 kubectl을 실행해보세요.)
더 알아보기 (Learn more)
- Windows 워커 노드 추가하기 방법 알아보기.