Ansible उन्नत होस्ट सूची सूची

Ansible Unnata Hosta Suci Suci



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

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







पूर्वापेक्षाएँ:

Ansible में होस्ट लिस्ट इन्वेंट्री कमांड को लागू करने से पहले निम्नलिखित आवश्यकताएं हैं:



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

उदाहरण: मशीन में होस्ट लिस्ट इन्वेंटरी

यहां वह उदाहरण दिया गया है जिसे हम होस्ट लिस्ट इन्वेंट्री की जांच या परिभाषित करने के लिए Ansible टूल में लागू करते हैं। उसके लिए, हम इस उदाहरण को विभिन्न चरणों में करेंगे ताकि हम इस ट्यूटोरियल की कार्यप्रणाली और कार्यान्वयन को आसानी से समझ सकें। निम्नलिखित चरण हैं:



चरण 1: लक्ष्य दूरस्थ होस्ट डिवाइस में डिफ़ॉल्ट होस्ट सूची सूची की जाँच करें





सबसे पहले, हम जाँचते हैं कि Ansible टूल की इन्वेंट्री में कितने होस्ट हैं। उसके लिए, हम '-लिस्ट-होस्ट' के साथ 'अंसिबल' स्टेटमेंट को नियोजित करते हैं ताकि हम इन्वेंट्री में डिफ़ॉल्ट हैंडल किए गए नोड्स को प्रदर्शित कर सकें।

[ जड़ @ मास्टर जवाब देने योग्य ] # ansible all --list-hosts



यहाँ पिछली कमांड लिखने के बाद आउटपुट है:

Ansible टर्मिनल '0 होस्ट' प्रदर्शित करता है जैसा कि आप प्रदान की गई प्रतिक्रिया में देख सकते हैं क्योंकि हमने इन्वेंट्री घोषित नहीं की है। हम इसे संबोधित करने से पहले टर्मिनल में होस्ट की इन्वेंट्री को सूचीबद्ध करने के लिए इन्वेंट्री तैयार करते हैं।

डिफ़ॉल्ट इन्वेंटरी:

जब हम Ansible को सॉफ़्टवेयर में स्थापित करते हैं, तो Ansible एक इन्वेंट्री फ़ाइल बनाता है जो टर्मिनल में निम्नलिखित कथन लिखकर पाई जाती है:

[ जड़ @ मास्टर जवाब देने योग्य ] # सूडो नैनो /etc/ansible/hosts

परिणाम तब उत्पन्न होता है जब हम पिछला कथन लिखते हैं। फिर, यह आपसे पासवर्ड दर्ज करने के लिए कहता है:

इस स्नैपशॉट में, डिफॉल्ट अन्सिबल होस्ट्स फाइल अनग्रुप्ड होस्ट्स और वेबसर्वर्स ग्रुप होस्ट्स के बारे में जानकारी प्रदान करती है। इन होस्ट में URL और विभिन्न IP पते शामिल होते हैं।

चरण 2: कस्टम इन्वेंट्री को Ansible में परिभाषित करें

Ansible में, हम Ansible टर्मिनल में कई स्टेटमेंट लिखकर अपनी इन्वेंट्री को भी परिभाषित कर सकते हैं। स्टेटमेंट और प्लेबुक चलाते समय इन्वेंट्री को परिभाषित करना एक बुद्धिमान निर्णय है जो मेजबानों से जुड़ने और मेजबानों से जुड़ने के दौरान विफलता को रोकता है।

अपने दम पर इन्वेंट्री को परिभाषित करना शुरू करने के लिए, हम पहले निम्नलिखित स्टेटमेंट लिखते हैं ताकि हम अन्सिबल में इन्वेंट्री बना सकें और उसमें होस्ट्स को सूचीबद्ध कर सकें ताकि हम अन्सिबल कंट्रोलर और लक्षित रिमोट होस्ट्स के बीच संबंध बना सकें।

[ जड़ @ मास्टर जवाब देने योग्य ] # नैनो होस्ट्स.आईएमएल

पिछले कथन को लिखने के बाद, सूची 'hosts.yml' शीर्षक के साथ एक नए Ansible टर्मिनल में बनाई और लॉन्च की जाती है। अगला, हम लक्षित मेजबानों को एक-एक करके सूची में सूचीबद्ध करते हैं। सबसे पहला होस्ट जिससे हम जुड़ते हैं वह एक लिनक्स होस्ट है। हम Linux होस्ट का IP पता, Ansible उपयोगकर्ता, Ansible पासवर्ड, कनेक्शन का प्रकार और Ansible पोर्ट नंबर प्रदान करते हैं। हम दूसरे टारगेट होस्ट के साथ भी ऐसा ही करते हैं। दूसरा होस्ट जिसका हम उपयोग करते हैं वह Ansible होस्ट है। हमारे द्वारा सूचीबद्ध सभी होस्ट इन्वेंट्री में Ansible पैरामीटर के अंतर्गत हैं।

उत्तर देने योग्य:
मेजबान:
लिनक्स_होस्ट:
ansible_host: 192.168.3.229
ansible_user: जड़
ansible_password: tpstps_22
ansible_connection: एसएसएच
ansible_port: 22

Ansible_Host:
ansible_host: 192.168.7.10
ansible_user: आईरिस
ansible_password: TpsTps_1
ansible_connection: एसएसएच
ansible_port: 22

इन्वेंट्री फ़ाइल बनाने और उसमें होस्ट प्रदान करने के बाद, अब हम इन्वेंट्री फ़ाइल को समाप्त करते हैं और मुख्य Ansible टर्मिनल पर वापस जाते हैं।

चरण 3: अन्सिबल में प्लेबुक बनाएं

अगला, हम Ansible टूल में प्लेबुक बनाते हैं ताकि हम कार्यों को परिभाषित कर सकें। उसके लिए, हम निम्नलिखित कमांड को Ansible main Terminal में लिखते हैं:

[ जड़ @ मास्टर जवाब देने योग्य ] # नैनो ansible_advanced_inventory.yml

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

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

- नाम: Ansible उन्नत होस्ट सूची
होस्ट: अन्सिबल [ 0 ]
इकट्ठा_तथ्य: नहीं
कार्य:

- नाम: प्राप्त करें होस्ट का नाम प्रबंधित नोड का
शंख: 'होस्टनाम'
रजिस्टर: परिणाम

- नाम प्रिंट होस्ट का नाम
डिबग:
संदेश: '{{result.stdout}}'

अब, हम इन्वेंट्री फ़ाइल के साथ-साथ प्लेबुक को निष्पादित करना चाहते हैं। इसलिए, हम पहले प्लेबुक को समाप्त करते हैं। निम्नलिखित कथन है जिसका उपयोग हम कमांड चलाने के लिए करते हैं:

[ जड़ @ मास्टर जवाब देने योग्य ] # ansible-playbook ansible_advanced_inventory.yml -i host.yml

निम्नलिखित आउटपुट डिस्प्ले है जो दर्शाता है कि कनेक्शन सफल है। चूँकि हमने प्लेबुक में Ansible[0] पास किया है, पहला होस्ट आउटपुट में प्रदर्शित होता है:

निष्कर्ष

इस पूरे ट्यूटोरियल में हमने अन्सिबल इन्वेंट्री पर गहन चर्चा की। हमने सीखा कि कैसे Ansible में इन्वेंट्री तैयार की जाए और फिर उन्हें टारगेट रिमोट होस्ट से जोड़ा जाए। हमने एक उदाहरण भी लागू किया है ताकि हम Ansible इन्वेंट्री के कॉन्सेप्ट को आसानी से समझ सकें।