安装k8s集群是真的不容易。 —— 鲁迅
一、虚拟机配置
首先应该安装好三台 ubuntu 虚拟机(我的是 ubuntu 18.04 ),配置好软件安装源(我的是 163,速度快)。
配置host (三台要配置的是一样的)
192.168.245.147 k8s-node1 192.168.245.148 k8s-master 192.168.245.150 k8s-node2
设置hostname(三台机器分别对应设置)
这里主要是k8s启动的时候会给node设置的name为hostname,如果虚拟机hostname一样,会加入集群加入不进去
hostnamectl set-hostname k8s-node1 hostnamectl set-hostname k8s-node2 hostnamectl set-hostname k8s-master
修改 /etc/docker/daemon.json
{ "exec-opts": ["native.cgroupdriver=systemd"] }
关闭防火墙,swap
sudo ufw disable
修改 /etc/fstab ,注释掉最后一行
#/swap.img none swap sw 0 0
二、安装软件(三个机器都要执行)
添加阿里云的key
curl https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | sudo apt-key add - sudo apt-get update
安装 kube* 软件
sudo apt-get install -qy kubelet=1.19.3-00 kubectl=1.19.3-00 kubeadm=1.19.3-00
这里为什么要安装 1.19版本的呢,主要是 最新版 1.21版本的下载需要 fq (哎。。。就用1.19的吧,折腾太麻烦了)
三、初始化集群
k8s-master上执行
sudo kubeadm init --kubernetes-version=v1.19.3 --image-repository registry.aliyuncs.com/google_containers --pod-network-cidr=10.244.0.0/16
执行结果会出现以下内容:
sudo kubeadm join 192.168.245.147:6443 –token l7s0st.zy8qi6k218zzk0nm \
–discovery-token-ca-cert-hash sha256:9c04e07d2e5761b7da51e2b1185e17b875d12537006ef5f4ccafbed608e1d993
这个命令放在两个 从节点上执行即可
安装 flannel 网络插件
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
四,其他问题
如果中间安装失败,需要重新配置,可以执行
kubeadm reset
配置k8s 开机启动
systemctl enable kubelet
该文章主要参考:
https://blog.csdn.net/k_young1997/article/details/109291763