Nedir bu Kubernetes !
Kısaca konteynerların orkestrasyonunu sağlayan açık kaynaklı bir sistemdir.
Kubernetes, açık kaynaklı bir konteyner orkestrasyon platformudur. Konteynerler, uygulama bileşenlerini ve bağımlılıklarını taşıyan hafif, taşınabilir ve izole edilmiş ortamlardır. Kubernetes, bu konteynerlerin dağıtımını, yönetimini, ölçeklenmesini ve izlenmesini otomatikleştirir.
Kubernetes'in başlıca işlevleri şunlardır:
-
Konteyner Yönetimi: Kubernetes, birden çok konteyneri bir arada çalıştırmak ve yönetmek için kullanılır. Konteynerlerin hangi makinelerde çalıştığını, durumlarını, kaynak kullanımını izler.
-
Yük Dengeleme: Uygulama trafiğini düzgün bir şekilde yönlendirmek için konteynerler arasında yük dengelemesi sağlar.
-
Otomatik Ölçeklendirme: Yük arttıkça veya azaldıkça konteyner sayısını otomatik olarak artırabilir veya azaltabilir.
-
Kendi Kendini İyileştirme: Eğer bir konteyner arızalanırsa, Kubernetes otomatik olarak yeni bir tane başlatarak uygulamanın kesintisiz çalışmasını sağlar.
-
Hizmet Keşfi ve Yönlendirme: Kubernetes, uygulama bileşenlerinin birbirini keşfetmesini ve doğru şekilde iletişim kurmasını sağlar.
-
Durum Yönetimi: Kubernetes, bir uygulamanın belirli bir durumda çalışmasını sağlar ve uygulama durumu bozulduğunda yeniden başlatabilir.
Kubernetes Bileşenleri
- Pod: Kubernetes'teki en küçük dağıtım birimi olan pod, bir veya daha fazla konteyneri barındırabilir.
- Node: Konteynerlerin çalıştığı fiziksel veya sanal makineler.
- Deployment: Uygulamaları otomatik olarak dağıtmak ve güncellemek için kullanılan bir yönetim aracıdır.
- Service: Pod'lara ağ üzerinden erişim sağlayan soyut bir yapıdır.
- Ingress: Dış dünya ile Kubernetes içindeki hizmetler arasında HTTP(S) trafiğini yönlendirmek için kullanılır.
Kubernetes, bulut ortamlarında ve çok sayıda konteyneri yönetmeniz gereken büyük ölçekli sistemlerde çok kullanışlıdır. Hem geliştiricilerin hem de operasyon ekiplerinin uygulama ve hizmetlerini daha kolay ve güvenilir bir şekilde yönetmelerine olanak tanır.