美文网首页
Kubernetes集群版本升级

Kubernetes集群版本升级

作者: 橘子基因 | 来源:发表于2020-10-09 16:15 被阅读0次
  • 版本升级:1.16.9 -> 1.16.15

1. 控制节点升级

保留原始的kubeadm-config 文件:

kubeadm config view > kubeadm-config.yaml

查看是否可以升级
kubeadm upgrade plan

# kubeadm upgrade plan
[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'
[preflight] Running pre-flight checks.
[upgrade] Making sure the cluster is healthy:
[upgrade] Fetching available versions to upgrade to
[upgrade/versions] Cluster version: v1.16.9
[upgrade/versions] kubeadm version: v1.16.9
I1008 15:47:02.215286    1610 version.go:251] remote version is much newer: v1.19.2; falling back to: stable-1.16
[upgrade/versions] Latest stable version: v1.16.15
[upgrade/versions] Latest version in the v1.16 series: v1.16.15

Components that must be upgraded manually after you have upgraded the control plane with 'kubeadm upgrade apply':
COMPONENT   CURRENT       AVAILABLE
Kubelet     4 x v1.16.9   v1.16.15

Upgrade to the latest version in the v1.16 series:

COMPONENT            CURRENT   AVAILABLE
API Server           v1.16.9   v1.16.15
Controller Manager   v1.16.9   v1.16.15
Scheduler            v1.16.9   v1.16.15
Kube Proxy           v1.16.9   v1.16.15
CoreDNS              1.6.2     1.6.2
Etcd                 3.3.15    3.3.15-0

You can now apply the upgrade by executing the following command:

    kubeadm upgrade apply v1.16.15

Note: Before you can perform this upgrade, you have to update kubeadm to v1.16.15.

_____________________________________________________________________

先将kubeadm和kubectl升级到v1.16.15

# yum makecache fast && yum install -y kubeadm-1.16.15-0 kubectl-1.16.15-0
# kubeadm version #查看kubeadm版本
kubeadm version: &version.Info{Major:"1", Minor:"16", GitVersion:"v1.16.15", GitCommit:"2adc8d7091e89b6e3ca8d048140618ec89b39369", GitTreeState:"clean", BuildDate:"2020-09-02T11:37:34Z", GoVersion:"go1.13.15", Compiler:"gc", Platform:"linux/amd64"}

查看升级信息:

kubeadm upgrade apply v1.16.15 --config kubeadm-config.yaml --dry-run

驱逐节点:

kubectl drain k8s-master01 --ignore-daemonsets

执行升级命令:

kubeadm upgrade apply v1.16.15 --config kubeadm-config.yaml

选择yes:

kubeadm upgrade apply v1.16.14 --config kubeadm-config.yaml
[upgrade/config] Making sure the configuration is correct:
[preflight] Running pre-flight checks.
[upgrade] Making sure the cluster is healthy:
[upgrade/version] You have chosen to change the cluster version to "v1.16.14"
[upgrade/versions] Cluster version: v1.16.2
[upgrade/versions] kubeadm version: v1.16.14
[upgrade/confirm] Are you sure you want to proceed with the upgrade? [y/N]:y

更新kubelet

yum install -y kubelet-1.16.15-0

重启 kubelet 服务

systemctl daemon-reload
systemctl restart kubelet

查看node

 # kubectl get nodes                                              
NAME                            STATUS                       ROLES    AGE   VERSION
k8s-master01                     Ready,SchedulingDisabled    master   43d   v1.16.15
k8s-master02                     Ready                       master   37d   v1.16.9
k8s-master03                     Ready                       master   43d   v1.16.9
k8s-node01                       Ready                       <none>   43d   v1.16.9

恢复节点:

kubectl uncordon k8s-master01

查看节点:

# kubectl get nodes
NAME                            STATUS                     ROLES    AGE   VERSION
k8s-master01                    Ready                      master   43d   v1.16.15
k8s-master02                    Ready                      master   37d   v1.16.9
k8s-master03                    Ready                      master   43d   v1.16.9
k8s-node01                      Ready                      <none>   43d   v1.16.9

更新工作节点

驱逐节点:

kubectl drain k8s-node01 --ignore-daemonsets

查看节点:

# kubectl get nodes
NAME                            STATUS                     ROLES    AGE   VERSION
k8s-master01                    Ready                      master   43d   v1.16.15
k8s-master02                    Ready                      master   37d   v1.16.15
k8s-master03                    Ready                      master   43d   v1.16.15
k8s-node01                      Ready,SchedulingDisabled   <none>   43d   v1.16.9

升级节点的kubectl和kubeadm

yum install -y kubeadm-1.16.15-0 kubectl-1.16.15-0

执行升级命令

kubeadm upgrade node 

更新成功

[upgrade] Reading configuration from the cluster...
[upgrade] FYI: You can look at this config file with 'kubectl -n kube-system get cm kubeadm-config -oyaml'
[upgrade] Skipping phase. Not a control plane node[kubelet-start] Downloading configuration for the kubelet from the "kubelet-config-1.16" ConfigMap in the kube-system namespace
[kubelet-start] Writing kubelet configuration to file "/var/lib/kubelet/config.yaml"
[upgrade] The configuration for this node was successfully updated!
[upgrade] Now you should go ahead and upgrade the kubelet package using your package manager.

升级kubelet

yum install -y kubelet-1.16.15-0

重启kubelet

systemctl daemon-reload
systemctl restart kubelet

在控制节点查看node

# kubectl get nodes
NAME                            STATUS                     ROLES    AGE   VERSION
k8s-master01                    Ready                      master   43d   v1.16.15
k8s-master02                    Ready                      master   37d   v1.16.15
k8s-master03                    Ready                      master   43d   v1.16.15
k8s-node01                      Ready,SchedulingDisabled   <none>   43d   v1.16.15

接触禁止调度:

kubectl uncordon k8s-node01

查看节点:

# kubectl get nodes
NAME                            STATUS                     ROLES    AGE   VERSION
k8s-master01                    Ready                      master   43d   v1.16.15
k8s-master02                    Ready                      master   37d   v1.16.15
k8s-master03                    Ready                      master   43d   v1.16.15
k8s-node01                      Ready                      <none>   43d   v1.16.15

相关文章

网友评论

      本文标题:Kubernetes集群版本升级

      本文链接:https://www.haomeiwen.com/subject/jxxqpktx.html