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

اختبار الوحدة 6 - التخزين والأحجام

التعليمات​

يحتوي هذا الاختبار على 30 سؤالاً متعدد الخيارات.


السؤال 1​

ما نوع الحجم الذي يتم إنشاؤه عند بدء تشغيل Pod ويتم حذفه عند انتهاء Pod؟

عرض التفسير

الإجابة الصحيحة: emptyDir

التفسير: emptyDir هو حجم مؤقت يوجد فقط خلال فترة حياة Pod.


السؤال 2​

ما هو PersistentVolume (PV)؟

عرض التفسير

الإجابة الصحيحة: مورد تخزين في العنقود تم توفيره بواسطة مسؤول

التفسير: PersistentVolume هو مورد تخزين في العنقود، يتم توفيره يدوياً أو ديناميكياً عبر StorageClass.


السؤال 3​

ما هو PersistentVolumeClaim (PVC)؟

عرض التفسير

الإجابة الصحيحة: طلب تخزين من قبل مستخدم يربط PV بـ Pod

التفسير: PVC هو طلب تخزين يربط PV بـ Pod، مما يسمح للمستخدمين بطلب التخزين دون معرفة تفاصيل التخزين الأساسية.


السؤال 4​

ما هو وضع الوصول ReadWriteOnce (RWO)؟

عرض التفسير

الإجابة الصحيحة: يمكن لـ node واحد التركيب للقراءة والكتابة

التفسير: RWO يسمح لـ node واحد بتركيب الحجم للقراءة والكتابة، وهو الأكثر شيوعاً للأحجام السحابية.


السؤال 5​

ما هي StorageClass؟

عرض التفسير

الإجابة الصحيحة: مورد يصف فئات التخزين ويسمح بالتوفير الديناميكي لـ PVs

التفسير: تصف StorageClass فئات التخزين المتاحة وتسمح لـ Kubernetes بإنشاء PVs تلقائياً عند إنشاء PVC.


السؤال 6​

ما هي سياسة الاستعادة الافتراضية لـ StorageClass؟

عرض التفسير

الإجابة الصحيحة: Delete

التفسير: السياسة الافتراضية هي Delete، مما يعني أن PV يتم حذفه تلقائياً عند حذف PVC.


السؤال 7​

ما هو StatefulSet؟

عرض التفسير

الإجابة الصحيحة: عبء عمل يدير النشر مع هويات ثابتة وتخزين دائم

التفسير: يضمن StatefulSet هويات ثابتة (أسماء متوقعة) وتخزين دائم فردي لكل Pod، مثالي لقواعد البيانات.


السؤال 8​

ما هي فائدة استخدام حجم emptyDir؟

عرض التفسير

الإجابة الصحيحة: مشاركة البيانات المؤقتة بين الحاويات في نفس Pod

التفسير: emptyDir مفيد لمشاركة الملفات المؤقتة بين الحاويات في نفس Pod، مثل ذاكرة التخزين المؤقت أو ملفات العمل.


السؤال 9​

ما الفرق بين PV و PVC؟

عرض التفسير

الإجابة الصحيحة: PV هو مورد التخزين، PVC هو الطلب الذي يربط PV بـ Pod

التفسير: PV هو مورد التخزين المخصص في العنقود، بينما PVC هو طلب من المستخدم يربط PV بـ Pod.


السؤال 10​

ما هو التوفير الديناميكي؟

عرض التفسير

الإجابة الصحيحة: إنشاء PVs تلقائياً عند إنشاء PVC، بناءً على StorageClass

التفسير: التوفير الديناميكي يسمح لـ Kubernetes بإنشاء PV مطابق تلقائياً عند إنشاء PVC، باستخدام StorageClass.


السؤال 11​

ما هو وضع الوصول الذي يسمح لعدة nodes بالتركيب للقراءة والكتابة؟

عرض التفسير

الإجابة الصحيحة: ReadWriteMany

التفسير: ReadWriteMany (RWX) يسمح لعدة nodes بتركيب الحجم للقراءة والكتابة في نفس الوقت، وهو ضروري لأنظمة الملفات المشتركة مثل NFS.


السؤال 12​

ما هو حجم hostPath؟

عرض التفسير

الإجابة الصحيحة: حجم يركب ملفاً أو دليلاً من نظام ملفات node المضيف في Pod

التفسير: hostPath يركب مساراً من node المضيف في Pod. مفيد للتطوير ولكن يجب تجنبه في الإنتاج لأنه يخلق اعتماداً على node.


السؤال 13​

ما الفرق بين حجم emptyDir وحجم tmpfs؟

عرض التفسير

الإجابة الصحيحة: emptyDir يستخدم تخزين node، tmpfs يستخدم RAM

التفسير: emptyDir يستخدم تخزين node (القرص)، بينما tmpfs (emptyDir مع medium: Memory) يستخدم RAM، أسرع ولكنه محدود بالذاكرة المتاحة.


السؤال 14​

ما هو volumeClaimTemplate في StatefulSet؟

عرض التفسير

الإجابة الصحيحة: قالب ينشئ تلقائياً PVC لكل Pod في StatefulSet

التفسير: volumeClaimTemplate يسمح لكل Pod في StatefulSet بالحصول على PVC خاص به يتم إنشاؤه تلقائياً باسم فريد (مثلاً: data-web-0، data-web-1).


السؤال 15​

ما هي سياسة الاستعادة Retain؟

عرض التفسير

الإجابة الصحيحة: يتم الاحتفاظ بـ PV حتى بعد حذف PVC، مما يسمح باستعادة البيانات يدوياً

التفسير: Retain يحتفظ بـ PV وبياناته بعد حذف PVC، مفيد لاستعادة البيانات أو التصحيح.


السؤال 16​

ما هو Volume Snapshot؟

عرض التفسير

الإجابة الصحيحة: لقطة لحظية لحالة حجم دائم

التفسير: تتيح Volume Snapshots إنشاء نسخ احتياطية لحظية من الأحجام، مفيدة للنسخ الاحتياطي والاستعادة.


السؤال 17​

ما هي فائدة استخدام StorageClass مع التوفير الديناميكي؟

عرض التفسير

الإجابة الصحيحة: إنشاء PVs تلقائياً دون تدخل يدوي، تبسيط الإدارة

التفسير: التوفير الديناميكي يلغي الحاجة لإنشاء PVs يدوياً، مما يبسط بشكل كبير إدارة التخزين على نطاق واسع.


السؤال 18​

ما هي الأمر لرؤية PVCs؟

عرض التفسير

الإجابة الصحيحة: kubectl get pvc

التفسير: kubectl get pvc (أو persistentvolumeclaim) يعرض جميع PVCs وحالة الربط الخاصة بهم مع PVs.


السؤال 19​

ما هو حجم NFS؟

عرض التفسير

الإجابة الصحيحة: حجم يركب مشاركة NFS (نظام ملفات الشبكة) في Pod

التفسير: تتيح الأحجام NFS تركيب مشاركات الشبكة، مما يدعم ReadWriteMany للمشاركة بين عدة Pods.


السؤال 20​

ما الفرق بين StatefulSet و Deployment للتخزين؟

عرض التفسير

الإجابة الصحيحة: StatefulSet يضمن تخزين دائم فردي لكل Pod مع هويات ثابتة، Deployment يشارك التخزين

التفسير: تخلق StatefulSets PVC فريد لكل Pod عبر volumeClaimTemplate، بينما تشارك Deployments عادةً نفس التخزين أو لا تحتوي على تخزين.


السؤال 21​

ما هو سائق CSI (واجهة تخزين الحاوية)؟

عرض التفسير

الإجابة الصحيحة: واجهة قياسية تسمح لمكونات التخزين بالتكامل مع Kubernetes

التفسير: CSI هو واجهة قياسية تسمح لمزودي التخزين بإنشاء مكونات للتكامل مع Kubernetes بطريقة موحدة.


السؤال 22​

ما هو الحجم الأقصى لـ PVC؟

عرض التفسير

الإجابة الصحيحة: يعتمد على التخزين المتاح وحصص namespace

التفسير: حجم PVC محدود بالتخزين المتاح في العنقود وبحصص الموارد المحددة لـ namespace.


السؤال 23​

ما هو حجم محلي؟

عرض التفسير

الإجابة الصحيحة: حجم يستخدم التخزين المتصل مباشرة بـ node

التفسير: تستخدم الأحجام المحلية التخزين المتصل مباشرة بـ node (الأقراص المحلية)، مما يوفر أداءً أفضل ولكن مع قيود التوافر.


السؤال 24​

ما هي الأمر لرؤية StorageClasses؟

عرض التفسير

الإجابة الصحيحة: kubectl get storageclass

التفسير: kubectl get storageclass (أو sc) يعرض جميع StorageClasses المتاحة في العنقود.


السؤال 25​

ما هو حجم ephemeral؟

عرض التفسير

الإجابة الصحيحة: حجم مؤقت يوجد فقط خلال فترة حياة Pod

التفسير: الأحجام المؤقتة (مثل emptyDir) يتم إنشاؤها مع Pod ويتم حذفها عند انتهاء Pod، ولا تستمر البيانات.


السؤال 26​

ما الفرق بين PV ثابت و PV ديناميكي؟

عرض التفسير

الإجابة الصحيحة: PV ثابت يتم إنشاؤه يدوياً بواسطة مسؤول، PV ديناميكي يتم إنشاؤه تلقائياً عبر StorageClass

التفسير: التوفير الثابت يتطلب إنشاء PVs يدوياً، بينما التوفير الديناميكي ينشئ PVs تلقائياً عبر StorageClass عند إنشاء PVC.


السؤال 27​

ما هو حجم secret؟

عرض التفسير

الإجابة الصحيحة: حجم يركب بيانات Secret كملفات في Pod

التفسير: الأحجام السرية تركب بيانات Secret كملفات في Pod، حيث تصبح كل مفتاح ملفاً بالقيمة المفكودة.


السؤال 28​

ما هي الممارسة الجيدة للتخزين في الإنتاج؟

عرض التفسير

الإجابة الصحيحة: استخدام PVs/PVCs مع StorageClasses وتوفير ديناميكي

التفسير: في الإنتاج، استخدم PVs/PVCs مع StorageClasses للتخزين الدائم، وتجنب hostPath الذي يخلق اعتماداً على node.


السؤال 29​

ما هو حجم configMap؟

عرض التفسير

الإجابة الصحيحة: حجم يركب بيانات ConfigMap كملفات في Pod

التفسير: الأحجام configMap تركب بيانات ConfigMap كملفات، حيث تصبح كل مفتاح ملفاً بالقيمة كمحتوى.


السؤال 30​

ما هي الأمر لرؤية PVs؟

عرض التفسير

الإجابة الصحيحة: kubectl get pv

التفسير: kubectl get pv (أو persistentvolume) يعرض جميع PVs وحالتها (Available، Bound، Released، Failed).


نتيجة الاختبار​

تهانينا على إكمال اختبار الوحدة 6!

النتيجة:

  • 25-30 إجابة صحيحة: ممتاز! أنت تتقن التخزين والأحجام.
  • 20-24 إجابة صحيحة: جيد جداً! راجع المفاهيم التي واجهت فيها صعوبة.
  • 15-19 إجابة صحيحة: جيد! راجع الفصول حول الأحجام وPVs.
  • أقل من 15: يُوصى بمراجعة الوحدة قبل المتابعة.

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