Kubernetes 集群搭建
录了视频可参考:
Ubuntu18.04搭建K8s集群(前面依旧是网络的troubleshooting)MAC+VMWare
1.在每个节点上安装docker
https://www.digitalocean.com/community/tutorials/how-to-install-and-use-docker-on-ubuntu-18-04
sudo apt update
sudo apt install apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable"
sudo apt update
apt-cache policy docker-ce
sudo apt install docker-ce
sudo systemctl status docker
service docker start
2.在每个节点上安装Kubeadm, Kubelet and Kubectl
sudo curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
cat << EOF | sudo tee /etc/apt/sources.list.d/kubernetes.list
deb https://apt.kubernetes.io/ kubernetes-xenial main
EOF
# cat /etc/apt/sources.list.d/kubernetes.list
deb https://apt.kubernetes.io/ kubernetes-xenial main
# sudo apt-get update
# sudo apt-get install -y kubelet=1.12.7-00 kubeadm=1.12.7-00 kubectl=1.12.7-00
# sudo apt-mark hold kubelet kubeadm kubectl
此时,kubesdm可用,其他两个不可用。
- 在master上bootstrap集群
初始化集群: sudo kubeadm init --pod-network-cidr=10.244.0.0/16
结果最后一行会有jion,保存下来,在worker上执行,用于加入节点。
kubeadm join 172.16.192.120:6443 --token dd9tqx.kwqhlxpacwhv93dh \
--discovery-token-ca-cert-hash sha256:153161de8c1b99e198de8e0e96eba3cfbb75817b9e0b1fe9a4acf4aed48c1604
如果失败:sudo kubeadm reset
设置local kubeconfig:
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
ls -l $HOME/.kube/config
测试集群是否有响应
kubectl version
-
将其余两个node加入集群
-
配置网络
在三个节点上运行:
echo "net.bridge.bridge-nf-call-iptables=1" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
安装Flannel(仅在master上):
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
测试flannel状态:
kubectl get pods -n kube-system
测试节点状态
kubectl get nodes