kubeadm是Kubernetes 1.4开始新增的特性,用于快速搭建Kubernetes集群环境,两个命令就能把一个k8s集群搭建起来。之前广为诟病的“k8s环境搭建难”的问题,很快得到突破性的解决。本博文基于kubernetes v1.5.0源码对kubeadm工作原理和流程的分析,一窥其内部的工作流。
介绍
kubeadm一共提供了5个子命令:
- kubeadm init
- kubeadm join
- kubeadm token
- kubeadm reset
- kubeadm version
这个可以在k8s v1.5.0 代码中cmd/kubeadm/app/cmd/cmd.go:29看到:
func NewKubeadmCommand(f cmdutil.Factory, in io.Reader, out, err io.Writer) *cobra.Command {
cmds := &cobra.Command{
Use: "kubeadm",
Short: "kubeadm: