Centos-7快速升級到K8S-1.17.3
阿新 • • 發佈:2020-12-31
1、清理歷史版本。將下面的命令儲存為檔案:uninstallk8s.sh
kubeadm reset -f modprobe -r ipip lsmod rm -rf ~/.kube/ rm -rf /etc/kubernetes/ rm -rf /etc/systemd/system/kubelet.service.d rm -rf /etc/systemd/system/kubelet.service rm -rf /usr/bin/kube* rm -rf /etc/cni rm -rf /opt/cni rm -rf /var/lib/etcd rm -rf /var/etcd yum clean all yum remove kube*
2、執行命令:
sh uninstallk8s.sh
3、yum安裝kubelet、kubectl、kubeadm
yum install -y kubelet-1.17.3 kubectl-1.17.3 kubeadm-1.17.3
4、啟動kubelet
systemctl enable kubelet && systemctl start kubelet
5、在主節點上初始化admin
kubeadm init --kubernetes-version=v1.17.3 --pod-network-cidr=10.244.0.0/16 --image-repository registry.cn-hangzhou.aliyuncs.com/google_containers --apiserver-advertise-address=10.213.7.6
6、執行完成後,複製最後的一段輸出,在子節點上執行
kubeadm join 10.213.7.6:6443 --token w4hpe5.7k3efrk702dyakzi \
--discovery-token-ca-cert-hash sha256:11b63945106b69bdb2c2ca69faf1f0d3e8aeb7db9cae24dd2e8812582b291bde
7、檢視節點狀態
kubectl get nodes NAME STATUS ROLES AGE VERSION vpt00043s1a05 NotReady master 2m50s v1.17.3 vpt00043s1a11 Ready <none> 2m3s v1.17.3 vpt00043s1a12 Ready <none> 54s v1.17.3
8、發現master節點 notReady,需要配置網路外掛
kubectl apply -f kube-flannel.yml
再次嘗試:
kubectl get nodes
NAME STATUS ROLES AGE VERSION
vpt00043s1a05 Ready master 7m v1.17.3
vpt00043s1a11 Ready <none> 6m13s v1.17.3
vpt00043s1a12 Ready <none> 5m4s v1.17.3
9、在子節點上執行:
kubectl get pods --all-namespaces
The connection to the server localhost:8080 was refused - did you specify the right host or port?
拷貝mater節點的/etc/kubernetes/admin.conf到node節點上對應的位置即可。
10、啟動報埠不在範圍
The Service "svc-dot-2" is invalid: spec.ports[0].nodePort: Invalid value: 9002: provided port is not in the valid range. The range of valid ports is 30000-32767
nodeport的預設埠範圍是30000~32767
檢視配置檔案
vi /etc/kubernetes/manifests/kube-apiserver.yaml
在- --service-cluster-ip-range下面增加一行
- --service-node-port-range=18080-18090
重啟服務即可
systemctl daemon-reload
systemctl restart kubelet