2014-07-06 6 views
7

मैं एक बड़े संगठन के लिए जेनकींस को स्केल करने की कोशिश कर रहा हूं। क्या कई जेनकिन्स स्वामी एक गुलाम पूल साझा करने का कोई तरीका है? उदाहरण के लिए, अगर मेरे पास 200 जेनकींस मास्टर्स थे और मैं चाहता हूं कि वे 50 लिनक्स दासों के एक ही सेट को साझा करें।एक साझा स्लेव पूल का उपयोग कर एकाधिक जेनकींस परास्नातक

यह मानते हुए कि प्रत्येक दास में केवल 1 निष्पादक है, यदि मास्टर ए दास पूल में नौकरी जमा करता है और यह गुलाम 1 पर चल रहा है, यदि मास्टर बी दास पूल में नौकरी जमा करता है, तो वह दौड़ने की कोशिश करेगा स्लेव 1 पहले ही कब्जा कर लिया गया है, क्योंकि अन्य मुक्त दासों में से एक।

मुझे पता है कि एकाधिक स्वामी एक गुलाम को साझा कर सकते हैं अगर मैंने दास को प्रत्येक मास्टर के लिए एक नया वर्कस्पेस और निष्पादक रखने के लिए कॉन्फ़िगर किया। हालांकि, मैं दास को एक बार गुलाम बनाने में सक्षम होना चाहता हूं, दास.जर प्रत्येक मास्टर के लिए गुलाम पर चल रहा है।

क्लाउडबीस ओप सेंटर इस कार्यक्षमता को प्रदान करता प्रतीत होता है, लेकिन ओपन सोर्स संस्करण के साथ ऐसा करने का एक तरीका ढूंढ रहा है। यदि नहीं, तो आपको यह समझने में कितना मुश्किल लगता है कि यह कार्यक्षमता रखने के लिए जेनकींस का विस्तार करना होगा? मेरे पास जावा विकास का अनुभव है और जेनकींस प्लगइन विकास के साथ थोड़ा सा काम किया है।

धन्यवाद,

उत्तर

8

आप इसे स्वामी, सेटअप एकाधिक कार्यस्थान और प्रत्येक मास्टर के बीच दास साझा करने के लिए यह खुद दास जार है स्थापित हो जाएगा मुश्किल नहीं है ध्यान दिया है। चाल संसाधनों को सही तरीके से साझा करना है।

ऐसा एक संसाधन प्रबंधक Apache Mesos है। एक Jenkins Mesos plugin एक प्रबंधित क्लस्टर पर दासों के निर्माण को सक्षम करने में सक्षम है।

यह दृष्टिकोण बहुत नया है और ईबे कैसे वे अपने जेनकींस सेटअप विकसित किया है Mesos का उपयोग करने पर भी ब्लॉग किया है:

आशा इस मदद करता है।

+0

इसके लिए धन्यवाद, यह वास्तव में दिलचस्प लगता है। इस में अभी तक बहुत कुछ खोला नहीं है, लेकिन यह निश्चित रूप से हम जो कुछ करना चाहते हैं उसके साथ संरेखित करना प्रतीत होता है। इस में खुदाई करेंगे, फिर से धन्यवाद। – mpstack

+0

@ mark-oconnor दो और वर्षों के बाद, क्या आप पुष्टि कर सकते हैं कि मेसोस दृष्टिकोण अभी भी काम करता है और उत्पादन में अच्छी तरह से स्केल करता है? चिंता करने के लिए कोई चीज है? – sorin

+0

@sorin तकनीक में दो साल का जीवनकाल है :-) इन दिनों मैं क्यूबेर्नेट्स पर एक कंटेनर के रूप में जेनकिंस चलाता हूं, कुबेरनेट प्लगइन गुलाम नौकरियों को चलाने के लिए। –

2

कई मास्टर द्वारा साझा करने वाले दासों को संभालने के लिए ओपन स्टैक द्वारा विकसित Gearman Plugin है।

+2

दुर्भाग्य से यह प्लगइन पर स्विच करते समय ~ 2000 नौकरियों के साथ एक विशाल ओवरहेड और हमारे जेनकींस मास्टर प्रदान करता है और 32 गुलामों ने जवाब देना बंद कर दिया। यह भी कहा जाता है, यह मैट्रिक्स परियोजनाओं के साथ काम नहीं करता है। –

0

यदि यह मैं था, तो मैं दासों के लिए क्लाउड प्लगइन के साथ सभी स्वामी स्थापित करता। उदाहरण के लिए, आप kubernetes plugin या nomad plugin इंस्टॉल कर सकते हैं और सभी स्वामी को उसी कुबर्नेट या नोमाड क्लस्टर तक कनेक्ट कर सकते हैं। Nomad या Kubernetes संसाधन प्रबंधन का ख्याल रखेगा, और स्वामी केवल संसाधनों के साझा पूल में नौकरियां जमा करेंगे। इस अवधारणा को आसानी से अन्य क्लाउड प्रदाताओं जैसे एडब्ल्यूएस पर लागू किया जा सकता है, लेकिन आईएमएचओ अगर आप अपने जेनकिंस मास्टर्स के लिए संसाधनों का ऑन-प्री पूल सेट करना चाहते हैं, तो नामांकन सबसे आसान विकल्प है।

संबंधित मुद्दे