प्राथमिक लक्ष्य सभी कठपुतली मॉड्यूल स्वचालित रूप से जोड़ना है, ताकि सभी देव-एनवी और प्रोड-एनवी एक कमांड के साथ शुरू किया जा सके। मैं कठपुतली मैनिफेस्ट के माध्यम से कठपुतली मॉड्यूल कैसे स्थापित कर सकता हूं?क्या मैं कठपुतली के माध्यम से कठपुतली मॉड्यूल स्थापित कर सकता हूं?
उत्तर
हम सभी तृतीय पक्ष मॉड्यूल को सिंक करने के लिए खुशी से librarian-puppet का उपयोग कर रहे हैं, यह मॉड्यूल के स्थानों और संस्करणों को सेट करने का समर्थन करता है। तो उत्पादन और देव सटीक एक ही कोड चलाते हैं। उपयोग एक लाइनर
librarian-puppet install
अन्य मामलों में हम एक खोल स्क्रिप्ट है कि कठपुतली दो बार, एक बार एक न्यूनतम मॉड्यूल है कि केवल आवश्यक मॉड्यूल को लाते समय के लिए जिम्मेदार है, और उसके बाद पूर्ण विकसित कठपुतली प्रवाह जब चलाता है में है सभी मॉड्यूल उपलब्ध हैं।
लगता है कि कठपुतली मॉड्यूल स्थापित करने के लिए मॉड्यूल लिखना संभव है - यह केवल puppet module
उपकरण के लिए रैपर होगा। हालांकि, मैंने अभी तक इस तरह के मॉड्यूल के बारे में नहीं सुना है।
मुझे लगता है कि स्थापना का यह तंत्र लोकप्रिय नहीं है क्योंकि अक्सर आपको स्थापित मॉड्यूल को संशोधित करने की आवश्यकता होती है, कुछ अनुकूलन करें। ऐसे संशोधनों के प्रबंधन के लिए व्यावहारिक उपकरण संस्करण नियंत्रण प्रणाली है। उदाहरण के लिए, हमारी टीम में हम गिट रिपोस्टिटरी में /etc/puppetlabs/puppet
निर्देशिका रखते हैं। Puppet फोर्ज से किसी भी मॉड्यूल की स्थापना के बाद हम अपनी फाइलें संस्करण नियंत्रण में जोड़ते हैं और इसे रिमोट गिट सर्वर पर दबाते हैं। हमारे आंतरिक रूप से विकसित मॉड्यूल भी इस भंडार में रखा जाता है। इस तरह, कई कठपुतली स्वामी (देव और प्रोड वातावरण) इस केंद्रीय भंडार के साथ सिंक्रनाइज़ किए जाते हैं और हमेशा सभी मॉड्यूल के अद्यतित संस्करण होते हैं।
"Puppet module" type and provider कि वास्तव में करता है:
module { 'author/mymodule':
ensure => present,
}
module { 'puppetlabs/stdlib':
ensure => '2.6.0',
}
module { 'puppetlabs/stdlib':
ensure => present,
modulepath => '/etc/puppet/modules',
}
कठपुतली के हाल के संस्करण भी एक puppet module
आदेश है कि आप Puppet forge, उदाहरण से मनमाना कठपुतली मॉड्यूल स्थापित करने के लिए अनुमति देता है:
$ puppet module install rcoleman/puppet_module
Notice: Preparing to install into /home/anarcat/.puppet/modules ...
Notice: Created target directory /home/anarcat/.puppet/modules
Notice: Downloading from https://forgeapi.puppetlabs.com ...
Notice: Installing -- do not interrupt ...
/home/anarcat/.puppet/modules
└── rcoleman-puppet_module (v0.0.3)
अन्य विकल्प शामिल :
r10k का समर्थन करता है अब कठपुतली Entreprise 2015.03 का हिस्सा है, तो यह निश्चित रूप से सबसे अच्छा अभ्यास माना जा सकता है।
यह आसान और बढ़िया लग रहा है, लेकिन कठपुतली – vikas027
के नए संस्करण के साथ [मुद्दों] (https://github.com/ryanycoleman/puppet_module_provider/issues/4) है @ vikas027 मैंने अन्य विकल्प जोड़े हैं जो अब उपलब्ध हैं, जिनमें 'कठपुतली मॉड्यूल' कमांड शामिल है और आर 10 के पर जोर दिया गया है। – anarcat
पुष्टि करें, – alekwisnia
मैं इस किया था और यह
exec { 'puppet-fstab':
path => '/bin:/usr/bin',
command => 'puppet module install -i /usr/share/puppet/modules/AlexCline-fstab >>/tmp/err.log',
}
समस्याओं के कारण 'rcoleman/puppet_module' से बचें बेशक मैं केवल यह ध्यान दूंगा कि मुझे यह काम करने के ठीक बाद, मुझे एहसास हुआ कि कठपुतली "माउंट" में बनाई गई है जो मैं चाहता था, इसलिए मैंने इस मॉड्यूल को हटा दिया , लेकिन उम्मीद है कि यह अन्य सही दिशा में किसी को इंगित करता है। –
काम करने के लिए लग रहा था यहाँ मेरा एक उदाहरण है:
$module_stdlib = 'puppetlabs-stdlib'
exec { 'puppet_module_stdlib':
command => "puppet module install ${module_stdlib}",
unless => "puppet module list | grep ${module_stdlib}",
path => ['/bin', '/opt/puppetlabs/bin']
}
कहाँ $ module_stdlib एक मॉड्यूल मैं स्थापित करने के लिए whant है। /bin
पथ एक पथ है जहां grep
आता है। और /opt/puppetlabs/bin
एक पथ है जहां कठपुतली बाइनरी के लिए मेरी स्थापना में मौजूद है।
यह काम करता है लेकिन उद्धरण और हाइफ़न से सावधान रहें! –
- 1. कैसे कठपुतली Apache2 मॉड्यूल
- 2. कठपुतली:
- 3. कठपुतली - आवेदन और मॉड्यूल
- 4. कठपुतली
- 5. कठपुतली - कठपुतली क्लाइंट नोड के लिए मॉड्यूल कैसे लागू करें?
- 6. कठपुतली
- 7. कठपुतली
- 8. कठपुतली नोड्स.पीपी मॉड्यूल निष्पादन आदेश
- 9. कठपुतली विरासत वीएस कठपुतली संरचना
- 10. कठपुतली निष्पादन कमांड शैल में चलता है, लेकिन कठपुतली
- 11. मॉड्यूल के बाहर से कठपुतली फाइलों को सोर्सिंग
- 12. कठपुतली कैसे कुछ सेकंड के लिए कठपुतली बनाने के लिए कठपुतली बनाने के लिए
- 13. पुपपेट बनाम कठपुतली?
- 14. कठपुतली मुद्दा चरण
- 15. कठपुतली निष्पादन प्रवाह
- 16. कठपुतली लेआउट स्विचिंग रणनीति
- 17. कठपुतली नियंत्रक बेस्ट प्रैक्टिस
- 18. कठपुतली नोड होस्टनाम
- 19. कठपुतली के साथ एन्कोडिंग नरक
- 20. कठपुतली प्रकट - 'सूडो' आदेश?
- 21. कठपुतली एजेंट सर्वर नहीं ढूंढ सकता
- 22. कठपुतली 4.3.2 क्लाइंट नोड एसएसएल के माध्यम से एसएसएल के माध्यम से चिपकने के लिए असमर्थ
- 23. क्या कठपुतली में "जोर देना" संभव है?
- 24. कैसे एक रीढ़ कठपुतली प्रारंभकर्ता
- 25. कठपुतली - प्रारंभ घटना फायरिंग नहीं
- 26. फ़ाइल बदलने से पहले मैं कठपुतली को एक सेवा कैसे रोक सकता हूं?
- 27. वैकल्पिक वर्गों के लिए कठपुतली रन ऑर्डरिंग
- 28. कठपुतली 3 फ़ाइल रिकर्स बहुत धीमी
- 29. क्या मैं स्थापित प्रिंटर से जुड़े आइकन को नेट के माध्यम से प्राप्त कर सकता हूं?
- 30. कठपुतली CompositeView: Uncaught ItemViewContainerMissingError: निर्दिष्ट `itemViewContainer` नहीं मिला था: कठपुतली के CompositeView का उपयोग करते समय
मैं अभी भी इस मॉड्यूल उद्देश्य को समझ नहीं सकता। लाइब्रेरियन भी कठपुतली मॉड्यूल स्थापित करता है न केवल कस्टम एक? गिट सब मॉड्यूल का उपयोग करते समय आप सभी को एक कमांड के साथ अपडेट कर सकते हैं? मानक कठपुतली मॉड्यूल स्थापित करने के लिए मैंने अभी install-me.sh स्क्रिप्ट बनाई है।बस बिना अतिरिक्त झगड़े के चेकआउट और रन विधि चाहते हैं। – holms
ठीक है तो यह मूल रूप से लाइब्रेरियन-शेफ के समान है। मैं शेफ में माइग्रेट हो गया हूं, लेकिन आपका उत्तर अभी भी वैध है – holms
ऐसा लगता है कि यह वास्तव में मूल प्रश्न का उत्तर नहीं देता है, क्योंकि मॉड्यूल * कठपुतली क्लाइंट द्वारा इंस्टॉल नहीं किया गया है, बल्कि किसी तृतीय-पक्ष टूल द्वारा। इसलिए उपयोगकर्ताओं को उस लाइब्रेरी को पहले स्थापित करने की आवश्यकता है, और आप इसे Puppet के साथ इंस्टॉल नहीं कर सकते! सबसे अच्छा समाधान कुछ कठपुतली क्लाइंट क्लाइंट में बनाया जाएगा ... – anarcat