أفضل 20 أسئلة وأجوبة مقابلة Kubernetes تحتاج إلى معرفتها في عام 2022

نشرت: 2021-01-04

Kubernetes هي واحدة من أكثر أدوات تنسيق الحاويات رواجًا في السوق اليوم. تم فتح هذا النظام بواسطة Google في عام 2014 ، وقد ظهر هذا النظام كمفضل لدى شركات مثل SoundCloud و SAP و The New York Times و eBay و Huawei والعديد من الشركات الأخرى.

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

الفكرة الأساسية وراء Kubernetes هي تجريد موارد الكمبيوتر الأساسية. إنه يأخذ الآلات والتخزين والشبكات بعيدًا عن تطبيقاتها المادية. لا شك أن الزخم وراء المنصة آخذ في الارتفاع. يُطلق على Kubernetes اسم نظام تشغيل السحابة. تعرف على المزيد حول Kubernetes والشبكات.

إذا كنت تفكر في ممارسة مهنة في هذا المجال ، فانتقل إلى أسئلة مقابلة Kubernetes الواردة أدناه. اتخذ هذه الخطوة الأولى وتعرّف على الأساسيات!

أسئلة وأجوبة مقابلة Kubernetes 2022

1. تحديد Kubernetes.

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

2. ضع قائمة ببعض الميزات الرئيسية لبرنامج Kubernetes.

    1. الجدولة الآلية - جدولة متقدمة لتشغيل الحاويات على عقد المجموعة.
    2. الشفاء الذاتي - يمكن إعادة جدولة واستبدال وإعادة تشغيل الحاويات التي ماتت.
    3. عمليات الطرح والتراجع الآلي - يدعم عمليات الطرح والتراجع.
    4. التحجيم الأفقي - قدرات توسيع نطاق التطبيقات لأعلى أو لأسفل حسب المتطلبات.
  1. ضع قائمة بالاختلافات بين Kubernetes و Docker Swarms.

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

لكن لدى Kubernetes قدرات أخرى. يحتوي على أدوات تسجيل ومراقبة مدمجة جنبًا إلى جنب مع آلية التراجع التلقائي. لا يمكن لـ Docker Swarm إجراء عمليات التراجع التلقائية والتحجيم التلقائي مثل Kubernetes.

4. كيف يختلف نشر التطبيق على الأجهزة المضيفة عن النشر على الحاويات؟

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

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

5. ماذا تفهم من خلال تنظيم الحاوية؟ لماذا تحتاج إليها؟

افترض أن هناك 4-5 خدمات مصغرة لأحد التطبيقات. الآن ، ستكون هذه الخدمات المصغرة في حاويات فردية. لذلك ، سيكون تنسيق الحاوية مطلوبًا للسماح للخدمات بالتواصل مع بعضها البعض والعمل معًا لتلبية احتياجات الخادم. هذه العملية تشبه الأوركسترا الموسيقية حيث يتم عزف الآلات المختلفة في تناغم لتشكيل مقطوعة موسيقية.

6. ما هو Kubelet؟

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

قراءة: أسئلة وأجوبة مقابلة مكدس كاملة

7. ما هو دور المجموعات في Kubernetes؟

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

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

لذلك ، تتكون مجموعة Kubernetes بشكل أساسي من API ، والعقد العاملة ، وعملية Kubelet للعقد.

8. ما هي استخدامات Kubectl؟

Kubectl هي أداة للتحكم في مجموعات Kubernetes. في الحقيقة ، "ctl" تعني السيطرة. إنها واجهة سطر أوامر تتيح لك تمرير الأوامر إلى المجموعة وإدارة مكون Kubernetes.

9. تحديد Google Container Engine.

Google Container Engine (GKE) عبارة عن نظام أساسي للإدارة يدعم حاويات Docker ومجموعاته التي تعمل ضمن خدمات Google السحابية العامة. إنه محرك مفتوح المصدر يعتمد على Kubernetes.

10. شرح استخدام العقد في Kubernetes.

توفر العقدة الخدمات الضرورية لتشغيل البودات. تُعرف العقد أيضًا باسم التوابع ، ويمكن تشغيلها على جهاز مادي أو افتراضي اعتمادًا على الكتلة. في Kubernetes ، العقدة هي آلة العامل الرئيسية ، والمكونات الرئيسية تدير كل عقدة في النظام.

الآن بعد أن أصبحت مطلعًا على الأساسيات ، دعنا نلقي نظرة على عدد قليل من أسئلة وأجوبة مقابلة Kubernetes للحصول على الوضوح.

11. ما هما المكونان الرئيسيان لبنية Kubernetes؟

تشكل العقدة الرئيسية والعقدة العاملة بنية Kubernetes. يحتوي كلا المكونين على العديد من الخدمات المضمنة داخلهما. على سبيل المثال ، يحتوي المكون الرئيسي على kube-controller-manager و kube-Scheduler و etcd و kube-apiserver. تحتوي العقدة العاملة على خدمات مثل وقت تشغيل الحاوية و kubelet و kube-proxy تعمل على كل عقدة.

قراءة: رد على أسئلة وأجوبة المقابلة

12. تحديد kube-apiserver و kube-Scheduler.

Kube-apiserver هي الواجهة الأمامية للوحة تحكم عقدة مازر التي تعرض جميع واجهات برمجة التطبيقات المكونة. يقوم بإنشاء اتصال بين عقد Kubernetes والمكونات الرئيسية. يدير kube-Scheduler عبء العمل على عُقد العامل. إنه يتتبع استخدام الموارد للتأكد من أن الجدولة تتم على العقد المناسبة.

13. اشرح بإيجاز دور مدير وحدة التحكم في Kubernetes.

في Kubernetes ، يتم تشغيل العديد من العمليات على العقدة الرئيسية ، ويتم تجميعها معًا في شكل Kubernetes Controller Manager. وهي خدمة تتضمن وحدات تحكم ، بما في ذلك ما يلي:

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

مدير وحدة التحكم في السحابة (CCM) هو برنامج خفي يسمح بتضمين حلقات تحكم خاصة بالسحابة. إنه يستخلص رمز البائع الخاص بالسحابة من كود Kubernetes الأساسي. كما أنه يساعد في إدارة الاتصال مع الخدمات السحابية الأساسية. يعتمد تصميمه على آلية البرنامج المساعد ، مما يعني أن بائعي السحابة يقومون بدمج كودهم مع CCM باستخدام المكونات الإضافية.

15. ما هو دور موازن التحميل؟

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

يمكن لميزان التحميل الداخلي موازنة الحمل تلقائيًا وتخصيص التكوين المطلوب للبودات. من ناحية أخرى ، يوجه موازن التحميل الخارجي حركة مرور التحميل الخارجي إلى قرون الواجهة الخلفية. في Kubernetes ، تعمل طريقتا موازنة الحمل من خلال ميزة kube-proxy.

16. كيف يمكنك تشغيل Kubernetes محليًا؟

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

17. ما هو Heapster؟

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

18. ما هو ETCD في Kubernetes؟

Etcd عبارة عن مخزن للتكوين والحالة والبيانات الوصفية لمجموعات Kubernetes. إنه مكتوب بلغة برمجة Go ويمثل حالة الكتلة في نقطة زمنية معينة. يعمل مخزن البيانات هذا بمثابة العمود الفقري للأنظمة الموزعة.

19. ما الذي تفهمه من خلال مراقبة موارد الحاوية؟

من منظور المستخدم ، من الضروري فهم استخدام الموارد في طبقات ومستويات تجريد مختلفة ، مثل حاويات الحاويات والخدمات والمجموعة بأكملها. يمكن مراقبة كل مستوى باستخدام أدوات مختلفة وهي:

  • جرافانا
  • هيبستر
  • التدفق
  • مستشار
  • بروميثيوس
  1. كيف يمكنك ضمان أمان بيئتك أثناء استخدام Kubernetes؟

يمكنك اتباع وتنفيذ إجراءات الأمان التالية أثناء استخدام Kubernetes:

  • تقييد الوصول إلى ETCD
  • تقييد الوصول المباشر إلى العقد
  • تحديد حصة الموارد
  • يجب تسجيل كل شيء في بيئة الإنتاج
  • استخدم الصور من المستودع المعتمد
  • إنشاء قواعد وسياسات صارمة للموارد
  • إجراء فحص مستمر للأمان ونقاط الضعف
  • قم بتطبيق تحديثات الأمان بانتظام

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

تغليف

في هذه المقالة ، قمنا بتغطية أسئلة مقابلة Kubernetes الأساسية لمساعدتك في تحقيق أهدافك المهنية. لذا ، واجه تحدي التعلم ، ولا تنس المراجعة!

إذا كنت ترغب في تعلم وإتقان Kubernetes و DevOps والمزيد ، تحقق من IIIT-B & upGrad's Executive PG Program in Full Stack Software Development Program.

استعد لمهنة المستقبل

تقدم الآن للحصول على درجة الماجستير في هندسة البرمجيات