•  untoreh الضوء

على الحاويات

استخدام الحاويات وماذا ولماذا

ما هي الحاويات

[الحاويات] هو اسم يُطلق على البيئات المقيدة ، وقد أصبح ممكنًا بفضل مجموعة من الأنظمة الفرعية داخل لينكس مثل [cgroups ] و [namespaces ]. على الرغم من أن صفحة wiki تستخدم الكلمة الافتراضية أعتقد أن الكلمة عزل أكثر ملاءمة ، لأن الافتراضية تعني أن هناك طبقة من الترجمة بينهما ، في حين أن ما تفعله cgroups ومساحات الأسماء هو فصل العمليات ووضعها في سياقها.

تُستخدم Cgroups لتحديد سياسات التخصيص للموارد ، عادةًRAM وCPU ، بينما تتحكم مساحات الأسماء في السياقات مثل نقاط التركيب والشبكات والمستخدمين. [Apparmor] بدلاً من ذلك يوفر طريقة لتقييد القدرات لبيئات الحاويات ككل ، في حين أن apparmor بدون حاويات ، كما هو مكتوب في ويكيبيديا ، قائم على البرامج.

أدوات مثل فلاتباك و فايرجيلاستخدام الحاويات لتقييد سطح الوصول لتطبيقات المستخدم. تقوم حاويات [Windows] بتنفيذ أنظمة مكافئة ، كما تقدم دعمًا لحاويات linux من خلال [WSL].

لكن لماذا؟

كثير جدا؟

عندما بدأت في البناء صنوبر ، لقد جربت قليلاً شحن صور الحاوية الخاصة بي ، الموزعة من إصدارات github. النص الرئيسي (trees ) كانت الأوامر

Usage: trees APP [FLAGS]...
'APP'               Install apps through ostree deltas checkouts.
    -b, --base      base image (alp,trub...)
    -n, --name      same as APP (etcd,hhvm...)
    -f, --force     clear before install
    -d, --delete    clear checkout and prune ostree repo
ck, check           make sure the apps repo is mounted
co, checkout        builds the trees of links for the specified APP
    -t 	            optional path where to build the tree

كان مشابهًا لـ flatpak ، حيث كنت أقوم بشحن دلتا ثابتة ostree استنادًا إلى صورة الصنوبر الرئيسية ، و [التحقق من] الجذر الجديد المستند إلى التطبيق ، ثم تشغيل مثيل حاوية فوقه. واجه OpenVZ الكثير من المشكلات قبل الإصدار 7 لتشغيل الحاوية (بما أنك تعلم ... كنت تشغل ملف متداخل حاوية على حاوية [VPS] ، وكانت النواة شوكةv2.6 (!))...كانت تسربت مضيعة للوقت.

متى؟

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

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

الاستنتاجات

ينتهي الأمر بأدوات Orchestrations إلى ازدحام المكان لإيجاد حلول لإدارة الأجهزة المضيفة المتعددة عندما لا يتمكن المستخدمون من معرفة الفرق بين خوادم الحيوانات الأليفة والماشية. في العديد من المناسبات ، برامج مثل ansible أو pyinfra أو حتى CSsh أو الحمار هو كل ما يحتاجه المرء.

نشر العلامات: