1. kubeadm简介
kubeadm 是 Kubernetes 官方提供的一个 CLI 工具,可以很方便的搭建一套符合官方最佳实践的最小化可用集群。当我们使用 kubeadm 搭建集群时,集群可以通过 K8S 的一致性测试,并且 kubeadm 还支持其他的集群生命周期功能,比如升级/降级等。
2. 安装kebeadm
2.1 安装前准备
- 禁用 swap
我们知道每个节点上都有个必须的组件,名为 kubelet,自 K8S 1.8 开始,启动 kubelet 时,需要禁用 swap 。或者需要更改 kubelet 的启动参数 --fail-swap-on=false。
-
cat /proc/swaps
-
swapoff -a
-
将 /etc/fstab 中和上一条命令中输出的,和 swap 相关的挂载点都删掉
-
确保要搭建集群的所有节点的 product_uuid和Mac 地址 均不相同
/sys/class/dmi/id/product_uuid
ip a
- 确保需要的端口没被占用
netstat -ntlp |grep -E '6443|23[79,80]|1025[0,1,2]'
- 部署docker
[root@slave ~]# yum install -y wget && wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
[root@slave ~]# yum -y install docker-ce-18.06.1.ce-3.el7
[root@slave ~]# systemctl enable docker && systemctl start docker
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.
2.2 正式安装
- 安装kubeadm
[root@slave ~]# curl -sSL https://dl.k8s.io/release/v1.11.3/bin/linux/amd64/kubeadm > /usr/bin/kubeadm
[root@slave ~]# chmod a+rx /usr/bin/kubeadm
[root@slave ~]# kubeadm version
kubeadm version: &version.Info{
Major:"1", Minor:"11", GitVersion:"v1.11.3", GitCommit: