2013-03-18 7 views
20

मुझे हाल ही में जेनकींस संचालित जावा प्रोजेक्ट मिला है जहां प्राथमिक डेवलपर बस ऊपर गया और छोड़ दिया गया। उन्होंने जेनकिंस डब्ल्यूएआर को वर्चुअल सर्वर पर टॉमकैट इंस्टेंस पर तैनात किया था, और यही वह "बिल्ड सर्वर" माना जाता था।नया जेनकिन्स दास कैसे स्थापित करें

इस बिल्ड सर्वर के पास एक और वर्चुअल सर्वर myserver.example.com पर निर्माण और तैनाती के लिए कॉन्फ़िगर किया गया था। सप्ताहांत में, सिस्टम स्टाफ शारीरिक सर्वर है कि myserver.example.com आभासी पर रहते थे सेवानिवृत्त, किसी भी जेनकींस काम है कि दास को तैनात करने के लिए कॉन्फ़िगर करने के लिए निम्न अपवाद उत्पादन:

enter image description here

मैं "देखें पर क्लिक करते हैं अधिक जानकारी के लिए लॉग इन करें "लिंक मैं निम्नलिखित कंसोल आउटपुट देखें: (myserver.example.com आभासी)

[03/18/13 08:13:31] [SSH] Opening SSH connection to myserver.example.com:22. 
java.io.IOException: There was a problem while connecting to myserver.example.com:22 
    at com.trilead.ssh2.Connection.connect(Connection.java:755) 
    at com.trilead.ssh2.Connection.connect(Connection.java:546) 
    at hudson.plugins.sshslaves.SSHLauncher.openConnection(SSHLauncher.java:650) 
    at hudson.plugins.sshslaves.SSHLauncher.launch(SSHLauncher.java:283) 
    at hudson.slaves.SlaveComputer$1.call(SlaveComputer.java:200) 
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) 
    at java.util.concurrent.FutureTask.run(FutureTask.java:138) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) 
    at java.lang.Thread.run(Thread.java:662) 
Caused by: java.net.NoRouteToHostException: No route to host 
    at java.net.PlainSocketImpl.socketConnect(Native Method) 
    at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:351) 
    at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:213) 
    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:200) 
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) 
    at java.net.Socket.connect(Socket.java:529) 
    at com.trilead.ssh2.transport.TransportManager.establishConnection(TransportManager.java:342) 
    at com.trilead.ssh2.transport.TransportManager.initialize(TransportManager.java:450) 
    at com.trilead.ssh2.Connection.connect(Connection.java:699) 
... 9 more 
[03/18/13 08:13:34] [SSH] Connection closed. 

यह समझ में आता है, गुलाम के बाद से ऑफ़लाइन है। हालांकि, जेनकींस के साथ कोई वास्तविक पिछले अनुभव नहीं होने के कारण, मुझे यकीन नहीं है कि जेनकिन्स मास्टर को नए नौकरियों में इन नौकरियों को बनाने/तैनात करने और नए दास को कैसे स्थापित करने के लिए उचित कदम हैं। उदाहरण के लिए, क्या मुझे नए गुलाम पर कुछ भी इंस्टॉल करने की आवश्यकता है, या किसी भी तरह का सेटअप/कॉन्फ़िगरेशन करना है? अग्रिम में धन्यवाद!

उत्तर

33

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

चरणों तो कर रहे हैं:

  1. क्लिक करें नए नोड
  2. करें बेवकूफ दास और कोई नाम दें (प्रतीकात्मक डोमेन नाम होने की जरूरत नहीं है, जो बाद में आता है) ठीक
  3. क्लिक करें और
  4. # निष्पादकों के एक साथ प्रक्रियाओं आप चाहते हैं की संख्या के साथ भरें विन्यास पृष्ठ पर जाएँ उस नोड पर जहाँ आप जेनकींस अपनी कार्यशील फ़ाइलों को स्टोर करना चाहते हैं का पूरा पथ के साथ रिमोट एफएस रूट में
  5. भरण (नहीं आवंटित सीपीयू कोर की संख्या से अधिक आम तौर पर) को चलाने के लिए
  6. वैकल्पिक रूप से लेबल जोड़ने यदि आप अपने सिस्टम में उन लोगों का उपयोग कर रहे हैं (कई मामलों में जरूरी नहीं है, लेकिन आपकी परियोजनाओं के लिए विशिष्ट नौकरियों के लिए निष्पादकों के पूल में कुछ लेबल होने की आवश्यकता हो सकती है)
  7. का चयन करें यूनिक्स मशीनों पर एसएसएच के माध्यम से यूनिक्स मशीनों पर लॉन्च करें लॉन्च विधि (यदि पहले से नहीं चुना गया है)
  8. होस्ट क्षेत्र है जो लॉन्च विधि लाइन

उपकरण है कि दास पर स्थापित कर रहे हैं बारे में कुछ मान्यताओं रहे हैं के नीचे दिखाई देता में पूरी तरह से योग्य डोमेन नाम रखो।यदि आपके पास विशेष टूल्स हैं, तो आपको उन्हें अलग से इंस्टॉल करने की आवश्यकता हो सकती है (या प्लगइन को देखें जो निष्पादन से पहले चलने वाले टूल को संभालते हैं)। हालांकि, यदि आपके नोड्स एक टेम्पलेट से बने होते हैं जिसमें आपके सभी बिल्ड टूल्स (जावा, चींटी इत्यादि) आपके मामले में हैं), तो चीजों को पाने के लिए आपको बस इतना करना होगा।

+1

@TheTerribleSwiftTomato प्लगइन अनुस्मारक के लिए धन्यवाद। – gaige

+0

मैंने टॉमकैट पर जेनकिन्स.वर फ़ाइल तैनात की है जो मेरी लिनक्स मशीन पर चलती है। मुझे विंडोज मशीन पर गुलाम स्थापित करने की ज़रूरत है। लेकिन मैं ऐसा करने में असमर्थ हूं। दास पर जेनकिन्स स्लेव विंडो कनेक्ट करने की कोशिश करती है लेकिन कनेक्ट नहीं होती है। कृपया –

+0

से ऊपर बताए गए 7 वें चरण में मुझे वास्तव में क्या करने की ज़रूरत है, मैंने टॉमकैट के बिना जेनकिन्स.वार चलाने की कोशिश की और यह विंडोज मशीन पर गुलाम स्थापित करने में सक्षम था। लेकिन मुझे जेनकिन्स पर टॉमकैट चलाने की ज़रूरत है। कृपया –

0

मुझे आपके द्वारा किए गए एक ही समस्या का सामना करना पड़ा, मेरे मामले में ऐसा इसलिए था क्योंकि मैंने उबंटू पर एक एसएसएच सर्वर स्थापित नहीं किया था।

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