المصعد هو دفعة أو وظيفة تلقائية أفقية محسنة لـ Kubernetes
إنه مصمم لأعباء العمل الكبيرة أو الوظيفية التي لا يمكن استنباطها ونقلها عندما تحتاج الكتلة إلى تقليصها - سيضمن سدد التحفيز الانتهاء من العقد قبل إنهاءها. تم تحسينه أيضًا لزيادة المجموعة بأسرع وقت ممكن لضمان عدم ترك القرون في حالة معلقة.
حساب الطلبات والقدرة على تحديد ما إذا كان سيتم توسيع نطاق أو لأسفل أو للبقاء على المقياس الحالي
ينتظر حتى يتم الانتهاء من قرون غير Daemonset على العقد قبل إنهاء العقدة
تم تصميمه للعمل على مجموعات تحديد تلقائية محددة للسماح لـ Kubernetes Autoscaler الافتراضي بمواصلة زيادة أعباء العمل القائمة على الخدمة
إنهاء أقدم العقد تلقائيًا أولاً
دعم للمساحة Slack لضمان مساحة إضافية في حالة وجود ارتفاع في القرون المجدولة
لا ينهي العقد أو العوامل المطيلة في العمليات الحسابية - يسمح للعقد المطيلة بالاستمرار في تصحيح الأخطاء
دعم لمقدمي الخدمات السحابية المختلفين - AWS فقط في الوقت الحالي
مقاييس التحجيم والاستخدام
الانتخابات القائد حتى تتمكن من تشغيل نشر HA داخل الكتلة.
الدعم الأساسي لأنواع مختلفة من الحالات في مجموعة العقدة.
الحاجة إلى هذا التلقائي مشتقة من تجاربنا الخاصة مع أعباء عمل كبيرة جدًا يتم تحديد موعدها ، ولا يقوم Autoscaler الافتراضي بزيادة المجموعة بسرعة كافية. لا يمكن أن يتم استخلاص أعباء العمل هذه من قِبل Autoscaler الافتراضي ويجب إكمالها قبل إنهاء العقدة.
انظر المستندات
إصدار Kubernetes 1.24+. تم اختبار المصعد ونشره على 1.24+ وأحدث. قد تحتوي الإصدارات الأقدم من Kubernetes على أخطاء أو مشكلات ستمنعها من العمل بشكل صحيح.
GO الإصدار 1.20+
يمكن العثور على التبعيات والإصدارات المقفلة في go.mod
و go.sum
.
# جلب التبعيات وبناء بناء escalatormake
GO RUN CMD/MAIN.GO -KUBECONFIG = ~/.KUBE/config -nodegroups = nodegroups_config.yaml
انظر النشر لتوثيق النشر الكامل.
# بناء docker imagedocker build -t atlassian/exalator. # إنشاء deploymentkubectl إنشاء مستندات -f/نشر/سلم -deployment.yaml
انظر التكوين
اجعل الاختبار
على سبيل المثال ، لاختبار حزمة وحدة التحكم:
اذهب اختبار ./pkg/controller
سحب الطلبات والقضايا والتعليقات ترحيب. لطلبات السحب:
أضف اختبارات للميزات الجديدة وإصلاحات الأخطاء
اتبع النمط الحالي (نحن نستخدم Goreturns لتنسيق و LINT Seceralator)
منفصل تغييرات غير ذات صلة في طلبات سحب متعددة
راجع القضايا الحالية لبدء المساهمة.
للحصول على تغييرات أكبر ، تأكد من بدء مناقشة أولاً من خلال إنشاء مشكلة وشرح التغيير المقصود.
يتطلب Atlassian المساهمين في توقيع اتفاقية ترخيص المساهم ، والمعروفة باسم CLA. هذا بمثابة سجل يفيد بأن المساهم يحق له المساهمة في الكود/الوثائق/الترجمة إلى المشروع وهو على استعداد لاستخدامه في التوزيعات والأعمال المشتقة (أو على استعداد لنقل الملكية).
قبل قبول مساهماتك ، نطلب منك اتباع الرابط المناسب أدناه للتوقيع رقميًا على CLA. CLA الشركات هي لأولئك الذين يساهمون كعضو في المنظمة و CLA الفردية هو لأولئك الذين يساهمون كفرد.
CLA للمساهمين الشركات
CLA للأفراد
حقوق الطبع والنشر (C) 2018 Atlassian وغيرها. Apache 2.0 مرخص ، انظر ملف الترخيص.