kubeadm
kubeadm 是 Kubernetes 主推的部署工具之一,正在快速迭代开发中。
初始化系统
所有机器都需要初始化容器执行引擎(如 docker 或 frakti 等)和 kubelet。这是因为 kubeadm 依赖 kubelet 来启动 Master 组件,比如 kube-apiserver、kube-manager-controller、kube-scheduler、kube-proxy 等。
安装 master
在初始化 master 时,只需要执行 kubeadm init 命令即可,比如
这个命令会自动
系统状态检查
生成 token
生成自签名 CA 和 client 端证书
生成 kubeconfig 用于 kubelet 连接 API server
为 Master 组件生成 Static Pod manifests,并放到
/etc/kubernetes/manifests
目录中配置 RBAC 并设置 Master node 只运行控制平面组件
创建附加服务,比如 kube-proxy 和 kube-dns
配置 Network plugin
kubeadm 在初始化时并不关心网络插件,默认情况下,kubelet 配置使用 CNI 插件,这样就需要用户来额外初始化网络插件。
CNI bridge
flannel
weave
calico
添加 Node
这包括以下几个步骤
从 API server 下载 CA
创建本地证书,并请求 API Server 签名
最后配置 kubelet 连接到 API Server
删除安装
参考文档
最后更新于