k8s的小版本升級與降級


升級

先從負載均衡服務器上面禁用,防止調度到正在做升級相應服務器上 (記得,升級完后要把注釋去掉,重新加載haproxy)

[root@haproxy ~]# cat /etc/haproxy/haproxy.cfg
listen k8s-m44-6443
  bind 172.18.8.168:6443
  mode tcp
  #server 172.18.8.109 172.18.8.109:6443 check inter 2s fall 3 rise 5
  server 172.18.8.119 172.18.8.119:6443 check inter 2s fall 3 rise 5
  server 172.18.8.129 172.18.8.129:6443 check inter 2s fall 3 rise 5

重新加載haproxy

[root@haproxy ~]# systemctl reload haproxy.service

先安裝指定版本(每個master都執行)

[root@k8s-server1 ~]# apt-cache madison kubeadm

[root@k8s-server1 ~]# apt install kubeadm=1.20.9-00 kubelet=1.20.9-00 kubectl=1.20.9-00
...
[y/n] y

查看升級計划

[root@k8s-server1 manifests]# 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 -o yaml'
[preflight] Running pre-flight checks.
[upgrade] Running cluster health checks
[upgrade] Fetching available versions to upgrade to
[upgrade/versions] Cluster version: v1.20.5
[upgrade/versions] kubeadm version: v1.20.9
I0727 07:39:27.335261   26453 version.go:254] remote version is much newer: v1.21.3; falling back to: stable-1.20
[upgrade/versions] Latest stable version: v1.20.9
[upgrade/versions] Latest stable version: v1.20.9
[upgrade/versions] Latest version in the v1.20 series: v1.20.9
[upgrade/versions] Latest version in the v1.20 series: v1.20.9

Components that must be upgraded manually after you have upgraded the control plane with 'kubeadm upgrade apply':
COMPONENT   CURRENT       AVAILABLE
kubelet     6 x v1.20.5   v1.20.9

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

COMPONENT                 CURRENT    AVAILABLE
kube-apiserver            v1.20.5    v1.20.9
kube-controller-manager   v1.20.5    v1.20.9
kube-scheduler            v1.20.5    v1.20.9
kube-proxy                v1.20.5    v1.20.9
CoreDNS                   1.7.0      1.7.0
etcd                      3.4.13-0   3.4.13-0

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

	kubeadm upgrade apply v1.20.9

_____________________________________________________________________


The table below shows the current state of component configs as understood by this version of kubeadm.
Configs that have a "yes" mark in the "MANUAL UPGRADE REQUIRED" column require manual config upgrade or
resetting to kubeadm defaults before a successful upgrade can be performed. The version to manually
upgrade to is denoted in the "PREFERRED VERSION" column.

API GROUP                 CURRENT VERSION   PREFERRED VERSION   MANUAL UPGRADE REQUIRED
kubeproxy.config.k8s.io   v1alpha1          v1alpha1            no
kubelet.config.k8s.io     v1beta1           v1beta1             no
_____________________________________________________________________

執行(每個master)

[root@k8s-server1 ~]# kubeadm upgrade apply v1.20.9
[y/n] y
...
[upgrade/successful] SUCCESS! Your cluster was upgraded to "v1.20.9". Enjoy!

node節點執行(每個node節點)

[root@k8s-node1 ~]# apt install kubeadm=1.20.9-00 kubelet=1.20.9-00
...
[y/n] y

查看版本是否有變化

[root@k8s-server1 ~]# kubectl get node
NAME          STATUS   ROLES                  AGE    VERSION
k8s-node1     Ready    <none>                 2d3h   v1.20.9
k8s-node2     Ready    <none>                 2d3h   v1.20.9
k8s-node3     Ready    <none>                 43h    v1.20.9
k8s-server1   Ready    control-plane,master   2d4h   v1.20.9
k8s-server2   Ready    control-plane,master   2d3h   v1.20.9
k8s-server3   Ready    control-plane,master   2d2h   v1.20.9

降級

先下載比上個版本低的版本號

[root@k8s-server1 ~]# apt install kubeadm=1.20.5-00 kubelet=1.20.5-00 kubectl=1.20.5-00
...
[y/n] y

查看計划

[root@k8s-server1 ~]# kubeadm upgrade plan

執行

[root@k8s-server1 ~]# kubeadm upgrade apply v1.20.5
...
[y/n] y
...
[upgrade/successful] SUCCESS! Your cluster was upgraded to "v1.20.5". Enjoy!

node節點執行

[root@k8s-node1 ~]# apt install kubeadm=1.20.5-00 kubelet=1.20.5-00
...
[y/n] y

查看

[root@k8s-server1 ~]# kubectl get node
NAME          STATUS   ROLES                  AGE    VERSION
k8s-node1     Ready    <none>                 2d3h   v1.20.5
k8s-node2     Ready    <none>                 2d3h   v1.20.5
k8s-node3     Ready    <none>                 43h    v1.20.5
k8s-server1   Ready    control-plane,master   2d4h   v1.20.5
k8s-server2   Ready    control-plane,master   2d3h   v1.20.5
k8s-server3   Ready    control-plane,master   2d3h   v1.20.5


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM