Blog Yazısı
Kubernetes Temelleri: Pod ve Servis Yönetimi
Kubernetes (K8s) temelleri: Pod, Deployment, Service ve Ingress yapılarını kullanarak konteyner orkestrasyonunu nasıl yönetebileceğinizi öğrenin.
Sponsorlu
Kubernetes container çalıştırmanın ötesinde bir orkestrasyon platformudur. Pod oluşturmak kolaydır; zor olan yeniden başlatma, ölçekleme, config değişimi, trafik yönlendirme ve healthcheck davranışlarını doğru tasarlamaktır.
Pod
Pod Kubernetesin en küçük çalışma birimidir. Genellikle bir uygulama containerı içerir ve geçici kabul edilmelidir. Pod silinebilir, yeniden oluşturulabilir ve IP adresi değişebilir. Bu yüzden kalıcı state pod içine yazılmamalıdır.
Deployment
Production ortamında doğrudan Pod oluşturmak yerine Deployment kullanılır. Deployment istenen replica sayısını korur, rolling update yapar ve rollback imkanı sağlar. Yeni sürüm geçişlerinde kontrollü dağıtım için temel yapıdır.
Service ve Ingress
Service, değişen pod IPleri yerine sabit erişim noktası sağlar. Ingress ise HTTP trafiğini domain ve path kurallarına göre servislere yönlendirir. TLS sonlandırma ve dış trafik yönetimi bu katmanda ele alınır.
Config ve probe
ConfigMap gizli olmayan ayarlar, Secret hassas değerler için kullanılır. Readiness trafiğe hazır olmayı, liveness prosesin yaşayıp yaşamadığını gösterir. Yanlış liveness ayarı geçici sorunları restart döngüsüne çevirebilir.
Sonuç
Kubernetesi etkili kullanmak YAML ezberlemekten çok çalışma modeli kurmayı gerektirir. Pod geçici, Deployment yönetici, Service sabit erişim noktası, Ingress dış kapıdır. Bu sınırlar doğru kurulursa sistem daha dayanıklı olur.
Pratik uygulama notu
Kubernetes yapılandırması yazarken localde çalışan containerın productionda aynı davranmayacağını varsaymak daha güvenlidir. Resource limitleri, probe süreleri, secret mountları ve network policy kararları gerçek trafik altında test edilmelidir. Özellikle readiness ayarı yanlışsa uygulama hazır olmadan trafik almaya başlayabilir.