使用kubeadm平滑地升级kubenetes集群(v1.10.2到v1.10.3)

写在前面

kubernetes是目前最炙手火热的容器管理、调度、编排平台,不仅拥有全面的生态系统,而且还开源、开放自治,谁贡献的多,谁的话语权就大,云提供商都有专门的工程师来从事kubernetes开源项目,其软件的升级迭代非常快,今天我们就来谈谈如何使用kubeadm平滑地升级kubenetes集群到v1.10.3。

备注:kubeadm是一个快速构建kubernetes集群的工具。

查看目前集群版本

从上面可以看到,master节点kubelete版本低于woker节点,kubernetes的版本倾斜并不支持情况,详细原因如下:

基于这两个原因,为了避免出现一些不必要的问题,所以决定立即升级集群。

检视集群

检查哪些版本可用于升级并验证当前群集是否可升级。

kubeadm upgrade plan [flags]

上图已经说得很清楚了,我们需要先升级kubeadm,然后才能升级control pannel,而kubeadm并不会自动安装和管理kubelet、kubectl,所以我们需要手工完成这三个组件的升级。

升级kubeadm kubelet kubectl

yum install -y kubelet kubeadm kubectl

升级集群组件

kubeadm upgrade apply v1.10.3

升级网络插件

kubernetes支持符合CNI规范的所有网络插件,生产环境一般建议使用calico,其他网络插件的升级大家可以自行去官网查看。

kubectl apply -f https://docs.projectcalico.org/v3.1/getting-started/kubernetes/installation/hosted/rbac-kdd.yaml
kubectl apply -f https://docs.projectcalico.org/v3.1/getting-started/kubernetes/installation/hosted/kubernetes-datastore/calico-networking/1.7/calico.yaml

再次检视集群

从上面可以看到,各个control pannel和组件都成功升级完成!!!

备注:命令执行后,可能一段时间kubectl get nodes看到的版本还是没有改变,dashboard也处于僵死状态,不要着急,等待大概20分钟左右就好了,不过服务会很快恢复,基本用户是无感知的。

延伸阅读

https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-upgrade

https://kubernetes.io/docs/tasks/tools/install-kubeadm

https://kubernetes.io/docs/setup/independent/create-cluster-kubeadm

原文地址:https://www.cnblogs.com/justmine/p/9139496.html

时间: 2024-10-31 17:49:05

使用kubeadm平滑地升级kubenetes集群(v1.10.2到v1.10.3)的相关文章

手动升级kubernetes集群

手动升级kubernetes集群 在我最开始写作本书的时候,kubernetes刚发布1.6.0版本,而kubernetes基本按照每三个月发布一个大版本的速度迭代,为了使用新特性和只支持新版本kubernetes的配套软件,升级kubernetes就迫在眉睫,在此我们使用替换kubernets的旧的二进制文件这种暴力的方式来升级测试集群,若升级生产集群还望三思. 另外,自kubernetes1.6版本之后发布的1.7和1.8版本又增加了一些新特性,参考: Kubernetes1.7更新日志 K

_00024 妳那伊抹微笑_云计算之ClouderaManager以及CHD5.1.0集群部署安装文档V1.0

博文作者:妳那伊抹微笑 博客地址:http://blog.csdn.net/u012185296 博文标题:_00024 妳那伊抹微笑_云计算之ClouderaManager以及CHD5.1.0集群部署安装文档V1.0 个性签名:世界上最遥远的距离不是天涯,也不是海角,而是我站在妳的面前,妳却感觉不到我的存在 技术方向:Flume+Kafka+Storm+Redis/Hbase+Hadoop+Hive+Mahout+Spark ... 云计算技术 转载声明:可以转载, 但必须以超链接形式标明文章

kubeadm平滑升级kubernetes集群

1.检查集群可更新到的最新正式版 这步需要访问google上的文件,被Wall,超时 I0215 11:50:19.097435 24591 version.go:94] could not fetch a Kubernetes version from the internet: unable to get URL "https://dl.k8s.io/release/stable.txt": Get https://storage.googleapis.com/kubernetes

用 kubeadm 部署生产级 k8s 集群

概述 kubeadm?已?持集群部署,且在1.13?版本中?GA,?持多?master,多?etcd?集群化部署,它也是官?最为推荐的部署?式,?来是由它的?sig?组来推进的,?来?kubeadm?在很多??确实很好的利?了?kubernetes?的许多特性,接下来?篇我们来实践并了解下它的魅?. ?标 1. 通过 kubeadm 搭建?可? kubernetes 集群,并新建管理?户 2. 为后续做版本升级演示,此处使?1.13.1版本,到下?篇再升级到 v1.14 3. kubeadm 的

kubeadm安装kubenetes1.15.4集群

基础环境 主机名 IP 系统版本  内核  docker版本  kubenetes版本 master 192.168.1.220 CentOS Linux release 7.6.1810 (Core)  5.5.4-1.el7.elrepo.x86_64 Docker version 18.06.3-ce, build d7080c1 v1.15.4 node01 192.168.1.221 CentOS Linux release 7.6.1810 (Core)  5.5.4-1.el7.e

MySQL Yum存储库 安装、升级、集群

添加MySQL Yum存储库 首先,将MySQL Yum存储库添加到系统的存储库列表中.按着这些次序: 在http://dev.mysql.com/downloads/repo/yum/上转到MySQL Yum存储库的下载页面 . 选择并下载适用于您的平台的发行包. 使用以下命令安装下载的发行包,替换 platform-and-version-specific-package-name 为下载的包的名称: shell> sudo rpm -Uvh platform-and-version-spe

kubeadm部署k8s-v1.11.1集群

一.环境准备 master:192.168.0.8,kubelet,kubeadm,kubectl:apiserver,manager,scheduler,proxy,pause,etcd,coredns node01:192.168.0.9,kubeadm,kubelet node02:192.168.0.10,kubeadm,kubelet 节点网络:192.168.0.0/24 Service网络:10.96.0.0/12 Pod网络:10.244.0.0/16(flannel默认) 1.

kubeadm部署高可用K8S集群(v1.14.0)

一. 集群规划 主机名 IP 角色 主要插件 VIP 172.16.1.10 实现master高可用和负载均衡 k8s-master01 172.16.1.11 master kube-apiserver.kube-controller.kube-scheduler.kubelet.kube-proxy.kube-flannel.etcd k8s-master02 172.16.1.12 master kube-apiserver.kube-controller.kube-scheduler.k

kubeadm部署单master Kuberntes集群

本文参考kubernetes docs 使用kubeadm创建single master的Kuberntes集群 虚机两台Centos75 Kubernetes Yum Repo采用国内阿里源 版本 v1.14.1 (该版本发布时间2019-04-09) Pod网络采用Calico 1 配置镜像源 以yum为例,Ubuntu可以采用中科大ustc的源 官方Google源 cat <<EOF > /etc/yum.repos.d/kubernetes.repo [kubernetes] n