Kubernetes Architecture
الصورة الكبيرة
Section titled “الصورة الكبيرة”Kubernetes يتكون من جزأين رئيسيين:
- Control Plane: العقل الذي يقرر ويدير الحالة.
- Worker Nodes: المكان الذي تعمل عليه التطبيقات فعليا.
User |kubectl |kube-apiserver |Control Plane |-- etcd |-- scheduler |-- controller-manager |Worker Nodes |-- kubelet |-- container runtime |-- Podskube-apiserver
Section titled “kube-apiserver”هو البوابة الرئيسية لـ Kubernetes. أي أمر kubectl يذهب غالبا إلى API Server.
قاعدة بيانات تحفظ حالة الـ Cluster. مثلا: ما الـ Deployments الموجودة؟ كم نسخة مطلوبة؟ ما الـ Services؟
scheduler
Section titled “scheduler”يقرر أي Node سيشغل Pod جديد، بناء على الموارد والقيود.
controller-manager
Section titled “controller-manager”يراقب الحالة المطلوبة ويصلح الفرق. مثلا لو Deployment يريد 3 Pods ووجد 2 فقط، يبدأ إنشاء Pod جديد.
kubelet
Section titled “kubelet”Agent يعمل على كل Node. يستقبل التعليمات ويتأكد أن Pods تعمل على ذلك Node.