💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
前面的安装文档中我们安装的版本为`1.13.5`,但是最新的版本为`1.14.2`想要升级为最新的版本又不影响业务的访问。 ## 检查群集 检查群集可用于升级的版本和当前群集是否可升级 ``` kubeadm upgrade plan ``` 这里需要先升级`kubeadm` `kubelet` `kubectl` ## 升级kubelet kubeadm kubectl ``` yum install -y kubelet kubeadm kubectl ``` > 其他节点也需要执行 ## 升级群集组件 过程会稍微有点慢,因需要下载新版本的镜像 ``` kubeadm upgrade apply v1.14.2 ``` 其他master节点 ``` kubeadm upgrade node experimental-control-plane ``` ## 升级flannel (可选) 这个根据实际情况升级,如不是使用的`flannel`请参考官网 ``` kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml ``` ## 验证群集升级 ``` $ kubectl get nodes NAME STATUS ROLES AGE VERSION k8s-11 Ready master 29d v1.13.5 k8s-12 Ready master 29d v1.13.5 k8s-13 Ready master 29d v1.13.5 k8s-14 Ready <none> 29d v1.13.5 k8s-15 Ready <none> 29d v1.13.5 ``` ``` $ kubectl version Client Version: version.Info{Major:"1", Minor:"14", GitVersion:"v1.14.2", GitCommit:"66049e3b21efe110454d67df4fa62b08ea79a19b", GitTreeState:"clean", BuildDate:"2019-05-16T16:23:09Z", GoVersion:"go1.12.5", Compiler:"gc", Platform:"linux/amd64"} Server Version: version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.5", GitCommit:"66049e3b21efe110454d67df4fa62b08ea79a19b", GitTreeState:"clean", BuildDate:"2019-05-16T16:14:56Z", GoVersion:"go1.11.2", Compiler:"gc", Platform:"linux/amd64"} ``` 这里发现`version`还是`1.13.5`, kubectl的server还是`1.13.5`,只需要重启一下kubelet即可 ``` systemctl daemon-reload;systemctl restart kubelet.service ``` > 所有节点都需要执行 ``` $ kubeadm upgrade plan [preflight] Running pre-flight checks. [upgrade] Making sure the cluster is healthy: [upgrade/config] Making sure the configuration is correct: [upgrade/config] Reading configuration from the cluster... [upgrade/config] FYI: You can look at this config file with 'kubectl -n kube-system get cm kubeadm-config -oyaml' [upgrade] Fetching available versions to upgrade to [upgrade/versions] Cluster version: v1.14.2 [upgrade/versions] kubeadm version: v1.14.2 I0522 10:21:11.020699 6597 version.go:96] could not fetch a Kubernetes version from the internet: unable to get URL "https://dl.k8s.io/release/stable.txt": Get https://dl.k8s.io/release/stable.txt: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers) I0522 10:21:11.020790 6597 version.go:97] falling back to the local client version: v1.14.2 [upgrade/versions] Latest stable version: v1.14.2 I0522 10:21:21.096887 6597 version.go:96] could not fetch a Kubernetes version from the internet: unable to get URL "https://dl.k8s.io/release/stable-1.14.txt": Get https://dl.k8s.io/release/stable-1.14.txt: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers) I0522 10:21:21.097013 6597 version.go:97] falling back to the local client version: v1.14.2 [upgrade/versions] Latest version in the v1.14 series: v1.14.2 Awesome, you're up-to-date! Enjoy! ``` 最后发现群集已经为最新版本 ## 更新群集证书 - 更新所有证书 ``` kubeadm alpha certs renew all --config=kubeadm-config.yaml ``` - 更新其他单个证书请参考官方文档[https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-alpha/#cmd-certs-renew](https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-alpha/#cmd-certs-renew) --- 参考文档:[https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade-1-14/#](https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade-1-14/#)