Ubuntu 24.04
Sponsored Link

Kubernetes : Worker ノードの設定2024/06/07

 

マルチノード Kubernetes クラスターを構成します。

当例では以下のように 4 台のノードを使用して設定します。

+----------------------+   +----------------------+
|  [ ctrl.srv.world ]  |   |   [ dlp.srv.world ]  |
|     Manager Node     |   |     Control Plane    |
+-----------+----------+   +-----------+----------+
        eth0|10.0.0.25             eth0|10.0.0.30
            |                          |
------------+--------------------------+-----------
            |                          |
        eth0|10.0.0.51             eth0|10.0.0.52
+-----------+----------+   +-----------+----------+
| [ node01.srv.world ] |   | [ node02.srv.world ] |
|     Worker Node#1    |   |     Worker Node#2    |
+----------------------+   +----------------------+

[1]

事前に全ノードに Kubeadm インストール等々、ノード共通の設定を適用しておきます

[2] Worker ノードとするホストから、Control Plane ノードで初期セットアップしたクラスターに Join します。
Join する際のコマンドは、初期セットアップのコマンド実行時の最後に表示された [kubeadm join ~] コマンドをそのままコピーして実行するのみです。
root@node01:~#
kubeadm join 10.0.0.25:6443 --token 33l1jx.75weydwhz6elwdqw \
--discovery-token-ca-cert-hash sha256:fe7bab5af66756eb9516e4c51c072af4839509fa0d727a124ce8a9cbaafaf829

[preflight] Running pre-flight checks
[preflight] Reading configuration from the cluster...
[preflight] FYI: You can look at this config file with 'kubectl -n kube-system get cm kubeadm-config -o yaml'
[kubelet-start] Writing kubelet configuration to file "/var/lib/kubelet/config.yaml"
[kubelet-start] Writing kubelet environment file with flags to file "/var/lib/kubelet/kubeadm-flags.env"
[kubelet-start] Starting the kubelet
[kubelet-check] Waiting for a healthy kubelet. This can take up to 4m0s
[kubelet-check] The kubelet is healthy after 501.836091ms
[kubelet-start] Waiting for the kubelet to perform the TLS Bootstrap

This node has joined the cluster:
* Certificate signing request was sent to apiserver and a response was received.
* The Kubelet was informed of the new secure connection details.

Run 'kubectl get nodes' on the control-plane to see this node join the cluster.
# This node has joined the cluster と表示されれば OK

[3] Manager ノード または クラスター管理ユーザーを設定したクライアントホストで、ノード情報を確認しておきます。全て STATUS = Ready であれば OK です。
root@ctrl:~#
kubectl get nodes

NAME               STATUS   ROLES           AGE     VERSION
dlp.srv.world      Ready    control-plane   9m18s   v1.30.1
node01.srv.world   Ready    <none>          73s     v1.30.1
node02.srv.world   Ready    <none>          31s     v1.30.1
関連コンテンツ