صور قائمة Kubectl

Swr Qaymt Kubectl



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

الخطوة 1: ابدأ تشغيل خادم Kubernetes

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

~ $ بدء minikube

عند تنفيذ الأمر ، تعمل الكتلة المحلية minikube في تطبيقنا.

يستفيد Minikube من VirtualBox لإنشاء جهاز افتراضي يمكن الوصول إليه محليًا. يمكننا نشر أوامرنا أو خدماتنا بسرعة في مجموعات Kubernetes. بعد ذلك ، نختبرها محليًا باستخدام مجموعة minikube Kubernetes.

الخطوة 2: عرض قائمة بجميع البودات مع الصور الموجودة في المجموعة

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

~ $ kubectl الحصول على القرون - all-namespaces jsonpath = '{range .items []} {'\ n'} {. metadata.name} {': \ t'} {range .spec.containers []} {. image} {'،'} {end} {end } ' | \

> نوع

عند تنفيذ الأمر ، يظهر الإخراج كما في الصورة التالية:

  شاشة كمبيوتر تحتوي على وصف نص أبيض يتم إنشاؤها تلقائيًا بثقة منخفضة

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

- -جميع-مساحات الأسماء: يمكننا بسهولة جلب قائمة الكبسولات في جميع مساحات الأسماء في مجموعة Kubernetes الخاصة بنا. هنا ، يتم الإعلان عن جميع صور القرون.

- o jsonpath = ': تعطي هذه المعلمة تنسيق الإخراج. تنسيق مسار JSON وفقًا للأمر المحدد ويعرض اسم الحاوية وصور الحاوية بالإضافة إلى تنسيق الإخراج. القائمة مفصولة بعلامات جدولة ، ويتم فصل كل حجرة بإدراج سطر جديد.

|: كما ترى ، تستخدم الأوامر '|' شخصية. يتم استخدامه لنقل الإخراج إلى أمر التمرير.

نوع: تقوم هذه المعلمة بفرز الصور بترتيب معين.

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

الخطوة 3: احصل على قائمة الصور الخاصة بجراب معين

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

~ $ kubectl الحصول على القرون - all-namespaces jsonpath = '{.items []. spec.containers []. image}' برنامج = nginx

في هذا الأمر ، نأخذ حجرة تسمى 'app = ngnix'.

عند تنفيذ الأمر ، يعرض تنسيق إخراج مسار JSON قائمة بجميع صور الحاوية التي يستخدمها البود المسمى 'app-ngnix'.

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

الخطوة 4: احصل على قائمة بالصور في مساحة اسم محددة في الكتلة

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

~ $ kubectl الحصول على القرون - مساحة الاسم كن نظام jsonpath = '{.items []. spec.containers []. image}'

في هذا الأمر ، نريد استرداد صور مساحة الاسم التي يكون اسمها 'kube-system' الذي تستخدمه القرون في مجموعة Kubernetes الخاصة بنا.

يتم عرض قائمة بالصور في الإخراج الذي يتم إنتاجه عند تنفيذ الأمر. ها هي لقطة الشاشة:

  صورة تحتوي على نص ، لقطة شاشة ، خط ، معلومات يتم إنشاؤها تلقائيًا

يمكن الحصول على تنسيق مسار JSON للمخرجات بسهولة عن طريق تشغيل الأمر. يقترب كل سطر في الإخراج من صورة حاوية يتم استخدامها بواسطة حجرة في مساحة الاسم 'نظام kube'. يتم عرض تنسيق الإخراج بواسطة قالب مسار JSON المستخدم في الأمر. في هذا المثال ، يعرض القالب '.items []. spec.containers [] .image' صورة الحاوية التي يستخدمها كل قرص في مساحة الاسم.

الخطوة 5: احصل على قائمة بالصور لجميع مساحات الأسماء لقالب Go

في هذه الخطوة ، سنتعلم عملية جلب قائمة الصور لجميع مساحات الأسماء التي تستخدمها pods التي تستخدم تنسيق إخراج 'go template' في مجموعة Kubernetes. لهذا نستخدم الأمر التالي:

~ $ kubectl الحصول على القرون - all-namespaces go-template --نموذج = '{{range .ite ms}} {{range .spec.containers}} {{. image}} {{end}} {{end}}'

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

-o go-template: يوضح هذا أن تنسيق الإخراج يجب أن يكون وفقًا لتدوين 'go-template'.

- -template = ”{{range. items}} {{range. spec.containers}} {{. image}} {{end}} {{end}} ”: يوفر هذا القالب الذي سيتم استخدامه للإخراج. يتكرر هذا القالب من خلال قائمة البودات التي تسترجع صورة الحاوية لكل منها. والنتيجة هي قائمة بصور الحاوية مفصولة بمسافات يتم استخدامها من قبل جميع البودات في جميع مساحات الأسماء في المجموعة.

عند تنفيذ الأمر السابق ، تحصل على المخرجات التالية:

  يتم إنشاء لقطة شاشة لبرنامج الكمبيوتر الوصف تلقائيًا بثقة منخفضة

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

خاتمة

نستنتج أنه يمكننا بسهولة استرداد قائمة الصور المخزنة في الحاوية في تطبيق Kubernetes الخاص بنا بمساعدة أداة سطر أوامر kubectl. في Kubernetes ، يمكننا الحصول على قائمة الصور بطرق مختلفة. يتم شرح كل طريقة بوضوح في الخطوات المحددة. يحصل الخيار '–all namespace' على صور جميع مساحات الأسماء التي يستخدمها الكبسولة المخزنة في الحاوية ويسهل جلبها عن طريق تشغيل الأوامر. يمكنك اتباع جميع الخطوات لتطبيقك للحصول على قائمة الصور عن طريق تشغيل الأوامر في أداة سطر أوامر kubectl.