1. 程式人生 > 其它 >|NO.Z.00101|——————————|^^ 升級 ^^|——|KuberNetes&二進位制升級.V12|-----------------------|kubernetes_Node|kubelet.v1.17.0——>v1.19.5|

|NO.Z.00101|——————————|^^ 升級 ^^|——|KuberNetes&二進位制升級.V12|-----------------------|kubernetes_Node|kubelet.v1.17.0——>v1.19.5|



[CloudNative:KuberNetes&二進位制升級.V12]                                                            [Applications.KuberNetes] [|DevOps|kubernetes|二進位制升級|kubernetes.v1.17.0——>v1.19.5|] [node元件|kubelet.v1.17.0——>v1.19.5|kube-proxy.v1.17.0——>v1.19.5|]








一、升級相關節點kubelet服務kubelet.v1.17.0——>v1.19.5

### --- 下線kubernetes.node節點
~~~     檢視叢集各節點版本狀態
~~~     注:升級其它的四個節點kubelet版本

[root@k8s-master01 ~]# kubectl get node
NAME           STATUS   ROLES    AGE   VERSION
k8s-master01   Ready    <none>   54d   v1.19.5
k8s-master02   Ready    <none>   54d   v1.17.0
k8s-master03   Ready    <none>   54d   v1.17.0
k8s-node01     Ready    <none>   54d   v1.17.0
k8s-node02     Ready    <none>   54d   v1.17.0
### --- 下線node節點k8s-master02:把k8s-master02設定成不可排程狀態

[root@k8s-master02 ~]# kubectl drain k8s-master02 --delete-local-data --force --ignore-daemonsets
二、kubernetes.node節點升級kubelet服務
### --- 檢視kubelet版本

[root@k8s-master02 ~]# /usr/local/bin/kubelet --version
Kubernetes v1.17.0
### --- 停止執行kubelet服務

[root@k8s-master02 ~]# systemctl stop kubelet
### --- 備份kubelet服務

[root@k8s-master02 ~]# which kubelet
/usr/local/bin/kubelet
[root@k8s-master02 ~]# mkdir /usr/local/bin/kubelet.bak
[root@k8s-master02 ~]# cp /usr/local/bin/kubelet /usr/local/bin/kubelet.bak/
### --- 升級kubelet服務

[root@k8s-master01 ~]# scp  upgrade/master/kubernetes/server/bin/kubelet k8s-master02:/usr/local/bin/
kubelet   
### --- 檢視kubelet版本

[root@k8s-node02 ~]# /usr/local/bin/kubelet --version
Kubernetes v1.19.5
### --- 啟動kubelet服務

[root@k8s-master02 ~]# systemctl daemon-reload
[root@k8s-master02 ~]# systemctl start kubelet
三、將kubernetes.node節點加入到kubernetes叢集中
### --- 上線node節點到kubernetes叢集中
~~~     根據以上方案升級其它所有未升級的節點

[root@k8s-master01 ~]# kubectl uncordon k8s-master02
node/k8s-master01 uncordoned
### --- 檢視kubernetes叢集kubelet版本
~~~     注:檢視kubelet的版本是否均已升級為v1.19.5版本

[root@k8s-master01 ~]# kubectl get node -owide
NAME           STATUS   ROLES    AGE   VERSION   INTERNAL-IP    EXTERNAL-IP   OS-IMAGE                KERNEL-VERSION                CONTAINER-RUNTIME
k8s-master01   Ready    <none>   54d   v1.19.5   192.168.1.11   <none>        CentOS Linux 7 (Core)   4.19.12-1.el7.elrepo.x86_64   docker://19.3.15
k8s-master02   Ready    <none>   54d   v1.19.5   192.168.1.12   <none>        CentOS Linux 7 (Core)   4.19.12-1.el7.elrepo.x86_64   docker://19.3.15
k8s-master03   Ready    <none>   54d   v1.19.5   192.168.1.13   <none>        CentOS Linux 7 (Core)   4.19.12-1.el7.elrepo.x86_64   docker://19.3.15
k8s-node01     Ready    <none>   54d   v1.19.5   192.168.1.14   <none>        CentOS Linux 7 (Core)   4.19.12-1.el7.elrepo.x86_64   docker://19.3.15
k8s-node02     Ready    <none>   54d   v1.19.5   192.168.1.15   <none>        CentOS Linux 7 (Core)   4.19.12-1.el7.elrepo.x86_64   docker://19.3.15

四、叢集可用性驗證
### --- 同一namespace下pod是否可以正常解析service

[root@k8s-master01 ~]# kubectl exec  busybox -n default -- nslookup kubernetes
Server:    10.96.0.10
Address 1: 10.96.0.10 kube-dns.kube-system.svc.cluster.local

Name:      kubernetes
Address 1: 10.96.0.1 kubernetes.default.svc.cluster.local
### --- 跨namespace下pod是否正常解析service

[root@k8s-master01 ~]# kubectl exec  busybox -n default -- nslookup kube-dns.kube-system
Server:    10.96.0.10
Address 1: 10.96.0.10 kube-dns.kube-system.svc.cluster.local

Name:      kube-dns.kube-system
Address 1: 10.96.0.10 kube-dns.kube-system.svc.cluster.local








===============================END===============================


Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart                                                                                                                                                    ——W.S.Landor



來自為知筆記(Wiz)