Rancher’a giriş

Ali Orhun Akkirman
3 min readAug 14, 2022

--

Kubernetes ve konteynır teknolojileri ile ilgili çok fazla yazım yok. Fakat bir yerden de anlatmaya başlamak istiyordum. Bu konu da Rancher üzerinden olması denk geldi diyebiliriz.

Rancher, 2014 yılında kurulmuş Rancher Labs firmasının, “Kubernetes” ortamlarını yönetmesi için geliştirilen güzel bir yazılım. 1 Aralık 2020 tarihi itibariyle SUSE tarafından satın alındığını da belirtmemiz gerekebilir. Bu yazının konusu kubernetes ve konteynır teknolojileri olmadığı için anlatmak istediğim bir çok kavramı işin içerisine katmadan Kubernetes’in konteynır yönetiminde kullanılan bir araç olması, Rancher’ın (çiftçi anlamına geliyor) da Kubernetes (dümenci anlamına geliyor) ortamını yöneten araç olması kısmından giriş yapacağım.

Öncelikle yukarıda giriş yaptığım gibi Rancher, konteynır’ların yönetilmesini değil, kubernetes ortamının yönetilmesini sağlamakta. Bu nedenle kavramları hep kubernetes kavramları üzerinden anlatacağız.

Rancher neyi yönetir?

Öncelikle Rancher’ın neyi yönettiğinden başlayalım. Rancher çok özet olarak söylemek gerekirse Kubernetes Kümelerini (cluster) yönetir. Kubernetes kümesi olarak yerel sistemler, bulut üzerindeki sistemler ve kubernetes sağlayıcısı üzerindeki sistemleri yönetebilmektedir.

Kubernetes sağlayıcısı olarak varsayılan Amazon EKS, Azure AKS ve Google GKE kullanılabilmektedir. Ayrıca bulut sistemler üzerinde de Amazon EC2, Azure, DigitalOcean gibi sistemler üzerinde Kubernetes kümesi oluşturup yönetebilmenizi sağlar.

Bunun yanında yerel ortamınızda bulunan bir düğüm (node) veya yeni bir düğüm eklemek için size fırsat verebilir. Bu fırsat sırasında RKE (Rancher Kubernetes Engine) altyapısını kullanır. Bu süreçte RKE1 veya RKE2 diye farklı kurulum yöntemleriyle karşılaşırsınız. En temel fark olarak RKE1 konteynır mimarisi olarak Docker’ı kullanırken, RKE2 direkt containerd kullanmaktadır. Bu iki konteynır yöntemi ve RKE arasındaki seçim ayrı bir konu olarak düşünülebileceği için giriş seviyesindeki arkadaşlar için RKE1'i önerebilirim.

Ayrıca Rancher’ı varsayılan yöntemlerden birisi ile kurduğunuzda Local bir küme oluşturduğunu göreceksiniz ve bu da giriş için oldukça yeterli bir çözüm olacaktır.

Kubernetes kümesi (cluster) nedir?

İçerisinde control panel, etcd ve işçi düğüm(node)lerin bulunduğu veya bulunabileceği bir yapıdır.

Kubernetes’in detaylarına girmek yerine Rancher ile ilişkisinden bahsedeceğim için control panel ve etcd’nin işlevleri konusuna girmeden işçi düğüm(node) konusuna gireceğim.

Rancher genel olarak kümenin sağlığını takip eder. Ve üzerindeki kaynakların kontrol edilmesini yönetir. Bu kapsamda küme içerisindeki düğüm(node)ler en önemli kavramlardan birisidir. Bir diğeri de düğümler içerisindeki Pod’lardır.

Düğümler üzerindeki Podlar

Tabi bir de bu Pod’ların soyut bir namespace kavramı ile birbirinden ayrılabilmesi önemli bir noktayı oluşturmaktadır. Rancher üzerinde bu kavram genel olarak “Proje”(project) olarak da kullanılabiliyor.

Podlar ile namespace ilişkisi

Kümeler nasıl beslenebilir — Uygulamalar?

Başlık biraz ilginç olsa da aslında Helm (dümenci anlamına geliyor) kavramından bahsedebilmek için böyle bir giriş yaptım. Helm Kubernetes için kullanılan bir paket yöneticisidir. Kubernetes üzerinde kullanılacak uygulamaları yönetmek için kullanılır. Helm Chart’lar üzerinden paketlerin kurulumları gerçekleştirilir.

Rancher üzerinden öncelikle Helm Chart depoları ekleyip, bu depolarda bulunan Helm Chart’ları yükleyebilirsiniz. Bu şekilde özellikle konteynır şekilde geliştirilmiş çeşitli uygulamalar kolayca ayağa kaldırılabilir. Bunun yanında bu yazının konusu olmayan şekilde Helm Chart’ları kendiniz de geliştirip, depo oluşturup sistem üzerinde bunları aktif şekilde kullanabilirsiniz.

Kümedeki servisler

Kubernetes’in belki de en önemli amacı uygulamalar üzerinde servislerin ayağa kaldırılması olduğu için, çeşitli şekillerde ayağa kaldırılmış uygulamalar sonucunda çeşitli servisler oluşmaktadır. Rancher bu noktada servisleri tarayıp size servislerin durumlarını gösterebilmektedir. Bu servislerin ayakta kalma süreleri ve temel yönetim işlemleri de bu şekilde kontrol altına alınabilmektedir.

Özet

Özet olarak bu giriş yazısında Rancher ve üzerinde yapılacaklara basit bir giriş yapmış olduk. Elbette Rancher çeşitli şekillerde kullanılabilmektedir. Fakat özet olarak Kubernetes kümeleri ile ilgili yaptıklarını basit bir anlatımla sunmaya çalıştım. Belki Kubernetes entegrasyon konularında farklı bir ek yazı da gelebilir.

--

--