kubeadm
Kubeadm is among the tools that Kubernetes proudly recommends, and it's currently undergoing rapid iteration and development.
System Initialization
All machines need to initialize their container execution engine (like Docker or Frakti) and also kubelet. These initializations are essential since kubeadm relies on kubelet to start up the Master components such as kube-apiserver, kube-manager-controller, kube-scheduler, and kube-proxy, among others.
Connecting with Master
To initialize the master, all you have to do is run the command kubeadm init
, like so:
Executing this command will autonomously:
Run a systematic status check,
Generate a token,
Launch a self-signed CA and client-side certificates,
Create a kubeconfig for kubelet to connect to the API server,
Produce Static Pod manifests for Master components and place them in the
/etc/kubernetes/manifests
directory,Configure RBAC and set the Master node to only run the control plane components,
Establish additional services, like kube-proxy and kube-dns.
Adjusting the Network Plugin
During initialization, kubeadm remains indifferent to the network plugin. On default, kubelet is configured to use CNI plugins, requiring users to initialize the network plugin separately.
CNI Bridge
Flannel
Weave
Calico
Node Addition
This step includes the following processes:
Downloading the CA from the API server,
Generating local certificates and requesting the API Server's signature,
Finally, configuring kubelet to connect to the API Server.
Installation Removal
Helpful References
最后更新于