kubeadm
Kubernetes公式のクラスタ・ブートストラップツール。kubeadm init と kubeadm join という2つのコマンドを、クラスタ構築のベストプラクティスの「fast path」として提供する。 #kubernetes
kubeadm init— 最初のノードでコントロールプレーンを立ち上げる。証明書の生成、kube-apiserverなどコントロールプレーンコンポーネントのstatic Pod化、etcdのセットアップまでを行うkubeadm join— bootstrap tokenを使ってワーカーノード(またはコントロールプレーンの追加ノード)をクラスタに参加させる
スコープの割り切り
kubeadmは「minimum viable cluster」を立ち上げることだけに責任を持つ。マシンのプロビジョニングはスコープ外で、CNIプラグイン(ネットワーク)のインストールもユーザーが後から行う。この割り切りによってオンプレ・クラウドVM・ベアメタル・ラップトップのどこでも動き、kubespray・Cluster API・minikube・kindといった上位ツールが土台として使える部品になっている(kindがnode imageコンテナ内で各ノードをブートストラップするのに使っているのもkubeadm)。
kubeadmで構築したクラスタはKubernetesのConformanceテストを通る。