تخطَّ إلى المحتوى

المدونة

توقف عن دفع تكاليف CI غير النشطة: GitLab Runners على Kubernetes

قم بتوسيع CI لتلبية ذروة يوم الاثنين، ثم قلل السعة ليلاً وأيام العطل — الدليل الخماسي الدقائق مع مقاطع فيديو توضيحية لكلا الأمرين.

  • Balinder Walia
  • قراءة في 2 دقيقة
  • Updated

معظم الفرق تدفع مقابل التكامل المستمر وكأن كل ليلة وكل عطلة نهاية أسبوع لا تزال صباح الاثنين.

GitLab Runners on Kubernetes — scale up by day, down at night

باختصار.خصّص للذروة، وألغِ الخصخصة في القاع. حاويات المهام المؤقتة تستعيد CPU والذاكرة والتخزين عند انخفاض الطلب — خاصة في الليالي وأيام العطلة — حتى لا تحدد مزرعة الاثنين فاتورة السبت.

شاهد الفيديوهات

1.

youtu.be/vURXfbvWK_0

2.

youtu.be/fu82hENYNEs·

عادة مكلفة

  • نهارًا:تزداد طلبات طلبات الدمج والاختبارات.
  • ليلاً:ينخفض النشاط؛ إلا أن الخوادم الثابتة لا تزال تستهلك CPU والذاكرة.
  • عطلة نهاية الأسبوع:غالبًا شبه خامل — ومع ذلك قد لا يزال يتم الفوترة للأقراص والعقد.

لا تدفع مقابل Builds تم إنجازها. تدفع مقابل السعة الموجودة سواء استخدمها أحد أم لا.

صورة أبسط

ينفّذRunnerمهام خط الأنابيب.Kubernetesيمكنه إنشاء هؤلاء العمال على شكل حاويات قصيرة العمر وحذفها عند انتهاء المهمة. وعند النطاق الضخم تنطبق نفس الفكرة على العقد: المزيد عندما تكون الطابور عميقة؛ أقل — مثاليًا ما يقرب من لا شيء — خلال الليل وأيام العطل.

من أين تأتي الوفورات الهائلة

  1. زد السعةعندما يعمل الناس (أو الروبوتات) — حاويات مهام متوازية حتى حدود التوازي وعقد المجموعة.
  2. قلل السعة بشدةعندما تختفي الطلبية — تختفي الحاويات؛ مع التلقائي في ضبط عقد المجموعة، تغادر العقد الفارغة المجموعة.
  3. توقف إهدار CPU والذاكرة والتخزينعلى أساطيل runners تعمل دائمًا خلال ساعات الهدوء.
  4. ادفع مقابل النتائج، لا الأثاث— احتفظ بـ GitLab ومدير runners رفيع؛ دع المزرعة تتبخر عند الخمول.

تظهر الوفورات الهائلة عندما لا يحدد ذروة يوم الاثنين فاتورة يوم الثلاثاء عند الساعة 3 صباحًا — وعندما تبدو صمت يوم السبت أخيرًا هادئًا في الفاتورة.

الوثائق الرسمية

اقرأ التالي:مقالة تقنية حول hyperscaleتتناول مسارات Operator مقابل Helm، والتزامن، وDinD، والرصد، وقائمة مراجعة FinOps. نموذج بناء الدورة:gitlab-runners-k3s-hyperscale-course.prompt.mdفي مستودع موقع TenthMatrix (يحل محل رابط devops.git المتقاعد).

نُشرت بواسطةTenthMatrix.