ما هو تنسيق الحاويات؟

 22 أكتوبر 2024

المؤلفون

Ian Smalley

Senior Editorial Strategist

ما هو تنسيق الحاويات؟

تنسيق الحاويات هو عملية مؤتمتة تشمل توفير ونشر وتوسعة وإدارة دورة حياة التطبيقات المعتمدة على الحاويات. يستخدم المطورون تنسيق الحاويات لتبسيط سير العمل في بيئات مرنة أو مهام عمليات التطوير، مما يوفر المرونة والسرعة اللازمتين لدعم بنى السحابة المتعددة الهجينة الحديثة.

يُعد Kubernetes اليوم المنصة الأكثر شيوعًا لتنسيق الحاويات، وتوفر غالبية مزوّدي الخدمات السحابية الرائدين — مثل Amazon Web Services (AWS) وGoogle Cloud Platform وIBM Cloud وMicrosoft Azure — خدمات Kubernetes مُدارة. ومن الأدوات الأخرى لتنسيق الحاويات Docker Swarm و Apache Mesos.

منظر جوي للطرق السريعة

كن مطلعًا على آخر أخبار السحابة


احصل على نشرة Think الإخبارية الأسبوعية للحصول على إرشادات الخبراء حول تحسين الإعدادات متعددة السحابة في عصر الذكاء الاصطناعي.

لماذا تحتاج الحاويات إلى التنسيق؟

الحاويات عبارة عن عناصر خفيفة الوزن وقابلة للتنفيذ تجمع بين التعليمات البرمجية المصدرية وجميع مكتبات نظام التشغيل (OS) والاعتماديات اللازمة لتشغيل التعليمات البرمجية في أي بيئة. 

رغم أن القدرة على إنشاء الحاويات موجودة منذ عقود، إلا أنها أصبحت متاحة على نطاق واسع عام 2008 عند تضمين وظائف الحاويات داخل نواة Linux. واكتسبت أهمية مضاعفة بعد إطلاق منصة النقل بالحاويات Docker مفتوحة المصدر في عام 2013. (أصبحت Docker شائعة جدًا لدرجة أن مصطلحي "حاويات Docker" و"الحاويات" يُستخدمان بالتبادل.) واليوم، أصبحت الحاويات متوافقة مع العديد من أنظمة التشغيل الأخرى إلى جانب Linux، بما في ذلك Windows.

ونظرًا لكونها أصغر حجمًا، وأكثر كفاءة في استهلاك الموارد، وأكثر قابلية للنقل من الأجهزة الافتراضية (VMs)، أصبحت الحاويات — خصوصًا تلك القائمة على الخدمات المصغّرة أو الوظائف بدون خوادم — وحدة المعالجة الفعلية في تطبيقات السحابة الأصلية الحديثة.

في الأعداد الصغيرة، يمكن نشر الحاويات وإدارتها يدويًا بسهولة. لكن في المؤسسات الكبيرة، أصبحت التطبيقات المعتمدة على الحاويات واسعة النطاق، مما يجعل التنسيق ضرورة.

فعلى سبيل المثال، لا يمكن تشغيل سلاسل التكامل والتسليم المستمر (CI/CD) أو عمليات التطوير بدون تنسيق الحاويات، الذي يُؤتمت المهام التشغيلية المرتبطة بنشر وتشغيل التطبيقات والخدمات المعتمدة على الحاويات.

في دراسة أجرتها شركة IBM، يستخدم 70% من المطورين المشمولين بالاستطلاع أدوات تنسيق الحاويات، وأفاد 70% من هؤلاء المطورين الذين يستخدمون الأدوات أنهم يستخدمون خدمة تنسيق الحاويات المُدارة عبر السحابة داخل مؤسساتهم.

كيف يعمل تنسيق الحاويات؟

تتكون بنية تنسيق الحاويات من تشغيل مجموعات حاويات عبر أجهزة وبيئات متعددة. تتضمن كل مجموعة عادة عدة عُقد – تُعرف أيضًا بمثيلات الخوادم. تقوم العُقد العاملة بتشغيل الحاويات باستخدام بيئات تشغيل الحاويات مثل Docker. تُعد عُقد التحكم المنسق الرئيسي للمجموعة. يمكن للمستخدمين إدارة ومراقبة أحمال التشغيل المعتمدة على الحاويات باستخدام أدوات مزوّدة بواجهة برمجة التطبيقات (API) وواجهات المستخدم الرسومية (GUIs).

رغم وجود فروقات في الأساليب والقدرات بين المنصات والأدوات، إلا أن تنسيق الحاويات يُنفّذ في الأساس من خلال ثلاث خطوات رئيسية (تشكّل حلقة دورية عند تضمينها في سير عمل المرن أو عمليات التطوير).

  1. التزويد
  2. عملية النشر
  3. إدارة دورة الحياة

1. التوفير (Provisioning):

تدعم معظم أدوات تنسيق الحاويات نموذج التكوين التصريحي. في هذا النموذج، يكتب المطوّر ملف تكوين (بصيغة YAML أو JSON، حسب الأداة) يُحدد فيه الحالة المطلوبة للتطبيق. تستخدم أداة التنسيق الذكاء المدمج فيها لتحقيق تلك الحالة تلقائيًا. عادةً ما يتضمن ملف التكوين ما يلي:

  • تحديد صور الحاويات التي يتكون منها التطبيق، ومواقعها (في أي سجل حاويات).
  • تهيئة الحاويات باستخدام التخزين والموارد الأخرى.
  • تحديد وتأمين اتصالات الشبكة بين الحاويات.
  • تحديد إصدار التطبيق (مثل الطرح المرحلي أو الكَناري).

2. النشر

يتم جدولة نشر الحاويات ونسخها (Replicas) إلى مضيفات محددة لضمان المرونة والتحمّل. تختار أداة التنسيق أفضل مضيف استنادًا إلى الموارد المتاحة مثل وحدة المعالجة المركزية (CPU)، والذاكرة، أو متطلبات أخرى محددة في ملف التكوين.

3. إدارة دورة الحياة

بعد نشر الحاويات، تقوم أداة التنسيق بإدارة دورة حياة التطبيق المعتمد على الحاويات، استنادًا إلى ملف تعريف الحاوية (غالبًا ما يكون ملف Dockerfile).

تشمل مهام إدارة دورة الحياة ما يلي:

  • إدارة قابلية التوسعة (تصاعديًا وتنازليًا)، وموازنة الأحمال، وتخصيص الموارد بين الحاويات.
  • ضمان التوفّر والأداء عن طريق نقل الحاويات تلقائيًا إلى مضيف آخر عند حدوث انقطاع أو نقص في موارد النظام.
  • جمع بيانات السجل وبيانات القياس عن بُعد لتتبّع صحة التطبيق وأدائه.

شاهد هذا الفيديو للتعرّف عن كثب على كيفية عمل تنسيق الحاويات.

فوائد تنسيق الحاويات

تشمل الفوائد الأساسية لتنسيق الحاويات ما يلي:

  • الأتمتة
  • المرونة
  • الاستخدام الأمثل للموارد وتحسين الأداء
  • الكفاءة من حيث التكلفة
  • السرعة والمرونة
  • تحسين الأمن
  • زيادة الإنتاجية

الأتمتة

الميزة الرئيسية لتنسيق الحاويات هي الأتمتة، التي تقلل إلى حد كبير من الجهد اليدوي وتعقيد إدارة بيئات التطبيقات المعتمدة على الحاويات على نطاق واسع.

المرونة

تعمل حلول تنسيق الحاويات على تحسين المرونة عن طريق إعادة تشغيل الحاويات أو توسيع نطاقها عند فشلها. تساعد هذه القدرة على ضمان التوفر وزيادة مدة التشغيل.

تحسين استخدام الموارد والأداء

تساعد ميزات مثل اختيار المضيف المؤتمت وتخصيص الموارد على تحسين استخدام الموارد الحاسوبية. على سبيل المثال، يمكن لأداة التنسيق ضبط ذاكرة المعالجة والتخزين بناءً على احتياجات كل حاوية، مما يمنع التخصيص المفرط ويحسّن الأداء العام.

الكفاءة من حيث التكلفة

يؤدي تنسيق الحاويات إلى إلغاء الحاجة إلى التدخل اليدوي، مما يؤدي إلى خفض التكاليف التشغيلية. كما تستهلك الحاويات موارد أقل من الأجهزة الافتراضية (VMs)، مما يُقلل الحاجة إلى البنية التحتية لتكنولوجيا المعلومات ويخفض النفقات العامة.

السرعة والمرونة

تساعد أدوات تنسيق الحاويات على تسريع تطوير التطبيقات ونشرها، مما يوفر دعماً كبيرًا للعمليات السحابية الأصلية.

تحسين الأمن

تعزّز الحاويات الأمان من خلال عزل التطبيقات عن بعضها البعض وعن النظام المضيف، مما يُقلل نطاق الهجمات. تتضمن العديد من المنصات أدوات فحص مؤتمتة للثغرات الأمنية وتؤمّن سجلات الصور، مما يُعزز مستوى الحماية.

زيادة الإنتاجية

من خلال أتمتة العمليات التشغيلية، يدعم تنسيق الحاويات تطبيق منهجيات عمليات التطوير والأسلوب الرشيق. يتيح ذلك للفرق تطوير ونشر التطبيقات ضمن دورات سريعة ومتكررة، وإطلاق ميزات وقدرات جديدة بوتيرة أعلى.

أكاديمية الذكاء الاصطناعي

تحقيق جاهزية الذكاء الاصطناعي باستخدام التنقية السحابية الهجينة

وقد صُمم المنهج، الذي يقوده كبار قادة الفكر لدى IBM، لمساعدة قادة الأعمال على اكتساب المعرفة اللازمة لتحديد أولويات استثمارات الذكاء الاصطناعي التي يمكن أن تدفع عجلة النمو.

مزايا استخدام Kubernetes

طوّرت Google منصة Kubernetes وأطلقتها في عام 2014، لتصبح منذ ذلك الحين أحد أسرع مشاريع البرمجيات مفتوحة المصدر نموًا في التاريخ. تتولى مؤسسة Cloud Native Computing Foundation (CNCF) حاليًا الإشراف على صيانة Kubernetes. ومنذ انضمامه إلى CNCF في عام 2016، ارتفع عدد المساهمين في المشروع من 731 إلى أكثر من 8,000 مساهم.1

باستخدام أدوات النظام البنائي للحاويات الأخرى، يمكّن Kubernetes المؤسسات من بناء منصات كخدمة (PaaS) عالية الإنتاجية.يساعد نموذجالحوسبة السحابية فرق التطوير على التركيز على البرمجة والابتكار، دون الانشغال بإدارة البنية التحتية و يسهّل التعامل مع التحديات التشغيلية المرتبطة بتطوير التطبيقات السحابية الأصلية.

ويتميّز Kubernetes عن غيره من أدوات التنسيق بفضل وظائفه المتقدمة التي تشمل:

  • نشر الحاويات
  • عمليات الطرح
  • اكتشاف الخدمات
  • توفير مساحة التخزين
  • موازنة الأحمال وقابلية التوسع
  • الإصلاح الذاتي لضمان التوافر العالي
  • دعم وقابلية النقل عبر مزوّدي السحابة المتعددين
  • نظام بنائي مفتوح المصدر

نشر الحاويات

ينفذ Kubernetes نشر عدد معيّن من الحاويات على مضيف محدد، ويُبقيها في الحالة المطلوبة.

عمليات النشر المرحلي (Rollouts)

يعني "النشر المرحلي (Rollout)" أي تغيير يُجرى على النشر القائم.يتيح Kubernetes للمطورين بدء النشر، أو إيقافه مؤقتًا، أو استئنافه، أو التراجع عنه.

اكتشاف الخدمات

يستطيع Kubernetes كشف الحاويات تلقائيا على الإنترنت أو لحاويات أخرى باستخدام اسم نظام أسماء النطاقات (DNS) أو عنوان IP لاكتشاف الخدمات.

توفير مساحة التخزين

يمكن للمطورين إعداد منصة Kubernetes لزيادة مساحة التخزين المحلية الدائمة أو السحابية لحاوياتهم حسب الحاجة.

موازنة الأحمال وقابلية التوسع

عند ارتفاع حركة البيانات إلى حاوية، يستخدم Kubernetes موازنة الأحمال والتوسع التلقائي لتوزيع حركة البيانات عبر الشبكة، مما يساعد على ضمان الاستقرار والأداء. كما تُوفر هذه الإمكانية على المطورين إعداد موازن أحمال يدويًا.

الإصلاح الذاتي لضمان التوافر العالي

في حال فشل إحدى الحاويات، يستطيع Kubernetes إعادة تشغيلها أو استبدالها تلقائيًا. يمكنه أيضًا إزالة الحاويات إذا لم تستوفِ معايير التحقق من الصحة الخاصة بالمؤسسة.

الدعم وقابلية النقل عبر مزوّدي السحابة المتعددين

يحظى Kubernetes بدعم واسع من جميع مزوّدي الخدمات السحابية الرائدين. تُعد هذه الميزة ضرورية للمؤسسات التي تنشر تطبيقاتها عبر بيئة سحابية هجينة (تجمع بين السحابة العامة، والسحابة الخاصة، والبنية التحتية المحلية) أو في بيئة متعددة السُّحب، والتي تعتمد على خدمات سحابية من أكثر من مزوّد.

نظام بنائي مفتوح مصدر

يمتاز Kubernetes بامتلاكه منظومة مفتوحة المصدر غنية بالأدوات التي تعزز قدراته، خصوصًا عبر واجهة برمجة تطبيقات Kubernetes (Kubernetes API). ومن أبرز هذه الأدوات Knative، الذي يتيح تشغيل الحاويات كوحدات بدون خادم، و Istio، وهي شبكة خدمات مفتوحة المصدر.

ما المقصود بالحاويات كخدمة (CaaS)؟

الحاويات كخدمة (CaaS) هي خدمة مُدارة تمكّن المطورين من إدارة ونشر التطبيقات القائمة على الحاويات، مما يمنح المؤسسات حلولًا سحابية قابلة للنقل وسهلة التوسعة. بلغت القيمة السوقية العالمية لخدمة CaaS في عام 2022 حوالي ملياري دولار أمريكي.2 ويتوقّع الباحثون أن تتجاوز قيمتها 7 مليارات دولار أمريكي بحلول عام 2027، بمعدل نمو سنوي مركب (CAGR) يبلغ 30.2% خلال تلك الفترة.3

يقدم موفرو CaaS للشركات العديد من الفوائد، بما في ذلك بيئات تشغيل الحاويات، وطبقات التنسيق، وإدارة التخزين الدائم، والتكامل مع الخدمات الأخرى. توفر العديد من المزوّدات السحابية العامة الرائدة خدمات تنسيق حاويات مُدارة، ويعتمد الكثير منها على Kubernetes كتقنية أساسية.

من أبرز مزوّدي خدمات CaaS:

  • Amazon Elastic Container Service (Amazon ECS) من AWS
  • Google Kubernetes Engine (GKE) من Google Cloud
  • IBM Cloud Kubernetes Service
  • Azure Container Instances (ACI) من Microsoft Azure
  • Red Hat OpenShift

تنسيق الحاويات و الذكاء الاصطناعي

يمكن لمنصات التنسيق المعتمدة على الحاويات مثل Kubernetes أتمتة أجزاء من الذكاء الاصطناعي (AI) والتعلم الآلي (ML)، مثل مهام سير عمل الصيانة التنبؤية (بما في ذلك عمليات التحقق من الصحة في الوقت الفعلي وتخطيط الموارد).

يعتمد التعلم الآلي (ML) على النماذج اللغوية الكبيرة (LLMs) لتنفيذ مهام معالجة اللغة الطبيعية (NLP) المتقدمة، مثل تصنيف النصوص، وتحليل المشاعر، والترجمة الآلية. تُسهم أدوات تنسيق الحاويات في تسريع نشر نماذج النماذج اللغوية الكبيرة (LLMs) من خلال أتمتة عمليات إدارة البنية التحتية الخاصة بمعالجة اللغة الطبيعية. كذلك، تعتمد المؤسسات على تنسيق الحاويات لتشغيل وتوسيع نطاق نماذج الذكاء الاصطناعي التوليدي، بما يضمن التوافر العالي وتحمل الأعطال.

حلول ذات صلة
IBM Red Hat OpenShift

Red Hat OpenShift on IBM Cloud هي منصة حاويات OpenShift (OCP) المُدارة بالكامل.

استكشف Red Hat OpenShift
حلول الحاويات

تنفذ حلول الحاويات أعباء عمل الحاويات وتوسع نطاقها مع ميزات الأمان والابتكار مفتوحة المصدر والنشر السريع.

استكشف الحاويات
خدمات الاستشارات السحابية 

أطلق العنان للقدرات الجديدة وحفِّز مرونة الأعمال من خلال خدمات الاستشارات السحابية من IBM. اكتشف كيفية المشاركة في إنشاء الحلول وتسريع التحول الرقمي وتحسين الأداء من خلال إستراتيجيات السحابة الهجينة والشراكات مع الخبراء.

الخدمات السحابية
اتخِذ الخطوة التالية

تحديث البنية التحتية لديك باستخدام حلول الحاويات من IBM. يمكنك تشغيل أحمال عمل الحاويات وتوسيع نطاقها وإدارتها عبر البيئات بمرونة وأمان وكفاءة باستخدام منصة الحاويات الشاملة من IBM.

استكشف حلول الحاويات إنشاء حسابك المجاني على IBM Cloud
الحواشي