Skip to content

Latest commit

 

History

History
9 lines (5 loc) · 1.47 KB

controller.md

File metadata and controls

9 lines (5 loc) · 1.47 KB

Kubernetes'te "controller" kavramı, bir kaynağın belirli bir durumunu korumak ve istenen duruma getirmek için sorumludur. Temelde, belirli bir Kubernetes nesnesini (örneğin, bir Pod, Service veya ReplicaSet) izleyen ve bu nesnenin belirli bir durumunu sürdürmek için işlemler gerçekleştiren bir bileşendir.

Bir controller, Kubernetes cluster'ında döngüsel bir yapıda çalışır. Bu döngüde, controller sürekli olarak belirli bir kaynağın (örneğin, bir Pod'un) gerçek durumunu izler ve belirli bir istenen duruma ulaşmak için gerekli eylemleri gerçekleştirir.

Örneğin, bir ReplicaSet controller'ı, belirli bir Pod'un istenen sayıda kopyasını çalışır durumda tutmak için çalışır. Eğer belirli bir Pod'un sayısı azalırsa, controller yeni Pod kopyalarını oluşturabilir; eğer fazla ise, gereksiz kopyaları kaldırabilir. Bu şekilde, belirli bir ReplicaSet'in istenen durumunu korur.

Bir başka örnek olarak, bir Deployment controller'ı, belirli bir uygulamanın belirli bir versiyonunun çalışma durumunu sağlamak için çalışır. Deployment nesnesi üzerinde yapılan değişiklikler (örneğin, yeni bir versiyonun dağıtılması veya bir güncellemenin geri alınması) Deployment controller tarafından izlenir ve gerektiğinde ilgili Pod'ların yeniden dağıtımını gerçekleştirir.

Bu şekilde, controller'lar Kubernetes'teki kaynakların durumunu yönetmek, istenen duruma ulaşmak ve bu durumu korumak için önemli bir rol oynarlar.