انتقل إلى المحتوى الرئيسي

الفصل 2.8 - وقت تشغيل الحاويات

أهداف التعلم​

في نهاية هذا الفصل، ستكون قادرًا على:

  • فهم دور وقت تشغيل الحاويات
  • تحديد أوقات التشغيل المدعومة المختلفة
  • شرح واجهة CRI
  • فهم عزل الحاويات

ما هو وقت تشغيل الحاويات؟​

وقت تشغيل الحاويات هو البرنامج المسؤول عن تنفيذ الحاويات على العقدة. يدير دورة حياة الحاويات: الإنشاء، البدء، الإيقاف، الحذف.


واجهة وقت تشغيل الحاويات (CRI)​

يستخدم Kubernetes CRI للتواصل مع أوقات التشغيل:

عمليات CRI​

  • RunPodSandbox() - إنشاء بيئة معزولة
  • CreateContainer() - إنشاء حاوية
  • StartContainer() - بدء حاوية
  • StopContainer() - إيقاف حاوية
  • RemoveContainer() - حذف حاوية

أوقات التشغيل المدعومة​

1. containerd (موصى به)​

وقت تشغيل حديث، خفيف، يستخدم بشكل افتراضي في العديد من التوزيعات:

المزايا:

  • خفيف وذو أداء عالي
  • معيار الصناعة
  • يدعم OCI (مبادرة الحاويات المفتوحة)

2. CRI-O​

وقت تشغيل محسن لـ Kubernetes:

المزايا:

  • مصمم خصيصًا لـ Kubernetes
  • خفيف
  • متوافق مع OCI

3. Docker (مهمل)​

Docker عبر dockershim (مهمل منذ Kubernetes 1.24):

ملاحظة: يمكن استخدام Docker Engine دائمًا، ولكن عبر containerd.


العزل والأمان​

مساحات الأسماء في لينكس​

تستخدم الحاويات مساحات الأسماء في لينكس للعزل:

أنواع مساحات الأسماء:

  • PID: عزل العمليات
  • Network: عزل الشبكة
  • Mount: عزل نظام الملفات
  • UTS: عزل اسم المضيف
  • IPC: عزل بين العمليات
  • User: عزل المستخدمين

Cgroups​

تحديد الموارد:


دورة حياة الحاوية​


صور الحاويات​

سحب الصور​

يقوم وقت تشغيل الحاويات بتنزيل الصور من السجلات:

تنسيقات الصور​

  • OCI: مبادرة الحاويات المفتوحة (معيار)
  • Docker: تنسيق Docker (متوافق مع OCI)

الأوامر المفيدة​

# عرض الحاويات (إذا كان Docker)
docker ps

# عرض الصور
docker images

# عرض سجلات الحاوية
docker logs <container-id>

# فحص حاوية
docker inspect <container-id>

ملخص​

في هذا الفصل، تعلمت:

وقت تشغيل الحاويات: تنفيذ الحاويات على العقد
CRI: واجهة قياسية للتواصل مع أوقات التشغيل
أوقات التشغيل: containerd, CRI-O (موصى بها)، Docker (مهمل)
العزل: مساحات الأسماء في لينكس وcgroups
الصور: التنزيل من السجلات


الخطوات التالية​

الآن بعد أن فهمت وقت تشغيل الحاويات:

الفصل 2.9: التواصل بين المكونات
الفصل 2.10: الإضافات والامتدادات


تم إنشاء الفصل في: ديسمبر 2024