Kubernetes Versiyon Yükseltme
Bu dökümanda, Ubuntu işletim sisteminde Kubernetes uygulamasının 1.26.3 sürümünden 1.27.3 sürümüne yükseltilmesi örnek olarak anlatılmaktadır.
Kubernetes sürümünü yükseltirken, mevcut ve hedef sürümler arasındaki her bir küçük sürümün (örneğin, 1.25'ten 1.26'ya, sonra 1.26'dan 1.27'ye vb.) ardışık olarak yükseltilmesi gerekmektedir.
1) Control Plane (Master) Node için Yükseltme
Master(control-plane) olan sunuya geçiş yapınız ve 1-a,b ve c adımlarını uygulayınız.
Yükseltme işlemine başlamadan önce kubeadm, kubelet ve kubectl versiyonlarını aşağıdaki komutlar ile kontrol ediniz.
1-a) Kubeadm Versiyon yükseltme
Mevcut sürümlerin listesini aşağıdaki komutu kullanarak görüntüleyebilirsiniz.

Mevcut sürümler yukarıdaki çıktıda v1.26 olarak görüntülenmekte. Versiyon 1.27 deposunu sisteme ekleyiniz.
Kubeadm için versiyon 1.27.3-1.1 kurulumunu gerçekleştiriniz.
Çok Önemli
"FATAL: this version of kubeadm only supports deploying clusters with the control plane version >= 1.x Current version: v1.y"
Benzeri bir hata ile karşılaşırsanız( x>y ) koşulu ile.
Dökümanın başında belirtildiği gibi tek tek sürüm geçişi yapınız. İki veya daha fazla sürüm üstü kurulduysa aşağıdaki uyarıda ki komut ile kubeadm versiyonunu düşürebilirsiniz.
Çok Önemli
Versiyon olarak 1.26 kullanırken 1.25 geçmek isterseniz bu komutu kullanın:
sudo apt-get install -y kubeadm=1.25.3-1.1 --allow-downgrades
Aşağıdaki drain komutu, belirtilen bir Kubernetes node'unu bakım durumuna alır ve podları diğer node'lara aktarır. Master (control-plane) node'unuza alternatif bir master node'a sahip değilseniz bu komut sistem kesintisine sebep olacaktır. Tek node'a sahip cluster'lar için bu işlemi uygulamayabilirsiniz.
Kurulumu gerçekleştirilen v1.27 sürümüne upgrade komutu ile Kubeadm'i yükseltiniz.
İşlemin başarılı olduğu belirten mesajı ekranda çıktı olarak görmelisiniz.

Node'u tekrar kullanılabilir hale getiriniz.
1-b) Kubelet ve Kubectl Versiyon yükseltme
1-c) Upgrade İşlem Kontrolü
Kubelet hizmetini yeniden başlatın.
Master (control-plane) olan node'un versiyonunu görüntülemek için aşağıdaki komutu çalıştırınız.
Versiyon 1.27.3 olarak upgrade işleminin başarılı olduğunu kontrol edin.

2) Worker Node için Yükseltme
Worker node'un versiyon yükseltmesi de benzer adımlarla gerçekleştirilir.
Aşağıdaki drain komutu, belirtilen bir Kubernetes node'unu bakım durumuna alır ve podları diğer node'lara aktarır. Worker node'unuza alternatif bir node'a sahip değilseniz bu komut sistem kesintisine sebep olacaktır. Tek worker node'a sahip cluster'lar için bu işlemi uygulamayabilirsiniz.
Komut master(control-plane) sunucusunda çalıştırılır ve worker node için bakım ve pod boşaltma işlemini başlatır.
2-a) Kubeadm Versiyon yükseltme
Worker node'un bulunduğu sunucuya geçiş yapınız ve kubeadm yükseltme işlemini aşağıdaki komutlar ile gerçekleştiriniz.
Worker node için yükseltme işlemini gerçekleştiriniz.
2-b) Kubelet ve Kubectl Versiyon yükseltme
2-c) Upgrade İşlem Kontrolü
Aşağıdaki komutu master(control-plane) olan node'da çalıştırarak node'utekrar kullanıma açınız.
Worker node'un versiyonunu görüntülemek için aşağıdaki komutu çalıştırınız.
Versiyon 1.27.3 olarak upgrade işleminin başarılı olduğunu kontrol edin.
