Linuxワーカーノードの追加

このページでは、kubeadmクラスターにLinuxワーカーノードを追加する方法を示します。

始める前に

Linuxワーカーノードの追加

新たなLinuxワーカーノードをクラスターに追加するために、以下を各マシンに対して実行してください。

  1. SSH等の手段でマシンへ接続します。
  2. kubeadm init実行時に出力されたコマンドを実行します。例:
sudo kubeadm join --token <token> <control-plane-host>:<control-plane-port> --discovery-token-ca-cert-hash sha256:<hash> 

kubeadm joinに関する追加情報

トークンが不明な場合は、コントロールプレーンノードで次のコマンドを実行すると取得できます。

# コントロールプレーンノード上で実行してください。 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時間後に有効期限が切れます。 現在のトークンの有効期限が切れた後にクラスターにノードを参加させたい場合は、コントロールプレーンノード上で次のコマンドを実行することで、新しいトークンを生成できます。

# コントロールプレーンノード上で実行してください。 sudo kubeadm token create 

このコマンドの出力は次のようになります。

5didvk.d09sbcov8ph2amjw 

新たなトークンを生成しながらkubeadm joinコマンドを出力するには、次のコマンドを使用します。

sudo kubeadm token create --print-join-command 

--discovery-token-ca-cert-hashの値が不明な場合は、コントロールプレーンノード上で次のコマンドを実行することで取得できます。

# コントロールプレーンノード上で実行してください。 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コマンドは、コントロールプレーンノード等で実行してください)。

次の項目

最終更新 August 29, 2025 at 2:19 PM PST: add print kubeadm join command (ecda65e1f4)