本文介绍采用快速的方式升级到Kubernetes 1.12.2版本,包含内容有升级kubeadm/kubectl/kubelet版本、拉取容器镜像、升级Kubernetes集群这三个主要的步骤。同时如要升级Kubernetes 1.12.1版本,则把下面1.12.2改为1.12.1。
1、升级kubeadm/kubectl/kubelet版本 sudo apt install kubeadm=1.12.2-00 kubectl=1.12.2-00 kubelet=1.12.2-00 查看该版本的容器镜像版本: kubeadm config images list 输出如下: ~# kubeadm config images list k8s.gcr.io/kube-apiserver:v1.12.2 k8s.gcr.io/kube-controller-manager:v1.12.2 k8s.gcr.io/kube-scheduler:v1.12.2 k8s.gcr.io/kube-proxy:v1.12.2 k8s.gcr.io/pause:3.1 k8s.gcr.io/etcd:3.2.24 k8s.gcr.io/coredns:1.2.2
2、拉取容器镜像 我给镜像到了阿里云的杭州机房的容器仓库里,拉取还是比较快的。 echo "" echo "===========================================" echo "Pull Kubernetes v1.12.2 Images from aliyuncs.com ......" echo "===========================================" echo "" MY_REGISTRY=registry.cn-hangzhou.aliyuncs.com/openthings ## 拉取镜像 docker pull ${MY_REGISTRY}/k8s-gcr-io-kube-apiserver:v1.12.2 docker pull ${MY_REGISTRY}/k8s-gcr-io-kube-controller-manager:v1.12.2 docker pull ${MY_REGISTRY}/k8s-gcr-io-kube-scheduler:v1.12.2 docker pull ${MY_REGISTRY}/k8s-gcr-io-kube-proxy:v1.12.2 docker pull ${MY_REGISTRY}/k8s-gcr-io-etcd:3.2.24 docker pull ${MY_REGISTRY}/k8s-gcr-io-pause:3.1 docker pull ${MY_REGISTRY}/k8s-gcr-io-coredns:1.2.2 ## 添加Tag docker tag ${MY_REGISTRY}/k8s-gcr-io-kube-apiserver:v1.12.2 k8s.gcr.io/kube-apiserver:v1.12.2 docker tag ${MY_REGISTRY}/k8s-gcr-io-kube-scheduler:v1.12.2 k8s.gcr.io/kube-scheduler:v1.12.2 docker tag ${MY_REGISTRY}/k8s-gcr-io-kube-controller-manager:v1.12.2 k8s.gcr.io/kube-controller-manager:v1.12.2 docker tag ${MY_REGISTRY}/k8s-gcr-io-kube-proxy:v1.12.2 k8s.gcr.io/kube-proxy:v1.12.2 docker tag ${MY_REGISTRY}/k8s-gcr-io-etcd:3.2.24 k8s.gcr.io/etcd:3.2.24 docker tag ${MY_REGISTRY}/k8s-gcr-io-pause:3.1 k8s.gcr.io/pause:3.1 docker tag ${MY_REGISTRY}/k8s-gcr-io-coredns:1.2.2 k8s.gcr.io/coredns:1.2.2 echo "" echo "=========================================" echo "Pull Kubernetes v1.12.2 Images FINISHED." echo "into registry.cn-hangzhou.aliyuncs.com/openthings, " echo " by openthings" echo "=========================================" echo "" 保存为shell脚本,然后执行。
3、升级Kubernetes集群 先查看一下需要升级的各个组件的版本。 使用kubeadm upgrade plan ,输出的版本升级信息如下:
确保上面的容器镜像已经下载(如果没有提前下载,可能被网络阻隔导致挂起),然后执行升级: kubeadm upgrade apply v1.12.2 看到下面信息,就OK了: [upgrade/successful] SUCCESS! Your cluster was upgraded to "v1.12.2". Enjoy!
4、工作节点的升级 每个工作节点需要拉取上面对应版本的镜像,以及安装kubelet的对应版本。 Verify: ~$ kubectl version Get Pod: kubectl get pod --all-namespaces
相关主题 |