2012-10-09 10 views
5

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

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

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

उत्तर

4

हाथ से बने परिवर्तन और प्रावधान हाथ नहीं लेते हैं। वे एक साथ चाय भी नहीं पीते हैं।

काम में हम सभी arquitecture प्रबंधन करने के लिए कठपुतली का उपयोग करें, और आप के रूप में हम हाथ निष्पादन की कमियाँ, हमलों आदि के कारण जल्दी में परिवर्तन किए क्या करने की जरूरत

क्या हम पहले यह सुनिश्चित करें कठपुतली में सक्षम है बनाना रहा है किसी भी विशिष्ट ट्यूनिंग के बिना वितरित करने के लिए तैयार आर्किटेक्चर के हर हिस्से को सेट करने के लिए।

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

इन परिवर्तनों को एक ही लक्षण के साथ सभी सर्वरों के लिए लागू किया जाना चाहिए:

के बाद जल्दी समाप्त हो गया है, हम इस प्रकार आगे बढ़ना?

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

ये परिवर्तन हमेशा लागू किए जाने चाहिए दिए गए आपात स्थिति पर हाथ से?

अगर कॉन्फ़िगरेशन कठपुतली द्वारा प्रबंधित किया जाता है, तो कॉन्फ़िगरेशन को अन्य फ़ाइल शामिल करने का तरीका ढूंढें और कठपुतली को इसे अनदेखा करने के लिए कहें। यह सबसे आसान तरीका है, हालांकि यह हमेशा संभव नहीं होता है (उदा।/Etc/network/interfaces का समर्थन नहीं करता है)। यदि यह संभव नहीं है, तो आपको अगली कठपुतली चलाने पर हटाए जाने के जोखिम के बिना कठपुतली फ़ाइलों को बदलने में सक्षम होने के लिए आपात स्थिति के दौरान कठपुतली एजेंट को रोकना होगा।

क्या यह केवल इस होस्ट के लिए बदलता है और किसी अन्य होस्ट को कभी इसकी आवश्यकता नहीं होगी?

इसे कठपुतली में जोड़ें! $ Fqdn == my.very.specific.host अगर एक मीठा रखें और जो कुछ भी आपको चाहिए उसे अंदर रखें। यहां तक ​​कि एक ही मामले के लिए यह हमेशा सर्वर पर किए गए सभी परिवर्तनों को माइग्रेट करने के लिए फायदेमंद (और समय लेने वाला) होता है, क्योंकि आपको किसी सर्वर कारण से पुनर्प्राप्त करने योग्य स्थिति (उदा।हार्डवेयर से संबंधित समस्याओं)

सारांश में:

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

+2

शेफ के साथ काफी समान है। _______ Ps। आप/etc/network/interfaces में शामिल कर सकते हैं :) (http://manpages.ubuntu.com/manpages/oneiric/man5/interfaces.5.html) में "स्रोत" ढूंढें) या अपनी कॉन्फ़िगरेशन/etc/network में जोड़ें /if-(up|down).d/ निर्देशिका :) –

2

मैं वैलोर के उत्कृष्ट उत्तर को पूरा करना चाहता हूं।

कठपुतली एक विन्यास को लागू करने के लिए एक उपकरण है। तो अगर आप इसे इस तरह सोचना चाहिए:

    मशीन मैं पर कठपुतली चलाने पर
  • ...
  • मैं कठपुतली ग्राहक पूछते हैं ...
  • सुनिश्चित करना है कि वर्तमान मशीन की config ...
  • के रूप में कठपुतली config में निर्दिष्ट किया जाता ...
  • जो सीधे कठपुतली फाइलों का एक समूह (आसान)

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

वैलर मानते हैं कि आप क्लाइंट/सर्वर के रास्ते में कठपुतली का उपयोग करते हैं, उदाहरण के लिए (कठपुतली) कठपुतली क्लाइंट हर घंटे कॉन्फ़िगरेशन के लिए कठपुतली सर्वर मतदान करते हैं। लेकिन मशीन पर मशीन से अपनी कठपुतली फ़ाइलों को स्थानांतरित करना भी संभव है, उदाहरण के लिए गिट के साथ, और मैन्युअल रूप से लॉन्च कठपुतली। इस तरह से है:

  1. क्लाइंट/सर्वर तकनीक की तुलना में बहुत आसान (प्रमाणीकरण सिर में दर्द है)
  2. केवल config परिवर्तन को लागू जब आप स्पष्ट रूप से, यह के लिए पूछने के इस प्रकार आपके हस्तनिर्मित के किसी भी अधिलेखित परहेज बदलता है

यदि आप बहुत सारी मशीनों का प्रबंधन करते हैं तो यह कठपुतली का उपयोग करने का सबसे अच्छा तरीका नहीं है, लेकिन यह एक अच्छी शुरुआत या एक अच्छा संक्रमण हो सकता है।

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

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