Kubeadm 是一个工具,它提供了 kubeadm init 以及 kubeadm join 这两个命令作为快速创建 kubernetes 集群的最佳实践。
kubeadm 通过执行必要的操作来启动和运行一个最小可用的集群。它被故意设计为只关心启动集群,而不是之前的节点准备工作。同样的,诸如安装各种各样值得拥有的插件,例如 Kubernetes Dashboard、监控解决方案以及特定云提供商的插件,这些都不在它负责的范围。
相反,我们期望由一个基于 kubeadm 从更高层设计的更加合适的工具来做这些事情;并且,理想情况下,使用 kubeadm 作为所有部署的基础将会使得创建一个符合期望的集群变得容易。
kubeadm 与 minikube 的区别:
minikube 基本上你可以认为是一个实验室工具,只能单机部署,里面整合了 k8s 最主要的组件,无法真正搭建集群,且由于程序做死无法安装各种扩展插件(比如网络插件、dns 插件、ingress 插件等等),主要作用是给你了解 k8s 用的。而 kudeadm 搭建出来是一个真正的 k8s 集群,可用于生产环境(HA 需要自己做),和二进制搭建出来的集群几乎没有区别。
准备工作:
- BIOS 中开启 VT-X (如果是虚拟机注意设置)
- 科学上网 (由于 GFW)
本文以以下配置的虚拟机进行Kubernetes安装。
配置 5 台 CentOS 虚拟机, 1 台 master, 4 台 node, 分别为:
- 192.168.1.128 k8s-master1
- 192.168.1.131 k8s-node1
- 192.168.1.132 k8s-node2
- 192.168.1.133 k8s-node3
- 192.168.1.134 k8s-node4