ST-KEDA: Predictive Cost-Aware Autoscaling for Kubernetes Microservices via Spectral- Temporal Demand Forecasting
يُعد ST-KEDA إطار عمل للتوسيع التلقائي التنبئي والمدرك للتكلفة لخدمات Kubernetes المصغرة، حيث يدمج بين تفكيك الوضع المتغير والتنبؤ بـ LSTM التعاوني المدرك للطوبولوجيا مع تقدير التكلفة في الوقت الفعلي لتقليل تكاليف البنية التحتية وزمن استجابة التوسيع بشكل كبير مع الحفاظ على الامتثال الصارم لاتفاقية مستوى الخدمة (SLA).
البحث الأصلي مرخَّص بموجب CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). هذا شرح مولَّده بالذكاء الاصطناعي للبحث أدناه. لم يكتبه المؤلفون ولم يصادقوا عليه. وللتحقق من الدقة التقنية، يرجى الرجوع إلى البحث الأصلي. اقرأ إخلاء المسؤولية الكامل
غالبًا ما تعمل البرمجيات الحديثة ليس كبرنامج واحد ضخم، بل كمجموعة من الأجزاء الصغيرة والمستقلة التي تسمى "الخدمات المصغرة" (microservices). هذه الأجزاء تتواصل مع بعضها البعض باستمرار، مثل فريق من المتخصصين الذين يتبادلون الملاحظات لحل مشكلة معقدة. وللحفاظ على سير عمل هذا الفريق بسلاسة، يجب على الحواسيب التي تستضيفها أن تعدل قوتها تلقائيًا. إذا زار الموقع الكثير من الأشخاص في وقت واحد، يحتاج النظام إلى إضافة المزيد من العمال فورًا. وإذا انخفضت حركة المرور، يجب أن يستغني عن بعض العمال لتوفير المال. يُسمى هذا التعديل التلقائي "التحجيم التلقائي" (autoscaling). حاليًا، تنتظر معظم الأنظمة حتى ترى مشكلة — مثل بطء أوقات الاستجابة — قبل أن تتفاعل. وتستغرق هذه الاستجابة عدة دقائق، وهو تأخير يبدو كأنه دهر في العالم الرقمي، مما يتسبب في تجربة المستخدم لبطء أو أخطاء. علاوة على ذلك، غالبًا ما يفتقر الأشخاص الذين يديرون هذه الأنظمة إلى رؤية واضحة وفورية لتكلفة كل تعديل محدد، مما يجعل من الصعب الموازنة بين الأداء والميزانية.
قام فريق من الباحثين من جامعة مالتيميديا في ماليزيا بتطوير نظام جديد مصمم لحل هاتين المشكلتين في آن واحد. وقد أطلقوا على إطار عملهم اسم ST-KEDA. وبدلاً من انتظار تدفق حركة المرور ثم التفاعل معها، يحاول هذا النظام التنبؤ بالتدفق قبل حدوثه. كما يحتفظ بسجل مستمر للتكلفة لكل إجراء يتخذه، مما يسمح له باتخاذ قرارات توفر المال دون التضحية بالسرعة. اختبر الباحثون هذا النظام في مثالين واقعيين لبرمجيات معقدة: متجر تسوق عبر الإنترنت يتكون من أحد عشر خدمة مختلفة، ونظام حجز تذاكر قطار يتكون من واحد وأربعين خدمة. وتظهر نتائجهم أنه من خلال التطلع إلى الأمام وفهم التأثير المالي لكل خطوة، يمكن للنظام خفض تكاليف البنية التحتية بأكثر من الثلث مع تقليل عدد المرات التي يضيف فيها العمال أو يزيلهم بشكل محموم بشكل كبير.
يكمن جوهر المشكلة في كيفية مراقبة الأنظمة الحالية للمتاعب. تراقب الأدوات القياسية عبء العمل الحالي للحاسوب، مثل مدى انشغال المعالجات. وعندما يتجاوز عبء العمل خطًا معينًا، يطلب النظام المزيد من قوة الحاسوب. ومع ذلك، فإن الوقت المستغرق لملاحظة الارتفاع، وحساب الحاجة، وإيجاد حاسوب جديد، وتحميل البرنامج اللازم، وتشغيل العامل الجديد هو وقت كبير. في اختبارات الباحثين، استغرقت هذه العملية برمتها في المتوسط ما يقرب من خمس دقائق. خلال هذه النافذة الزمنية، يكون النظام مثقلًا، ويعاني المستخدمون. يغير النهج الجديد ST-KEDA الاستراتيجية من رد الفعل إلى الاستباق. فهو ينظر إلى تاريخ أنماط حركة المرور لتخمين ما سيحدث في الدقائق القليلة القادمة.
ولجعل هذه التخمينات دقيقة، يقوم النظام أولاً بتفكيك التاريخ المعقد لحركة المرور إلى قطع أبسط ومفهومة. تخيل تسجيلًا صاخبًا لشارع مزدحم؛ فهو يحتوي على همهمة ثابتة لحركة المرور، ونمط إيقاعي لساعة الذروة، وأصوات مفاجئة وحادة مثل بوق سيارة. استخدم الباحثون تقنية رياضية لفصل هذه الإيقاعات المختلفة عن الضجيج. ووجدوا أنه من خلال دراسة هذه الأنماط المنفصلة — الاتجاهات الثابتة، والدورات اليومية، والارتفاعات المفاجئة — يمكن للحاسوب فهم حركة المرور بشكل أفضل بكثير من مجرد النظر إلى البيانات الخام الفوضوية. سمح هذا الفصل لمحرك التنبؤ برؤية الهيكل الأساسي للطلب بدلاً من مجرد الفوضى.
ثم يستخدم النظام نموذج تعلم متطور يفهم كيف تعتمد الأجزاء المختلفة من البرمجيات على بعضها البعض. في بنية الخدمات المصغرة، غالبًا ما يؤدي جزء واحد إلى تشغيل جزء آخر. على سبيل المثال، قد يؤدي نقر المستخدم على "شراء" إلى التحقق من المخزون، والذي يؤدي بدوره إلى بدء عملية الدفع. إذا توقع النظام طفرة في نقرات "الشراء"، فإنه يعرف أن خدمات المخزون والدفع ستحتاج أيضًا إلى مزيد من القوة، حتى قبل أن تظهر علامات الانشغال على تلك الخدمات. ومن خلال رسم خرائط لهذه الاتصالات، يمكن للنظام إعداد سلسلة الخدمات بأكملها في وقت واحد. وهذا يمنع التأخير الذي يحدث عندما يكون جزء جاهزًا بينما لا يزال الجزء التالي في طور الاستيقاظ.
والأهم من ذلك، أن هذا النظام لا يهتم بالسرعة فحسب؛ بل يهتم بالسعر أيضًا. تفرض خدمات الحوسبة السحابية رسومًا بالدقيقة مقابل كل وحدة معالجة وذاكرة مستخدمة. وقد بنى الباحثون طبقة في نظامهم تحسب تكلفة كل قرار تحجيم في الوقت الفعلي تقريبًا. وبينما قد تستغرق كشوف الحساب التقليدية أيامًا للوصول، يقدر هذا النظام التكلفة في غضون ثوانٍ من اتخاذ تغيير ما. إنه يعرف بالضبط تكلفة تشغيل حاسوب جديد للساعة القادمة. وهذا يسمح للنظام باتخاذ مقايضة: يمكنه أن يقرر توفير المال من خلال إبقاء عدد العمال أقل قليلاً، وقبول فرصة ضئيلة لحدوث تباطؤ، أو يمكنه الإنفاق أكثر لضمان السرعة المثالية. اختبر الباحثون إعدادًا أعطى فيه النظام الأولوية لتوفير المال، ونجح في تقليل التكلفة الإجمالية لتشغيل المتجر عبر الإنترنت بنسبة 34.7 بالمائة.
كانت نتائج الاختبارات مذهلة. فمقارنة بالنظام التفاعلي القياسي، قلل النهج الجديد الوقت المستغرق للتكيف مع حركة المرور الجديدة من ما يقرب من خمس دقائق إلى ثماني ثوانٍ فقط. هذا النوع من السرعة يعني أن النظام نادرًا ما يتأخر. كما قاس الباحثون شيئًا يسمى "التذبذب" (flapping)، والذي يحدث عندما يبالغ النظام في رد فعله، فيضيف الكثير من العمال، ثم يزيلهم فورًا، ثم يضيفهم مرة أخرى. هذا التبديل المستمر هو أمر هدّار وغير مستقر. قلل النظام الجديد هذا السلوك الفوضوي بنسبة 96.6 بالمائة، مما خلق عملية أكثر سلاسة. وعندما سُمح للنظام بتجاهل مخاوف التكلفة والتركيز فقط على الأداء، انخفض عدد الاستجابات البطيئة إلى 2 بالمائ % فقط، وهو تحسن كبير مقارنة بنسبة 8 بالمائ % في النظام القياسي.
كما كشفت الدراسة أن المكونات المحددة لتصميمهم كانت جميعها ضرورية. فعندما أزالوا القدرة على تفكيك أنماط حركة المرور، أصبحت التنبؤات أقل دقة. وعندما أزالوا فهم كيفية اتصال الخدمات ببعضها البعض، فشل النظام في إعداد الأجزاء اللاحقة في السلسة في الوقت المناسب. وعندما أزالوا تتبع التكاليف، لم يعد بإمكان النظام إجراء المقايضات الذكية التي أدت إلى مثل هذه الوفورات الكبيرة. وجد الباحثون أن أفضل توازن تم تحقيقه عندما تم ضبط النظام للاهتمام بكل من التكلفة والسرعة، وقبول زيادة طفيفة في الاستجابات البطيئة لتحقيق وفورات مالية هائلة.
يُظهر هذا العمل أن إدارة أنظمة البرمجيات المعقدة لا يجب أن تكون لعبة "لحاق بالركب". فمن خلال الجمع بين الفهم العميق لكيفية تطور أنماط حركة المرور، وكيف تعتمد أجزاء البرامج المختلفة على بعضها البعض، ومدى تكلفة كل قرار بدقة، فمن الممكن تشغيل هذه الأنظمة بكفاءة أكبر وأرخص ثمنًا. اختبر الباحثون أفكارهم على نوعين مختلفين من التطبيقات، مما يشير إلى أن النهج قوي بما يكفي للتعامل مع أنواع مختلفة من أعباء العمل. وبينما تم اختبار النظام في بيئة سحابية محددة، فإن مبادئ التنبؤ بالطلب ودمج التكلفة في حلقة اتخاذ القرار تقدم مسارًا واضحًا لأي شخص يدير خدمات رقمية واسعة النطاق. إن مستقبل الحوسبة السحابية قد لا يتعلق فقط بامتلاك المزيد من القوة، بل بمعرفة متى وكيف تستخدمها بالضبط.
غارق في أبحاث مجالك؟
تصلك نشرة يومية بأحدث الأبحاث المطابقة لكلماتك البحثية المفتاحية — مع ملخصات تقنية، بلغتك.