
اليوم ، تعد CERN واحدة من أكبر مستخدمي Kubernetes في العالم. وفقًا للإحصاءات الأخيرة ، تم إطلاق 210 مجموعة أوروبية K8s في هذه المنظمة الأوروبية وراء مصادم الهادرون الكبير (LHC) وعدد من المشاريع البحثية المعروفة الأخرى ، والتي تخدم مئات الآلاف من المهام في وقت واحد. قصة النجاح هذه تدور حولهم.
حاويات CERN: البداية
بالنسبة لأولئك الذين هم على الأقل سطحيون على دراية بأنشطة CERN ، ليس سراً أن الكثير من الاهتمام يتم في هذه المنظمة لتكنولوجيا المعلومات ذات الصلة: تذكر فقط أن هذا هو مسقط رأس شبكة الويب العالمية ، ومن بين المزايا الأحدث التي يمكنك تذكر أنظمة الشبكة (بما في ذلك
LHC شبكة الحوسبة ) ، وهي
دائرة متكاملة متخصصة ،
وتوزيع علمي لينكس ، وحتى
رخصة الأجهزة المفتوحة
الخاصة بها . وكقاعدة عامة ، ترتبط هذه المشاريع ، سواء كانت برامج أو أجهزة ، مع من بنات الأفكار الرئيسيين لـ CERN - LHC. وينطبق هذا أيضًا على البنية التحتية لتكنولوجيا المعلومات CERN ، والتي تخدم بشكل كبير احتياجاتها الخاصة.
في مركز بيانات CERN في جنيفتعود أقدم المعلومات المتاحة للجمهور حول الاستخدام العملي للحاويات في البنية التحتية للمؤسسة ، والتي تم العثور عليها ، إلى أبريل 2016. كجزء من تقرير "داخلي" أعدّته
حاويات وتزامن في CERN Cloud ، تحدث موظفو CERN عن كيفية استخدامهم OpenStack Magnum
(مكون OpenStack للعمل مع محركات تنسيق الحاويات) لتقديم الدعم للحاويات في سحابتهم (CERN Cloud) وتنظيمهم. بعد ذلك ، ذكر المهندسون Kubernetes ، وكان المهندسون يهدفون إلى أن يكونوا مستقلين عن أداة التنسيق المختارة ، ودعم الخيارات الأخرى: Docker Swarm و Mesos.
ملاحظة : تم تقديم سحابة OpenStack نفسها إلى البنية التحتية لإنتاج CERN قبل عدة سنوات ، في عام 2013. اعتبارًا من فبراير 2017 ، تم توفير 188 ألف نواة و 440 تيرابايت من ذاكرة الوصول العشوائي في هذه السحابة ، وتم إنشاء 4 ملايين آلة افتراضية (منها 22 ألف جهاز نشط).
في ذلك الوقت ، تم وضع دعم الحاويات في شكل حاويات كخدمة كخدمة تجريبية وتم استخدامه في عشرة مشاريع لتكنولوجيا المعلومات في المنظمة. من بين سيناريوهات التطبيق ، تم استدعاء التكامل المستمر مع GitLab CI لبناء التطبيقات ونشرها في حاويات Docker.
من العرض التقديمي إلى تقرير CERN في 8 أبريل 2016كان من المتوقع إطلاق هذه الخدمة في الإنتاج بحلول الربع الثالث من عام 2016.
ملاحظة : تجدر الإشارة بشكل منفصل إلى أن موظفي CERN يضعون دائمًا أفضل ممارساتهم في المنبع من مشاريع المصادر المفتوحة المستخدمة ، بما في ذلك والعديد من مكونات OpenStack ، والتي كانت في هذه الحالة ماغنوم ، دمية ماغنوم ، رالي ، إلخ.ملايين الطلبات في الثانية مع Kubernetes
اعتبارًا من يونيو من نفس العام (2016) ، كانت الخدمة في CERN لا تزال تتمتع بحالة ما قبل الإنتاج:
"نحن نتحرك تدريجيًا نحو وضع إنتاج كامل ليشمل الحاويات كخدمة في المجموعة القياسية لخدمات تكنولوجيا المعلومات المتاحة في CERN."
وبعد ذلك ، مستوحاة من
المنشور على مدونة Kubernetes حول خدمة مليون طلب HTTP في الثانية دون توقف أثناء تحديث الخدمة في K8s ، قرر مهندسو المؤسسة العلمية تكرار هذا النجاح في مجموعتهم على OpenStack Magnum و Kubernetes 1.2 وقاعدة أجهزة من 800 نواة CPU.
علاوة على ذلك ، قرروا عدم قصر أنفسهم على تكرار بسيط للتجربة وزادوا بنجاح عدد الطلبات إلى 2 مليون في الثانية ، وفي نفس الوقت إعداد عدة تصحيحات لنفس OpenStack Magnum وإجراء اختبارات بأعداد مختلفة من العقد في المجموعة (300 و 500 و 1000).

ولخص نتائج هذا الاختبار ، لاحظ المهندسون مرة أخرى أن "هناك أيضًا Swarm و Mesos ، ونخطط لإجراء اختبارات عليها قريبًا". سواء وصلت المسألة إلى هذه الاختبارات ، فإن الإنترنت غير معروف ، ولكن بحلول نهاية ذلك العام ، استمرت التجربة مع Kubernetes - مع 10 مليون طلب في الثانية. كانت النتيجة إيجابية للغاية ، ولكنها اقتصرت على علامة ناجحة تجاوزت قليلاً 7 ملايين - بسبب مشكلة في الشبكة لا تتعلق بـ OpenStack.
كما قام المهندسون المتخصصون في OpenStack Heat و Magnum بقياس أنه استغرق 23 دقيقة لتوسيع المجموعة من 1 إلى 1000 عقدة ، وتقييمها كنتيجة جيدة
(انظر أيضًا نحو نحو 10 آلاف حاوية في عرض OpenStack في OpenStack Summit Barcelona 2016) .
الحاويات في CERN: الانتقال إلى الإنتاج
في فبراير من العام التالي (2017) ، تم استخدام الحاويات في CERN على نطاق واسع بالفعل لحل المشكلات من مختلف المجالات: المعالجة المجمعة ، والتعلم الآلي ، وإدارة البنية التحتية ، والنشر المستمر ... تم الإعلان عن ذلك في تقرير "
OpenStack Magnum at CERN. توسيع مجموعات الحاويات إلى آلاف العقد "(
فيديو ) في FOSDEM 2017:

وأفادت أيضًا أن استخدام Magnum في CERN دخل مرحلة الإنتاج في أكتوبر 2016 ، وأكد مرة أخرى على دعم ثلاث أدوات للتنسيق: Kubernetes و Docker Swarm و Mesos. لماذا كان الأمر مهمًا للغاية ،
أوضح في أحد خطاباته (قمة OpenStack في بوسطن ، مايو 2017) ريكاردو روشا من قسم تكنولوجيا المعلومات في CERN:
"يسمح لنا Magnum أيضًا باختيار محرك حاوية ، والذي كان مفيدًا للغاية بالنسبة لنا. عملت مجموعات من الأشخاص الذين دافعوا عن Kubernetes في المنظمة ، ولكن كان هناك أيضًا أولئك الذين استخدموا بالفعل Mesos ، وبعضهم عملوا مع Docker المعتاد ، الذين يرغبون في الاستمرار في الاعتماد على Docker API ، ولدى Swarm إمكانات كبيرة هنا. أردنا تحقيق سهولة الاستخدام ، وليس مطالبة الناس بفهم الأنماط المعقدة لتكوين مجموعاتهم. "
في ذلك الوقت ، استخدمت CERN حوالي 40 مجموعة مع Kubernetes ، و 20 مع Docker Swarm ، و 5 مع Mesosphere DC / OS.
بعد مرور عام ، بحلول مايو 2018 ، تغير الوضع بشكل كبير. من
تجارب CERN مع عرض Kubernetes المتحد متعدد السحابة (
فيديو ) من قبل ريكاردو وزميله (Clenimar Filemon) في KubeCon Europe 2018 ، أصبحت التفاصيل الجديدة حول استخدام Kubernetes معروفة. الآن ليست مجرد واحدة من أدوات تنسيق الحاويات المتاحة لمستخدمي مؤسسة علمية ، ولكنها أيضًا تقنية مهمة للبنية التحتية بأكملها ، والتي تسمح - بفضل الاتحاد - بتوسيع سحابة الحوسبة بشكل كبير عن طريق إضافة موارد خارجية (GKE ، AKS ، Amazon ، Oracle ...) إلى قدراتها الخاصة.
ملاحظة : الاتحاد في Kubernetes هو آلية خاصة تبسط إدارة مجموعات متعددة من خلال مزامنة الموارد الموجودة فيها والكشف التلقائي عن الخدمات في جميع المجموعات. تعمل الحالة الفعلية لتطبيقه مع مجموعة متنوعة من مجموعات Kubernetes الموزعة عبر موفري خدمات مختلفين (مراكز البيانات الخاصة بهم ، والخدمات السحابية التابعة لجهات خارجية).كما ترى من هذه الشريحة ، والتي توضح بعض الخصائص الكمية لمركز بيانات CERN في جنيف ...

... نمت البنية التحتية الداخلية للمنظمة بشكل هائل. على سبيل المثال ، تضاعف عدد النوى المتاحة للسنة تقريبًا - بالفعل إلى 320 ألفًا. ذهب المهندسون إلى أبعد من ذلك وجمعوا العديد من مراكز البيانات الخاصة بهم ، بعد أن حققوا توفر 700 ألف نواة في سحابة CERN ، والتي تعمل في تنفيذ متوازي لـ 400 ألف مهمة (لإعادة بناء الأحداث ، ومعايرة أجهزة الكشف ، والمحاكاة ، وتحليل البيانات ، وما إلى ذلك) ...
ولكن في سياق هذه المقالة ، فإن حقيقة وجود 210 مجموعات Kubernetes بالفعل ، والتي اختلفت أحجامها بشكل كبير (من 10 إلى 1000 عقدة) ، هي ذات أهمية أكبر.
الاتحاد مع Kubernetes
ومع ذلك ، لم تكن القدرات الداخلية لـ CERN كافية دائمًا - على سبيل المثال ، لفترات من الاندفاعات الحادة للحمل: قبل المؤتمرات الدولية الكبيرة في الفيزياء وفي حالة الحملات الكبيرة لإعادة بناء التجارب. إحدى حالات الاستخدام الملحوظة التي تتطلب موارد كبيرة هي CERN Batch Service ، والتي تمثل حوالي 80٪ من موارد الحوسبة في المؤسسة.
في قلب هذا النظام ، يوجد إطار عمل مفتوح المصدر
HTCondor ، مصمم لحل مشاكل فئة HTC (الحوسبة عالية الإنتاجية). البرنامج الخفي StartD مسؤول عن الحسابات الموجودة فيه ، والتي تبدأ على كل عقدة وهي مسؤولة عن بدء عبء العمل عليه. كان هو الذي تم وضعه في حاوية في CERN بهدف إطلاقه على Kubernetes والمزيد من الاتحاد.
HTCondor من عرض CERN في KubeCon Europe 2018باتباع هذا المسار ، كان مهندسو CERN قادرين على وصف مورد واحد (
DaemonSet
مع حاوية حيث يتم بدء StartD من HTCondor) ونشره على عقد جميع مجموعات Kubernetes المتحدة: أولاً كجزء من مركز البيانات الخاص بها ، ثم توصيل موفرين خارجيين (السحابة العامة من T-Systems وشركات أخرى):

تطبيق آخر هو منصة تحليلية تعتمد على
REANA و
RECAST و
Yadage . على عكس خدمة CERN Batch Service ، وهي عبارة عن برنامج "راسخ" في المؤسسة ، يعد هذا تطورًا جديدًا أخذ في الاعتبار على الفور تفاصيل التطبيق مع Kubernetes. يتم تنفيذ سير العمل في هذا النظام بطريقة يتم فيها تحويل كل خطوة إلى
Job
for Kubernetes.
إذا تم تشغيل جميع هذه المهام في البداية على مجموعة واحدة ، فقد زادت الطلبات بمرور الوقت و "اليوم هو أفضل استخدام لحالات الاستخدام في Kubernetes." شاهد مقطع فيديو قصير مع عرضه في
هذا الجزء من خطاب ريكاردو روشا.
ملاحظة
يمكن العثور على معلومات إضافية حول المدى الحالي لاستخدام تكنولوجيا المعلومات في CERN على
موقع المنظمة على الويب .
مقالات أخرى من الدورة