最初に
この記事は下記urlの続きである。
HA構成をする前にsingle controller構成を構築した。
後のHA構成ではここで作成したconfigを書き換えて構築する。
clusterに参加
control nodeでtokenを作り直す
< >
で記述されているものは置き換えて考えて欲しい。
これはcontrol nodeで実行する。
$ kubeadm token list
TOKEN TTL EXPIRES USAGES DESCRIPTION EXTRA GROUPS
abcdef.0123456789abcdef 23h 2024-06-21T14:35:06Z authentication,signing <none> system:bootstrappers:kubeadm:default-node-token
$ kubeadm token delete abcdef.0123456789abcdef
$ kubeadm token create --print-join-command
kubeadm join <controller nodeのip>:6443 --token <token> --discovery-token-ca-cert-hash sha256:<hash>
worker nodeでconfigを作成する。
これはworker nodeで構築する。
$ kubeadm config print join-defaults > kubeadm-default.yml
$ vim kubeadm-default.yml
apiVersion: kubeadm.k8s.io/v1beta3
caCertPath: /etc/kubernetes/pki/ca.crt
discovery:
bootstrapToken:
apiServerEndpoint: <controol nodeのip>:6443
token: <token>
caCertHashes:
- sha256:<hash>
unsafeSkipCAVerification: true
timeout: 5m0s
tlsBootstrapToken: <token>
kind: JoinConfiguration
nodeRegistration:
criSocket: unix:///var/run/containerd/containerd.sock
imagePullPolicy: IfNotPresent
name: worker-node0 # nodeの名前なので自由に変更して良い
taints: null
kubeletExtraArgs:
node-ip: <worker nodeのip>
worker nodeをclusterに参加させる
これはworker nodeで実行する。
$ sudo kubeadm join --config kubeadm-default.yml
$ sudo systemctl restart containerd
動作確認
control nodeでworker nodeが参加したか確認する。
これはcontrol nodeで実行する。
$ kubectl get node
これでsingle controller構成の構築は完了した。
次回はHA構成の構築を行う。
参考