مجموعات CycleCloud

في CycleCloud، يستخدم مصطلح نظام المجموعة لوصف مجموعة من أجهزة الكمبيوتر المتصلة (العقد) التي تعمل معا كنظام واحد. يمكن تداخل المجموعات؛ على سبيل المثال، قد تقوم مجموعة الحوسبة التي تتكون من عقدة رأس جدولة محرك الشبكة وعقد الحوسبة بتحميل مجموعة BeeGFS تتكون من العديد من بيانات التعريف وخوادم التخزين، مع دمج كل من مجموعات الحوسبة والتخزين ضمن نظام أو نظام HPC أصل واحد.

نظرة عامة على الرسم التخطيطي

العقد وصفائف العقد

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

مخطط البنية

هناك تجسيدان منفصلان للعقد في CycleCloud. الأولى كعقدة مستقلة والثانية ك nodearray، وهي مجموعة من العقد المكونة بشكل متطابق (يتبع تمييز العقدة مقابل nodearray قياس DevOps Pets مقابل Cattle في الروح). على نطاق واسع ولكن ليس بدقة، يتم إنشاء العقد المستقلة من أجهزة ظاهرية واحدة على Azure بينما يتم تعيين nodearrays إلى مجموعات مقياس الجهاز الظاهري (VMSS).

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

قوالب نظام المجموعة

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

يتم تعريف قوالب نظام المجموعة بتنسيق INI. يتم استخدام الأقسام، التي تم تحديدها باستخدام أقواس مربعة [،] لتعريف المجموعات والعقد والعقد. العنصر الأساسي لملفات INI هو تأكيدات زوج قيم المفاتيح التي توفر تفاصيل التكوين لكل قسم. توفر تفاصيل التكوين هذه معلومات سياقية تستخدم لإنشاء كل عقدة من نظام مجموعة، من صورة الجهاز الظاهري المستخدمة لتشغيل الجهاز الظاهري إلى الشبكة الفرعية التي سيتم توفير الجهاز الظاهري فيها. اقرأ المزيد حول قوالب نظام مجموعة CycleCloud

إعداد العقدة وتكوينها

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

رسم تخطيطي لإعداد العقدة

المعرفة في قسم التكوين لكل عقدة هي مواصفات cluster-init - المواصفات المقدمة لكل جهاز ظاهري للتمهيد يتم استخدامه لإعداده لدور معين في نظام المجموعة. يستخدم CycleCloud Chef كنظام أساسي لأتمتة البنية الأساسية لإعداد كل عقدة وتكوينها. في جوهرها، يتم تعيين كل مواصفات cluster-init إلى واحد من أكثر أدوار Chef و/أو وصفات كتاب الطبخ التي تحتاج إلى تنفيذها على الجهاز الظاهري للتمهيد.

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

بعد تنزيل كتب الطبخ هذه، يعالج Chef قائمة الوصفات المحددة في مواصفات cluster-init للعقدة، ما يؤدي إلى مرحلة إعداد وتكوين تحول الجهاز الظاهري إلى عقدة HPC عاملة.

تؤلف المواصفات كمجموعات منطقية تسمى Projects. على سبيل المثال، يتكون مشروع مجدول الدفعة مثل Slurm من مواصفات اثنين على الأقل: واحدة لعقد رأس المجدول، والأخرى لعقد الحوسبة. اقرأ المزيد حول مشاريع CycleCloud

تنسيق العقدة

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

يستخدم هذا العنصر من Service Discovery أيضا لعلاقات خادم عميل نظام الملفات وهو ميزة في CycleCloud.

قراءة المزيد