मैं कई मशीनों पर कुशलता से उपयुक्त प्रबंधन कैसे कर सकता हूं?


11

मैं कठपुतली का उपयोग कर लगभग 30 Ubuntu सर्वर का प्रबंधन करता हूं। मैंने अपने पैकेजों को अद्यतित रखने के लिए दृष्टिकोण के रूप में क्रोन-एप्ट और एन्टीट्रॉन के कई संदर्भ देखे हैं, लेकिन मैं इस प्रक्रिया को केंद्रीय रूप से प्रबंधित करने का तरीका नहीं खोज पाया हूं। Cront-apt / apticron के साथ मुझे अभी भी प्रत्येक होस्ट में लॉग इन करना होगा और aptitude updateअपडेट को चलाने के लिए रन करना होगा। जब भी कोई कोर पैकेज अपडेट किया जाता है, सभी 30 मशीनों से समीक्षा सूचनाओं का उल्लेख नहीं करना चाहिए।

कोई बेहतर तरीका ज़रूर होगा। कोई सुझाव?

जवाबों:


3

लैंडस्केप आपके लिए रुचि का हो सकता है। यह बड़े उबंटू तैनाती को प्रबंधित करने के लिए "आधिकारिक" प्रबंधन उपकरण है, और कैनोनिकल शायद इसके उपयोग के लिए आपके डॉलर प्राप्त करने के लिए बहुत उत्सुक है।

फिर से संपादित:

सबसे पहले, एक अस्वीकरण; मैंने डेबियन या उबंटू के लिए मिररिंग का उपयोग नहीं किया है, इसलिए मैं सॉफ्टवेयर से परिचित नहीं हूं।

दूसरा, ऐसा प्रतीत होता है कि उपयुक्त-दर्पण "बहुत भारी" एक समाधान होगा, मेरी क्षमायाचना। मूल विचार यह था कि आपके पास अपडेट को तैनात करने के लिए एक अलग परीक्षण मशीन (या परीक्षण वातावरण, शायद एक आभासी मशीन?) होगी। एक बार जब आप अपडेट के प्रदर्शन से संतुष्ट हो जाते हैं, तो आप पैकेज को अपने "परिनियोजित" दर्पण में खींच लेंगे / डाल देंगे (आधिकारिक स्रोतों से स्थानीय दर्पण होगा, और सिर्फ उन अपडेट के लिए एक द्वितीयक दर्पण जो आप तैनात करना चाहते हैं)। दूरस्थ मशीनें तब एक पूर्व-निर्धारित समय पर एक अपडेट चलाती हैं और इसे प्रत्येक मशीन पर आपके "परिनियोजित" दर्पण से खींचती हैं, एक क्रॉन जॉब:

apt-get update && apt-get upgrade --quiet --assume-yes

दुर्भाग्य से, जैसा कि मैंने विवरणों के माध्यम से पढ़ना शुरू किया, ऐसा लगता है कि apt-mirrorसभी प्रकार के सामान को खींच लेंगे और न केवल आपके द्वारा तैयार किए गए पैकेज। इसलिए, मैं इस विचार को त्यागने जा रहा हूं, हालांकि अवधारणा में कुछ योग्यता है।


लैंडस्केप दिलचस्प लग रहा है। मुझे उस पर और करीब से देखना होगा। मैं स्थानीय एपर्ट मिरर को चलाने के तरीके पर स्पष्ट नहीं हूं (जो मैं वर्तमान में करता हूं) मुझे लंबित अपडेट को मंजूरी / समीक्षा करने में मदद करेगा। क्या आप स्पष्ट कर सकते हैं?
19

14

एक सहकर्मी ने खोजा और संक्षिप्त रूप से एप्ट-डिटर में देखा, जो "टर्मिनल-आधारित रिमोट पैकेज अपडेट मैनेजर" है।

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

प्रबंधित मशीनों पर ssh और sudo पर निर्भर करता है।

देखें http://www.ibh.de/apt-dater/

स्वयं इसका उपयोग नहीं किया है, इसलिए मैं इसका समर्थन नहीं कर सकता, लेकिन यह वही है जो आप खोज रहे हैं।


यह बहुत ही आशाजनक लग रहा है। Insyte, मैं अपने दम पर इस जवाब की सिफारिश करने जा रहा हूँ। जब आप मेरे द्वारा बताए गए सभी चरणों को कर सकते हैं, तो क्या आप वास्तव में उस समय का निवेश करना चाहते हैं, जब आप शायद इसके बारे में बहुत जल्दी सेटअप कर सकते हैं और बस जीवन के साथ आगे बढ़ सकते हैं? @ जेफ़, एक अच्छे सुझाव के लिए +1।
एवेरी पायने

4

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


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

2
कठपुतली पैकेज प्रकार हर मशीन पर सभी पैकेज क्यों स्थापित करेगा? आप प्रत्येक पैकेज के लिए स्टैंजस को संबंधित वर्ग या परिभाषित प्रकार में रखते हैं, इसलिए यह केवल उपयुक्त मशीन (एस) पर स्थापित होता है। यदि आप संस्करण सूची को एक फ़ाइल में केंद्रीकृत करना चाहते हैं, तो आभासी संसाधनों की एक बड़ी सूची रखें और फिर उन्हें आवश्यक होने का एहसास करें।
Womble

2

क्लस्टर्सश पर एक नज़र डालें (apt-get install क्लस्टर्सश):

$ cssh server1 server2 server3 ...


1
यह वास्तव में अभी भी 10.9.3 में काम करता है ... यह इसका उपयोग करने के लिए प्रफुल्लित करने वाला है
जोनाथन एस। फिशर

1

पहले से इसके बारे में वास्तव में विचार किए बिना, मेरा पहला विचार कुछ ऐसा ही होगा जैसा कि एवरी ने सुझाव दिया है, खासकर यदि आपके पास पहले से ही एक परीक्षण एनवायरनमेंट है।

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

Apticron अच्छी तरह से पैमाने पर नहीं है, इसे बहुत छोटे वातावरण में चलाने के लिए डिज़ाइन किया गया है, लेकिन इसमें कुछ अच्छे बिंदु हैं:

  • यह आपको सिर्फ एक सूची नहीं भेजता है, बल्कि संकुल के उन्नयन के लिए चैंज भी करता है।
  • चैंज को प्राप्त करने के लिए यह संकुल को डाउनलोड करता है, इसलिए जब आप अपग्रेड करते हैं तो आपको उन्हें डाउनलोड करने के लिए इंतजार नहीं करना पड़ता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.