June 24, 2026
الأعمدة الثلاثة الأساسية في Kubernetes ⚙️🧩
دايماً بحاول أفهم الـ Architecture لأي حاجة بستخدمها، وفي مفهوم يعتبر هو السر الحقيقي وراء نجاح وانتشار Kubernetes.
عشان نفهم ده لازم نعرف إن Kubernetes في بدايته كان بيحاول يعمل كل حاجة بنفسه (الكود بتاعه كان جواه تفاصيل دوكر، وشبكات جوجل، وتخزين AWS) والنتيجة؟ الكود تقيل وصعب التحديث.
لحد ما Kubernetes غير استراتيجيته تماماً وقرر يبقى "مجرد مدير" (Orchestrator)، وعمل 3 واجهات Interfaces رئيسية وقال للشركات التانية: "أنا هحط المعايير، وأنتم اصنعوا الفيشة اللي تركب عندي".
ودول الأعمدة الثلاثة الأساسية في Kubernetes:

1️⃣ واجهة التشغيل | CRI (Container Runtime Interface) 🐳
Kubernetes نفسه مابيعرفش يشغل كونتينرز! هو محتاج برنامج تاني (Runtime).
💡 مفارقة تاريخية سريعة: أول ما Kubernetes طلع، كان الكود بتاعه مفصل على مقاس Docker ولما حبوا يتوسعوا، عملوا الـ CRI. المفارقة إن Docker نفسه وقتها مكنش بيدعم الـ CRI! فـ Kubernetes عمل كود وسيط اسمه (dockershim) عشان يترجمله. ولما شالوا الكود ده في 2022، الناس اتخضت وافتكرت إن "Kubernetes بطل يدعم docker"، بس الحقيقة إنه كان بيقول للكل: "التزموا بمعيار الـ CRI". عشان كده دلوقتي بقى يفضل نستخدم containerd أو CRI-O لأنهم بيدعموا الـ CRI بشكل مباشر وأخف بكتير.
2️⃣ واجهة الشبكات | CNI (Container Network Interface) 🌐
إزاي البودز بتاخد IP وتكلم بعض؟ Kubernetes ملهوش دعوة هو بيستخدم الـ CNI عشان ينادي على مهندس الشبكات ويقوله: "في بود جديد قام، اديله IP ووصله بالشبكة".
💡 أمثلة: Calico, Flannel, و Cilium. كل دول برامج بتتصطب فوق Kubernetes وتدير الشبكة بناءً على معايير الـ CNI.
3️⃣ واجهة التخزين | CSI (Container Storage Interface) 💾
Kubernetes مبيعرفش يكلم AWS أو NetApp مباشرة. الـ CSI هو المعيار اللي بيخلي أي شركة تخزين تبرمج (Driver) يركب في Kubernetes، عشان يقدر يقوله: "اقطعلي جزء من الـ storage وخصصلي منها 10 جيجا واربطها بالبود دي".
💡 أمثلة: Amazon EBS, Portworx, Ceph (Rook).
طب هل في معايير تانية غير ديه؟
طبعاً! فلسفة Kubernetes إن كل حاجة تنفصل وتبقى "Pluggable"، ومن أهمهم:
- ☁️ CPI (Cloud Provider Interface): المعيار اللي بيخلي أي Cloud Provider (زي AWS, Azure) تركب Controller يترجم أوامر Kubernetes لأوامر الـ Cloud Provider.
- 📦 OCI (Open Container Initiative): ده "معيار شكل الـ Image" اللي بيضمن إن الـ Image اللي اتعملت بـ Docker، يقدر containerd يقرأها وأي Container Runtime غيره.
- 🚦 SMI (Service Mesh Interface) & Gateway API: دي معايير أحدث للشبكات المتقدمة. الـ SMI بيوحد إزاي نتعامل مع الـ Service Meshes (زي Istio و Linkerd). والـ Gateway API هو الجيل الجديد اللي جاي يحل محل الـ Ingress العادي، ويوحد التعامل مع الـ Routers والـ Load Balancers المعقدة.
الخلاصة: Kubernetes ذكي جداً، حط قواعد وساب الـ Developers community والشركات يتنافسوا مين يعمل أحسن أداة تلعب بالقواعد دي!