1、設置每個主機hosts,加入IP和主機名對應關係
2、關閉每個主機的firewalld iptables selinux
/proc/sys/net/bridge/bridge-nf-call-iptables
/proc/sys/net/bridge/bridge-nf-call-ip6tables
保證這兩個值爲1
3、下載aliyun docker k8s repo文件
4、安裝
master:
Yum -y install docker-ce kubeadm kubectl kubelet
Node:
Yum -y install docker-ce kubeadm kubelet
5、docker設置(全部節點)
編輯/usr/lib/systemd/system/docker.service 在 ExecStart 添加proxy代理
Environment=“HTTPS_PROXY=http://docker.inodb.com:80”
Environment=“NO_PROXY=127.0.0.0/8,192.168.3.1/24”
執行systemctl daemon-reload,systemctl restart docker 重新加載docker配置
執行docker info檢查proxy代理配置
執行 systemctl enable kubelet ,systemctl enable docker 加入開啓啓動
6、k8s集羣初始化
master節點:
編輯 vim /etc/sysconfig/kubelet 添加KUBELET_EXTRA_ARGS="–fail-swap-on=false" 忽略集羣初始化swap錯誤
初始化命令:
kubeadm init --kubernetes-version=stable --pod-network-cidr=10.244.0.0/16 --service-cidr=10.96.0.0/12 --ignore-preflight-errors=Swap
master配置:
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config (包含認證相關信息 非常重要!)
sudo chown (id -g) $HOME/.kube/config
檢查集羣狀態:
kubectl get cs (查看集羣控制器狀態)
kubectl get nodes (查看集羣node節點狀態)
kubectl get ns (查看集羣名稱空間namespace)
部署網絡插件flannel:
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
查看flannel運行狀態
kubectl get pods -n kube-system
node節點:
加入集羣
kubeadm join 192.168.3.110:6443 --token zhj0j0.5zxbaqfs82xcxqnp --discovery-token-ca-cert-hash sha256:9c47a569820fe49e764c8d6efde0b2704bf0e94777557cdb94ffc74cc3dbe286 --ignore-preflight-errors=Swap