ما Kubernetes؟

مكتمل

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

قبل النظر إلى ما هو موجود في Kubernetes، هناك مفهومان يجب فهمهما أولا، إدارة الحاويات والمنسقين.

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

إدارة الحاويات هي عملية تنظيم أو إضافة أو إزالة أو تحديث عدد كبير من الحاويات.

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

Diagram of a server or application replicated as containers for cloud deployment.

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

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

تساعدك إدارة الحاويات في هذه المهام المتكررة اليدوية.

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

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

Diagram showing how number of deployed container instances is automatically increased if demand rises and how an orchestrator ensures all deployed instances are updated with the latest software version.

تعريف Kubernetes

Kubernetes هو نظام أساسي محمول مفتوح المصدر قابل للتوسيع لإدارة أحمال العمل الحاوية وتنسيقها. يبسط Kubernetes مهام إدارة الحاويات المعقدة ويوفر لك تكوينا تعريفيا لتنسيق الحاويات في بيئات الحوسبة المختلفة. يمنحك النظام الأساسي للتنسيق هذا نفس سهولة الاستخدام والمرونة التي قد تعرفها بالفعل من النظام الأساسي كخدمة (PaaS) أو عروض البنية الأساسية كخدمة (IaaS).

Diagram of replicated servers as multiple containers in a Kubernetes cluster.

فوائد Kubernetes

تستند فوائد استخدام Kubernetes إلى تجريد المهام.

Diagram that lists three Kubernetes benefits: self-healing, dynamic scaling, and rolling updates.

تتضمن هذه المهام:

  • الشفاء الذاتي للحاويات؛ على سبيل المثال، إعادة تشغيل الحاويات التي تفشل أو تحل محل الحاويات

  • توسيع نطاق عدد الحاويات المنشورة لأعلى أو لأسفل ديناميكيا، بناء على الطلب

  • أتمتة التحديثات المتداولة والتراجع عن الحاويات

  • إدارة التخزين

  • إدارة نسبة استخدام الشبكة

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

هام

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

اعتبارات Kubernetes

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

Diagram that shows a list of Kubernetes components that including monitoring, microservices, databases, and the Docker runtime.

ومع ذلك، من المهم أن نفهم أن Kubernetes ليس تطبيقًا واحدًا مثبتًا يستخدم مع جميع المكونات الممكنة اللازمة لإدارة وتزامن حلول الحاوية:

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

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

  • لا يوفر Kubernetes البرامج الوسيطة أو أطر معالجة البيانات أو قواعد البيانات أو ذاكرة التخزين المؤقت أو أنظمة تخزين نظام المجموعة. يتم تشغيل كافة هذه العناصر كحاويات أو كجزء من عرض الخدمة.

  • لكي يقوم Kubernetes بتشغيل الحاويات، فإنه يحتاج إلى وقت تشغيل حاوية مثل Docker أو حاوية. وقت تشغيل الحاوية هو الكائن المسؤول عن إدارة الحاويات. على سبيل المثال، يبدأ ويتوقف وقت تشغيل الحاوية وتصدر تقارير عن حالة الحاوية.

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

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

إشعار

يتم أحيانًا اختصار Kubernetes إلى K8s. يُمثل الرقم 8 الأحرف الثمانية بداية من K إلى s من كلمة K[ubernete]s.