س: ما هي Jenkins؟

‏Jenkins‏ هي مفتوحة المصدر أداة للدمج المستمر مكتوبة بلغة Java. وهي تقدم خدمات دمج مخصصة لتطوير البرامج. وتعد نظامًا قائمًا على الخوادم يستخدمه الكثير من فرق التطوير.

س: لماذا يجب علي استخدام Jenkins؟

يجب أن تستخدم Jenkins إذا كنت تسعى إلى تسريع دورة حياة تطوير البرامج الخاصة بك (SDLC). تسمح لك Jenkins بدمج البناء والنشر والاختبار على بيئات مختلفة، مع التقليل من أوقات الانتظار لفرق التطوير الخاصة بك. وأخيرًا، وبسبب أنها تسمح لك بأن تقوم بالدمج بشكل مستمر، فقد تم تصميم Jenkins لتناسب DevOps والمنهجيات المرنة التي تستخدم دورات تكرار سريعة.

س: لماذا يجب علي تشغيل Jenkins على AWS؟

توفر AWS موارد للبنية الأساسية آمنة وقابلة للضبط ويمكن الاعتماد عليها، كما أنها مثالية لتشغيل التطبيقات مثل Jenkins. عن طريق تشغيل Jenkins على AWS compute، أنت تدفع فقط مقابل ما تستخدمه وتستطيع ضبط السعة لأعلى أو لأسفل لتتماشى مع احتياجاتك الخاصة.

س: هل سأمتلك بيئة Jenkins الخاصة بي؟

نعم - تظل جميع الموارد التي تم إنشاؤها عند تنفيذ دليل «بدء الاستخدام» هذا ملكك وستبقى حية في حسابك. ستتواجد حتى تقرر إنهاء مثيل Amazon EC2.

س: ما هي تكلفة Jenkins؟

تعد Jenkins برنامجًا مجانيًا مفتوح المصدر. التكلفة الوحيدة التي تتحملها هي البنية التحتية الأساسية التي تعمل عليها Jenkins. للمزيد من المعلومات حول التكلفة، راجع الخدمات المستخدمة والتكاليف.

س: كيف يمكنني تأمين Jenkins على AWS؟

يجب أن تستفيد من مجموعات الأمان وتستخدم كلمات مرور قوية. يجب عليك أيضًا أن تتأكد من حداثة تثبيت كلٍ من مثيل EC2 وJenkins لديك مع أحدث تصحيحات الأمان. تعمل مجموعات الأمان باعتبارها جدران حماية افتراضية ذات حالة فعّالة تتحكم في حركة المرور لمثيل واحد أو أكثر. إذا أمكن الأمر، قم بتقليص نطاق عنوان IP ليشمل فقط عناوين IP المصدرية ذات الصلة. لا تفتح أي منافذ TCP أو UDP طارئة (TCP 80 و8080 كافيان) عند إنشاء كلمات مرور لـ Jenkins، اتبع أفضل الممارسات المعتادة لكلمة المرور واستخدم أحرفًا أبجدية عددية صغيرة وكبيرة، بالإضافة إلى رموز (مثل، /، .، !، *...). تستطيع أن تتأكد أن أحدث الحزم مثبّتة على مثيل Amazon Linux عن طريق تشغيل تحديث yum. سيقوم هذا أيضًا بتحديث Jenkins إذا قمت بتثبيته باستخدام yum، كما هو مذكور في تعليمات هذا الدليل.

س: هل يمكنني تشغيل Jenkins في شبكة فرعية خاصة؟

تستطيع تثبيت Jenkins على مثيل EC2 يكون جزءًا من شبكة فرعية عامة أو خاصة. إذا كنت ترغب في وضع المثيل في شبكة فرعية خاصة، ستحتاج إلى التأكد من أنك تستطيع الوصول إلى الواجهة الأمامية لـ Jenkins. إذا كنت تقوم بالاتصال من خلال الإنترنت، تستطيع اختيار أن تقوم بإنشاء المجموعة المستهدفة لـ Jenkins واستخدام ‏Application Load Balancer‏ لإنشاء نقطة نهاية عامة لمثيلك الذي تتم استضافته بشكل خاص. إذا كنت تقوم بالاتصال من مركز البيانات الخاص بك، فسترغب في إنشاء ‏VPN‏ أو الاتصال بـ Jenkins من خلال الاتصال المباشر.

س: كيف يمكنني مواءمة Jenkins؟

هناك بعض الطرق لتتأكد من أن Jenkins سيوكب احتياجاتك من التكامل المستمر (CI)/التسليم المستمر (CD). الطريقة المباشرة هي مواءمة مثيل EC2 بشكل عمودي عن طريق تغيير حجم المثيل. هناك طريقة أخرى وهي تكوين المكون الإضافي لـ ‏Jenkins Amazon EC2 Container Service‏ من أجل توكيل مهمات البناء إلى المهمات الشاقة لدى Jenkins على إحدى مجموعات ECS.