GKE (Google Kubernetes Engine): Yönetilen Kubernetes Hizmetini Anlamak
GKE, Google Cloud'un yönetilen Kubernetes hizmetidir. Kontrol düzlemini Google yönetir; Autopilot ve Standard modlarını, işleyişi ve kullanımı öğrenin.
GKE nedir?
Kubernetes, konteyner halindeki uygulamaları birçok makinede çalıştıran, ölçekleyen ve yöneten açık kaynaklı bir orkestrasyon sistemidir. Kendi sunucularınızda Kubernetes kurmak; kontrol düzlemini, etcd veri deposunu, sertifikaları ve sürüm yükseltmelerini kendiniz yönetmek demektir. GKE bu işin büyük kısmını Google Cloud'a devreder.
GKE'de siz kümeyi bir konsol ekranı, gcloud komutu ya da altyapı kodu ile tanımlarsınız; Google kontrol düzlemini çalıştırır, güncel tutar ve erişilebilir kılar. Siz uygulamalarınızı Kubernetes'in standart nesneleriyle (Deployment, Service, Ingress) dağıtırsınız ve kümeyle kubectl üzerinden konuşursunuz. Bu nedenle Kubernetes bilgisi GKE'de doğrudan geçerlidir.
Nasıl çalışır? Kontrol düzlemi ve düğümler
Bir GKE kümesi kontrol düzlemi ve düğümlerden oluşur. Kontrol düzlemi API sunucusu, zamanlayıcı ve denetleyicileri barındırır; bunu Google yönetir. Düğümler (node) ise uygulama Pod'larının çalıştığı sanal makinelerdir; bunlar Google Cloud'un hesaplama hizmetleri üzerinde kurulur ve düğüm havuzları (node pool) halinde gruplanır.
İş akışı şöyledir: Konteyner imajını bir imaj deposuna gönderirsiniz, manifest dosyasını kubectl ile uygularsınız, zamanlayıcı Pod'ları uygun düğümlere yerleştirir. Servis erişimi için Google Cloud'un yük dengeleme altyapısı kullanılır, kimlik ve yetki tarafı Google Cloud IAM ile Kubernetes RBAC birlikte çalışır. Güncel özellik adları ve sürümleri Google'ın belgelerinde değiştiği için, kurulum öncesi resmî belgeye bakmak gerekir.
Autopilot ve Standard modları
GKE, Standard ve Autopilot işletim modlarını sunar. Standard modda düğüm havuzlarının makine tipini, boyutunu ve sayısını siz seçersiniz; düğüm yönetimi ve kapasite planlaması sizdedir. Bu mod, düğüm düzeyinde ince ayar gereken ya da özel donanım isteyen iş yükleri için uygundur.
Autopilot modunda ise düğüm altyapısını Google yönetir; kapasite, Pod'ların istediği kaynaklara göre sağlanır ve faturalama da genellikle Pod kaynak taleplerine dayanır. Operasyon yükü azalır, karşılığında düğüm düzeyinde yapabileceğiniz müdahaleler sınırlıdır. Seçim, ekibin kaynak yönetimine ne kadar vakit ayırabildiğine ve iş yükünün özel gereksinimlerine bağlıdır.
Küçük bir örnek
Örneğin bir perakende şirketi sipariş servisini konteynerleştirdi. Kampanya dönemlerinde istek sayısı dalgalanıyor. Ekip servisi GKE kümesine Deployment olarak yerleştirir, trafiğe göre Pod sayısını otomatik ölçekleyiciyle artırıp azaltır. Küme düğüm yükselmesini ve sürüm güncellemelerini Google'ın yönettiği süreçlerle yapar; ekip bunun yerine uygulama sürümlerine, izlemeye ve maliyete odaklanır.
Aynı ekip, gözlemlenebilirlik için Google Cloud'un günlük ve ölçüm hizmetlerinden yararlanabilir. Küme dışındaki bir veritabanı da aynı Google Cloud ağı içinden erişilebilir kalır.
GKE ile kendi kurduğunuz Kubernetes arasındaki fark
Kendi sunucunuzda kurduğunuz Kubernetes'te her katmanın sorumluluğu sizdedir: kontrol düzlemi yedekleme, sürüm yükseltme, sertifika yenileme, ağ eklentisi seçimi. GKE'de bu başlıkların büyük bölümü hazır gelir; karşılığında Google Cloud'a bağlı bir hizmet kullanırsınız.
Diğer bulutların yönetilen Kubernetes hizmetleri de benzer bir iş bölümü sunar. Kubernetes arayüzü standart olduğu için manifestler büyük ölçüde taşınabilir; yine de ağ, depolama sınıfı ve kimlik entegrasyonu gibi bulut sağlayıcıya özgü kısımlar değişir.
Başlarken dikkat edilecekler
- Küme ve düğüm yapılandırmasını elle tıklamak yerine altyapı kodu ile tanımlamak tekrarlanabilirlik sağlar.
- Pod'larda kaynak istek ve sınırları tanımlanmazsa hem maliyet hem kararlılık sorun çıkarır, özellikle Autopilot'ta faturalama bu taleplere bağlıdır.
- Yetkileri en düşük gereken seviyede tutun; iş yüklerine geniş proje yetkisi vermekten kaçının.
- Kullanılmayan kümeleri ve düğüm havuzlarını kapatın; maliyet izlemesini baştan kurun.
- Hızlı değişen özelliklerde resmî Google Cloud belgesini esas alın.
Bu konuyu Mindset programlarında nerede çalışırsınız?
Google Kubernetes Engine (GKE) İşletimi programı, "GKE Mimarisi ve Küme Modları", "Autopilot ile İşletim", "Standard Mod ve Düğüm Yönetimi" ve "Kimlik, Yetki ve Güvenlik" gibi modüllerle bu hizmetin işletme tarafını ele alır. Google Cloud Platform Temelleri programı ise hesaplama, ağ ve kimlik başlıklarıyla zemin oluşturur.
Bulut ve DevOps ekipleri, Kubernetes bilgisini Google Cloud ortamına taşıyacak mühendisler ve platform ekipleri için uygundur. Kubernetes temeli yoksa Kubernetes ile Orkestrasyon programı önce alınabilir.
İlgili Mindset programı
Google Kubernetes Engine (GKE) İşletimi
Sık sorulan sorular
GKE ücretsiz mi?
GKE kullanımı ücretlendirilir; kapsam ve fiyatlandırma modeli Google Cloud tarafından belirlenir ve zaman içinde değişir. Tutarlar için sayfada rakam verilmez. Hangi modda hangi kalemin faturalandığını kümeyi kurmadan önce Google Cloud'un resmî fiyatlandırma sayfasından kontrol etmek gerekir.
GKE bilmek için Kubernetes bilmek gerekir mi?
Evet, temel Kubernetes bilgisi gerekir. GKE kümenin altyapısını yönetir ama Pod, Deployment, Service ve Ingress gibi nesneleri yine sizin yazmanız gerekir. Kubernetes kavramlarını öğrenmek GKE'ye geçişi kolaylaştırır; sağlayıcıya özgü kısımlar ise ek olarak çalışılır.
Autopilot mu Standard mı seçmeliyim?
Düğüm yönetimine ayıracak zamanınız azsa ve iş yükünüz standart ise Autopilot operasyon yükünü azaltır. Özel donanım, düğüm düzeyinde ayar ya da belirli bir makine yapılandırması gerekiyorsa Standard daha esnektir. Karar verirken güncel sınırlamaları Google belgesinden kontrol edin.
GKE ile Docker aynı şey midir?
Hayır. Docker konteyner imajı oluşturmak ve çalıştırmak için kullanılan araçtır. GKE ise bu konteynerleri birçok makinede çalıştıran, ölçekleyen ve izleyen Kubernetes kümesini sunan bir hizmettir. Sıklıkla imaj Docker ya da benzeri araçla üretilir, GKE'de çalıştırılır.
İlgili rehberler
İlgili eğitimler
Kategori: DevOps ve Bulut Teknolojileri