Benutzer-Werkzeuge

Webseiten-Werkzeuge


it-wiki:kubernetes:cluster_upgrade

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
it-wiki:kubernetes:cluster_upgrade [2022/11/16 07:36] – [Upgrade Worker Node] markoit-wiki:kubernetes:cluster_upgrade [2024/02/07 07:11] (aktuell) – [Upgrade Worker Node] marko
Zeile 19: Zeile 19:
 === Den Master1 „drainen“ === === Den Master1 „drainen“ ===
 Damit der Master1 ein Versions-Upgrade (oder auch Downgrade) erhalten kann, muss er Damit der Master1 ein Versions-Upgrade (oder auch Downgrade) erhalten kann, muss er
-zunächst mit ''kubectl drain'' von seiner Workload befreit und aus dem Scheduler ge- +zunächst mit ''kubectl drain'' von seiner Workload befreit und aus dem Scheduler genommen werden. Zwar laufen in der Control Plane keine Workloads im typischen Sinne
-nommen werden. Zwar laufen in der Control Plane keine Workloads im typischen Sinne+
 wie auf den Workern, jedoch beispielsweise der ''coredns''-Pod: wie auf den Workern, jedoch beispielsweise der ''coredns''-Pod:
 <code bash> <code bash>
-$ kubectl get pods -n kube-system -o wide --field-selector+$ kubectl get pods -n kube-system -o wide --field-selector spec.nodeName=master1
 </code> </code>
-^NAME ^READY ^STATUS ^RESTARTS ^AGE|+^NAME ^READY ^STATUS ^RESTARTS ^AGE
 |calico-node-vdm6g|1/1|Running|1|105d| |calico-node-vdm6g|1/1|Running|1|105d|
 |coredns-74ff55c5b-6k7rg|1/1|Running|0|24h| |coredns-74ff55c5b-6k7rg|1/1|Running|0|24h|
Zeile 55: Zeile 54:
  
 <code bash>$ kubectl get nodes</code> <code bash>$ kubectl get nodes</code>
-^NAME ^STATUS ^ROLES ^AGE ^VERSION|+^NAME ^STATUS ^ROLES ^AGE ^VERSION
 |master1|Ready,SchedulingDisabled|control-plane,master|106d|v1.19.2| |master1|Ready,SchedulingDisabled|control-plane,master|106d|v1.19.2|
 |master2|Ready|control-plane,master|106d|v1.19.2| |master2|Ready|control-plane,master|106d|v1.19.2|
Zeile 62: Zeile 61:
 |worker2|Ready|<none>|106d|v1.19.2| |worker2|Ready|<none>|106d|v1.19.2|
  
-Die Version bezieht sich hier auf die Version des Kubelets auf den Nodes. Mit der Op- +Die Version bezieht sich hier auf die Version des Kubelets auf den Nodes. Mit der Option ''-o wide'' können Sie sich zusätzlich zu diesen Daten auch Informationen über das 
-tion ''-o wide'' können Sie sich zusätzlich zu diesen Daten auch Informationen über das +Betriebssystem, die Kernel-Version und die verwendete Container Runtime auf den jeweiligen Nodes anzeigen lassen.
-Betriebssystem, die Kernel-Version und die verwendete Container Runtime auf den je- +
-weiligen Nodes anzeigen lassen.+
 Sollte der etcd-Cluster fehlerhaft sein und es kommt bei dem Upgrade zu einem Ausfall Sollte der etcd-Cluster fehlerhaft sein und es kommt bei dem Upgrade zu einem Ausfall
 des Nodes, so kann das Quorum zwischen den etcd-Clustereinheiten nicht ausgeführt des Nodes, so kann das Quorum zwischen den etcd-Clustereinheiten nicht ausgeführt
Zeile 73: Zeile 70:
 <code bash>$ kubectl get pod -n kube-system --selector component=etcd</code> <code bash>$ kubectl get pod -n kube-system --selector component=etcd</code>
  
-^NAME ^READY ^STATUS ^RESTARTS ^AGE|+^NAME ^READY ^STATUS ^RESTARTS ^AGE
 |etcd-master1|1/1|Running|4|29h| |etcd-master1|1/1|Running|4|29h|
 |etcd-master2|1/1|Running|149|100d| |etcd-master2|1/1|Running|149|100d|
Zeile 206: Zeile 203:
  
 Der Node ist nun wieder einsatzbereit und auf die neue Version aktualisiert: Der Node ist nun wieder einsatzbereit und auf die neue Version aktualisiert:
->code bash>+<code bash>
 $ kubectl get nodes $ kubectl get nodes
 </code> </code>
  
-^NAME ^STATUS ^ROLES ^AGE ^VERSION|+^NAME ^STATUS ^ROLES ^AGE ^VERSION
 |master1|Ready|control-plane,master|107d|v1.20.1| |master1|Ready|control-plane,master|107d|v1.20.1|
 |master2|Ready|control-plane,master|107d|v1.19.2| |master2|Ready|control-plane,master|107d|v1.19.2|
Zeile 244: Zeile 241:
 $ kubectl get nodes master2 $ kubectl get nodes master2
 </code> </code>
-^NAME ^STATUS^ ROLES ^AGE ^VERSION|+^NAME ^STATUS^ ROLES ^AGE ^VERSION
 |master2|Ready,SchedulingDisabled|control-plane,master|109d|v1.19.2| |master2|Ready,SchedulingDisabled|control-plane,master|109d|v1.19.2|
  
Zeile 255: Zeile 252:
 </code> </code>
  
-^NAME ^READY ^STATUS ^RESTARTS ^AGE|+^NAME ^READY ^STATUS ^RESTARTS ^AGE
 |etcd-master1|1/1|Running|13|5d1h| |etcd-master1|1/1|Running|13|5d1h|
 |etcd-master2|1/1|Running|158|103d| |etcd-master2|1/1|Running|158|103d|
Zeile 333: Zeile 330:
 $ kubectl get nodes $ kubectl get nodes
 </code> </code>
-^NAME ^STATUS ^ROLES ^AGE ^VERSION|+^NAME ^STATUS ^ROLES ^AGE ^VERSION
 |master1|Ready|control-plane,master|110d|v1.20.1| |master1|Ready|control-plane,master|110d|v1.20.1|
 |master2|Ready|control-plane,master|109d|v1.20.1| |master2|Ready|control-plane,master|109d|v1.20.1|
Zeile 375: Zeile 372:
  
 Anschließend werden die neuen Pakete installiert und dann wieder auf ''hold'' gesetzt: Anschließend werden die neuen Pakete installiert und dann wieder auf ''hold'' gesetzt:
-<coe bash>+<code bash>
 $ sudo apt-get install kubelet=1.20.1-00 kubectl=1.20.1-00 $ sudo apt-get install kubelet=1.20.1-00 kubectl=1.20.1-00
     kubeadm=1.20.1-00     kubeadm=1.20.1-00
it-wiki/kubernetes/cluster_upgrade.1668584175.txt.gz · Zuletzt geändert: von marko