آلان زيشيك | كاتب أول | 5 سبتمبر 2025
تُعد Kubernetes منصة مفتوحة المصدر لإدارة التطبيقات الكبيرة جدًا التي تتضمن أعدادًا كبيرة من الخدمات المحفوظة في حاويات. تم تطوير Kubernetes من مهندسي Google عام 2014 وتم إصدارها باعتبارها منصة مفتوحة المصدر بعد ذلك بوقت قصير، وهي الآن منظومة منتعشة يدعمها كل موفر خدمة سحابية تقريبًا. يمكن استخدام Kubernetes لإدارة تطبيقات السحابة الأصلية التي تم إنشاؤها باستخدام الخدمات الصغيرة بالإضافة إلى التطبيقات التقليدية التي تعمل محليًا أو عبر السحابة.
يأتي جزء من قوة Kubernetes في الأتمتة الخاصة بها—يمكنها أن تقلل بشكل كبير من حمل العمل المطلوب لإدارة التطبيقات عبر الشبكة.
يُعد Kubernetes نظام مفتوح المصدر لنشر التطبيقات المحفوظة في حاويات وإدارتها وتوسيعها، وخاصةً التطبيقات السحابية الأصلية المكتوبة باستخدام الخدمات الصغيرة. في بعض الأحيان، يتم اختصار Kubernetes إلى K8s، ويسمح للمسؤولين بتجميع الحاويات معًا لتسهيل إدارتها.
ماذا الذي تصنعه Kubernetes؟ تبدأ بنشر الحاويات التي تحتوي على تطبيق كامل أو مكون من التطبيق، وتُسمى غالبًا الخدمة. يتم نشر هذه الحاويات على الخوادم، والتي يمكن أن تكون عبر السحابة، أو محليًا، وموزَّعة عبر العديد من السحابات في تكوين السحابة المتعددة، أو في تكوين سحابي/محلي مُختلط.
بمجرد نشر الحاويات، توفر Kubernetes الاكتشاف، مما يتيح لتطبيق أو خدمة العثور على الخدمات التي تحتاجها من حاويات أخرى. توجِّه Kubernetes حركة المرور إلى المورد الصحيح تحت سيطرتها. إذا كان النظام يشغِّل نسخ متعددة من تطبيق أو خدمة في حاويات، لاستيعاب الطلب المرتفع عادةً، توازن Kubernetes الحمل تلقائيًا.
يأتي جزء من قوة Kubernetes في أنه يمكنه تجميع الحاويات معًا بطرق منطقية للنشر. على سبيل المثال، يمكن أن تجمع معًا عدة حاويات تشترك في نفس التخزين والشبكة في وحدة صغيرة—هذه كلمة تراها كثيرًا. ترى أيضًا مراجع لعقد Kubernetes. تُعد هذه آلات فردية، إما أنها خدمات مادية أو أجهزة افتراضية تقليدية تلك التي تحتوي على الحاويات. يُشار إلى مجموعة من العقد التي تشغِّل Kubernetes—أي مجموعة من الحاويات المادية أو الافتراضية—بأنها مجموعة.
بالنسبة إلى كل حاوية ووحدة صغيرة وعقدة ومجموعة، تدير Kubernetes موارد التخزين، وتكتشف الحاويات الفاشلة وتعيد تشغيلها، وهي عملية تسمى "الإصلاح"، حتى تنفيذ بروتوكولات الأمان عبر تطبيق موزّع. يمكن تكوينها للتعامل مع كلمات المرور ورموز الأمان ومفاتيح التشفير، مما يسهِّل حماية الأصول المهمة.
يشرف على تطوير منصة Kubernetes مؤسسة الحوسبة السحابية الأصلية (CNCF) .
تحل الحاويات غالبًا محل نموذج مُختلف لنشر السحابة: الأجهزة الافتراضية (VM). تتميز الحاويات بخفة وزنها أكثر من أجهزة VM لأنها تستخدم نظام التشغيل الأساس الخاص بالخادم المضيف وبرامج تشغيل الأجهزة. على النقيض من ذلك، تكون أجهزة VM أكبر وتتطلب المزيد من موارد المعالجة لأن كل جهاز يحتوي على نظام تشغيل خاص به. لذلك، يمكن للخادم تشغيل حاويات أكثر من الأجهزة الافتراضية، والأهم من ذلك، يمكنه تخصيص المزيد من موارد المعالج والذاكرة لتشغيل التطبيقات بدلاً من الحفاظ على مثيلات نظام تشغيل مُتعددة—واحدة لكل جهاز افتراضي. على الرغم من وجود حالات مُتخصصة تتطلب الأجهزة الافتراضية، إلا أن الحاويات تقدم نموذجًا أكثر كفاءة بكثير لمعظم عمليات نشر تطبيقات السحابة.
على الرغم من ارتباط Kubernetes والحاويات، إلا أنها تعد أفضل التقنيات التكميلية. تُعد Kubernetes منصة لإدارة الحاويات التي تُستخدم غالبًا لعمليات النشر واسعة النطاق التي يتم ترقيمها في مئات أو آلاف الحاويات. تضع الحاويات نفسها جميع التعليمات البرمجية والتبعيات اللازمة لتحقيق إمكانية—سواء كانت خدمة صغيرة أو تطبيق كامل—في تنسيق قابل للتنفيذ واحد.
تُعد Kubernetes أداة لإدارة العديد من الحاويات في وقت واحد، وعبر السحابة عادةً. يُشار إلى Kubernetes أحيانًا باسم نظام تشغيل السحابة، ويتيح للمؤسسات إدارة الحاويات على نطاق واسع.
النقاط الرئيسة
تُعد Kubernetes منصة تؤتمت نشر الحاويات وتوسيع نطاقها وإدارتها. يحتوي Kubernetes أيضًا على إمكانات لإصلاح الحاويات—أي اكتشاف وقت حدوث خلل فيها ثم إصلاحها. يدور Kubernetes حول التنسيق: مثل قائد الأوركسترا السيمفوني الذي يوجِّه الموسيقيين، فهو يعرف ما يجب القيام به، ويحتفظ بجميع الحاويات في مكانها ويعمل بشكل صحيح، ويتصرف إذا حدث خطأ ما.
ويعمل قائد الأوركسترا السيمفوني من مقطوعة موسيقية تتطلب بيانو وكمان وبعض آلات التشيلو وقسم آلات نحاسية، كذلك يكون لدى Kubernetes مستند يشرح الحالة المطلوبة لحاويات التطبيق. يصف هذا المستند، الذي يُسمى ملف التكوين الوظائف المطلوبة لجعل التطبيق يعمل ويحدد الحاويات التي يمكنها توفير هذه الوظائف. كما يسرد ملف التكوين الخوادم وأجهزة التخزين والشبكات والأجهزة المادية الأخرى المُتاحة لحاويات التطبيق.
عند تشغيل تطبيق، يحمِّل Kubernetes الحاويات اللازمة على الخوادم المُتاحة وفقًا إلى ملف التكوين، ثم يبدأ تشغيل البرنامج داخل تلك الحاويات. يراقب استخدام الموارد لكل خادم (أو العقدة)، مع التأكد من عدم وجود حمل زائد على الأنظمة. إذا كانت كذلك، فإنه ينقل الحاويات إلى خادم أقل حملاً عن طريق بدء حاوية جديدة ثم إيقاف الحاوية القديمة. إذا كانت الحاوية نفسها مُحملة بشكل زائد، يبدأ Kubernetes نسخة مُتطابقة من تلك الحاوية على خادم مُختلف ويهيئ موازن التحميل تلقائيًا لتقسيم حمل العمل بينهما. مع زيادة الطلب، يبدأ حاوية ثالثة، وهكذا حسب الحاجة. في وقت لاحق، إذا انخفض حمل العمل، يوقف Kubernetes أي حاويات غير ضرورية للمساعدة في تقليل التكاليف وتحرير موارد الخادم للمهام الأخرى.
عند فشل الحاوية، يبدأ Kubernetes بسرعة تشغيل حاوية جديدة على خادم آخر ويعيد توجيه حركة مرور الشبكة بعيدًا عن منطقة المشكلة، مما يوفر تجاوزًا سريعًا للفشل.
تخيل أن لديك تطبيقًا يتطلب مئات الحاويات أو آلاف منها، يقدم كل منها الخدمات التي يحتاجها التطبيق. يمكن لمسؤولي الأنظمة نشر الحاويات وإدارتها يدويًا، ربما بمساعدة أدوات الأتمتة لمهام مُحددة مثل موازنة الأحمال أو اكتشاف الأخطاء. بل توجد أدوات لإدارة الحاويات في عمليات النشر على نطاق صغير. يستخدمها مطورو البرامج وفِرق DevOps غالبًا عند إنشاء البرامج المحفوظة في حاويات واختبارها.
مع ذلك، ودون نظام تنسيق أكثر اكتمالاً، تصبح متطلبات إدارة النظام في نهاية المطاف هائلة.
يكمن جمال Kubernetes في أنها منصة واحدة تتعامل مع مهام الأتمتة من نشر الحاويات إلى توسيع نطاقها وصولاً إلى معالجة الأخطاء. بالإضافة إلى ذلك، يعد Kubernetes مصدرًا مفتوحًا ومدعومًا على نطاق واسع، بما في ذلك من كل مزود سحابة رئيس. باختصار، إنه في كل مكان. يجعل ذلك Kubernetes النظام المُفضل لإدارة تطبيق مؤسسي كبير موضوع في حاويات.
عندما تقرر المؤسسة وضع تطبيقاتها في حاويات، فإن اعتماد Kubernetes لتنسيق هذه الحاويات أمر منطقي—خاصةً بالنظر إلى المكاسب المتنوعة.
اختار مهندسو Google الذين أنشأوا Kubernetes الاسم بناءً على كلمة يونانية قديمة للطيار أو ربان السفينة—الشخص الذي يقود السفينة—لأنه يتحرك ويدير أسطولاً من الحاويات. وهو يشبه إل حد كبير سفينة حاويات فعلية، إذ يعتمد Kubernetes على العديد من المكونات التي تعمل معًا للوصول إلى حمولة بياناته أينما كانت. هذه هي المصطلحات التي تواجهها عادةً في المناقشات حول الحاويات ومنصة تنسيق Kubernetes.
إن Kubernetes ليس مجرد منصة لإدارة الحاويات، بل هي أداة تنسيق مُتطورة تؤتمت دورة حياة التطبيق بأكملها وتبسطها، بدءًا من التصميم إلى النشر وحتى الاستخدام في الإنتاج. تساعد مجموعة الميزات القوية الخاصة به في إدارة التطبيقات المُعقدة والموزَّعة بكفاءة. فيما يلي بعض الميزات الرئيسة لـ Kubernetes:
في حين تم تطوير Kubernetes على مدار سنوات عديدة، إلا أنه يتضمن منحنى تعلم حاد. مع ذلك، فمن الأفضل بكثير أن تأخذ الوقت الكافي لمعرفة Kubernetes بدلاً من استخدام أساليب أخرى لإدارة التطبيقات الكبيرة الموزَّعة. فيما يلي بعض التحديات التي يجب مراعاتها:
تستخدم المؤسسات نظام Kubernetes للعديد من أنواع التطبيقات؛ تجدها في التجارة الإلكترونية والتصنيع والبحث والإدارة المالية والمرافق—في كل صناعة بشكل أساس. يمكن للعديد من التطبيقات الموزَّعة الكبيرة التي تستخدم الحاويات الاستفادة من تنسيق Kubernetes وأتمتته. فيما يلي بعض السيناريوهات الشائعة التي يمكن أن يتألق فيها Kubernetes حقًا.
يمكن أن يكون نقطة تلاقي Kubernetes مع الذكاء الاصطناعي تحويلية للأعمال، إذ يمكن أن تلعب Kubernetes دورًا محوريًا في إدارة أحمال عمل الذكاء الاصطناعي وتنسيقها في السحابة. على وجه الخصوص، توفر Kubernetes منصة قوية ومرنة لتدريب الذكاء الاصطناعي ونشره، مما يوفر العديد من المزايا التالية:
أدى الاعتماد الواسع النطاق لـ Kubernetes في العقد الماضي إلى ظهور منظومة مُزدهر من الأدوات والخدمات والتقنيات الداعمة. تعزز هذه المنظومة أيضًا إمكانات Kubernetes، مما يوفر للمؤسسات خيارات مُتنوعة لتخصيص ممارسات البنية التحتية والتطوير الخاصة بها. تشمل الفئات الرئيسة في هذه المنظومة ما يلي:
لن تكتمل أي مناقشة لمنظومة لـ Kubernetes دون ذكر KubeCon، وهو المؤتمر السنوي لمطوري Kubernetes ومستخدميه الذي تستضيفه مؤسسة الحوسبة السحابية الأصلية (CNCF). منذ انعقاد أول مؤتمر KubeCon عام 2015 وبحضور 500، تطور الحدث بشكل كبير. عام 2024، استقطب مؤتمر Salt Lake City أكثر من 9000 مطور ومهندس.
يمكن لأفضل الممارسات لـ Kubernetes أن تملأ كتابًا—وتمت كتابة الكثير منها في الواقع. لا ترتكب الأخطاء: يكون Kubernetes مُعقدًا. مع ذلك، يمكن أن يساعد اتباع أفضل الممارسات هذه الشركات في الاستفادة من هذه المنصة بنجاح.
تُعد OCI Kubernetes Engine (OKE) خدمة لتنسيق الحاويات تديرها Oracle والتي يمكن أن تقلل من الوقت والتكلفة اللازمة لإنشاء تطبيقات السحابة الأصلية. تساعد OKE في تبسيط عمليات Kubernetes على مستوى المؤسسة على نطاق واسع، مما يتيح لك نشر أحمال العمل كثيفة الموارد وإدارتها بسهولة، مثل الذكاء الاصطناعي، مع التوسُّع التلقائي والتصحيح والترقيات. يوفر OKE ما يلي:
أحدثت قدرة منصة Kubernetes على تنسيق نشر التطبيقات وإدارتها وأتمتتها ثورة في طريقة تشغيل التطبيقات في عصر السحابة الأصلية. مع استمرار تطور Kubernetes واكتساب الزخم، أصبح الأمر أهم. يمكن للشركات التي تعتمد Kubernetes اكتساب ميزة تنافسية ملحوظة، لذا فإن فهم هذه التكنولوجيا أمر حيوي للمطورين وقادة الأعمال على حد سواء.
تُعد Kubernetes مهمة للتطوير الأصلي للسحابة—وهو أمر أساس للتطبيقات الأكثر مرونة وقابلية للتوسع ومرونة، سواء التي تعمل عبر السحابة أو محليًا أو في نموذج مختلط أو متعدد السحابات.
لماذا يُعد Kubernetes مكونًا بالغ الأهمية في إستراتيجية السحابة المؤسسية؟
تعد Kubernetes أمرًا بالغ الأهمية لأنها طريقة نشر المؤسسات لتطبيقاتها الموزَّعة وتوسيع نطاقها وإدارتها، خاصةً تلك التي تعمل عبر السحابة. تُحسِّن أتمتة Kubernetes من موثوقية التطبيق مع تعزيز استخدام الموارد، وبالتالي؛ تقليل التكاليف.
ما العوامل الرئيسة التي يجب على المؤسسات مراعاتها عند اعتماد Kubernetes على نطاق واسع؟
يوجد عاملين رئيسين يجب مراعاتهما. يكون الأول في الاستعداد التنظيمي: هل مهندسونك ومطوروك مستعدون لهذا النموذج من تطوير التطبيقات ونشرها؟ بينما الآخر فني: هل لديك النهج البنيوي الصحيح لتصميم Kubernetes ونشره والحاويات بطريقة آمنة ومستقرة ومُتوافقة مع متطلبات الحوكمة؟
ما اعتبارات التكلفة الرئيسة للمؤسسات التي تعمل على Kubernetes على نطاق واسع؟
يمكن أن تساعد Kubernetes في تقليل التكاليف من خلال زيادة استخدام موارد السحابة إلى أقصى حد ومن خلال تحرير الموارد مثل الخوادم والتخزين عندما لا توجد حاجة إليها. مع ذلك، توجد تكاليف مُتضمنة في التدريب والأدوات وتحسين نماذج الشبكة والتطبيقات للاستفادة الكاملة من الموارد المتاحة.
كيف يمكن للمؤسسات ضمان الانتقال السلس إلى Kubernetes من البنية التحتية التقليدية؟
إنه تحول كبير! ابدأ بتقديم Kubernetes لتطبيق صغير قد يكون قيد التشغيل بالفعل في حاوية واحدة أو عدد قليل نسبيًا. فكِّر في البدء بخدمة Kubernetes تستند إلى السحابة والتي تدير مستوى البيانات نيابة عنك بدلاً من محاولة التعرُّف على جميع العناصر المختلفة ونشرها وتشغيلها بنفسك. جرِّب الترقيات وإلغاء التعديلات والمراقبة وحالات الفشل المتعمدة والمزيد لمساعدة فريقك في اكتساب الخبرة اللازمة لمعالجة المشروعات الأكبر، مثل إعادة الهيكلة من تطبيق أحادي إلى تطبيق قائم على الخدمات الصغيرة.