नेटवर्क टोपोलॉजी:
यहां ही linuxhint-711ea एक Ubuntu 20.04 LTS मशीन है, जहां मैं Ansible इंस्टॉल करूंगा।
फिर, मैं मेजबानों को कॉन्फ़िगर करूंगा मेजबान1 (आईपी पता 192.168.20.162) और मेजबान २ (आईपी पता 192.168.20.153) Ansible ऑटोमेशन के लिए और Ansible का उपयोग करके उन पर कमांड चलाएँ linuxhint-711ea मशीन।
मैं बस फोन करूंगा मेजबान1 तथा मेजबान २ इस लेख में Ansible मेज़बान के रूप में।
उत्तरदायी स्थापित करना:
आप उबंटू के आधिकारिक पैकेज रिपॉजिटरी से उबंटू 20.04 एलटीएस पर आसानी से Ansible स्थापित कर सकते हैं।
सबसे पहले, निम्न आदेश के साथ APT पैकेज रिपॉजिटरी कैश को अपडेट करें:
$सुडोउपयुक्त अद्यतन
APT पैकेज रिपॉजिटरी कैश को अपडेट किया जाना चाहिए।
अब, निम्न आदेश के साथ Ansible स्थापित करें:
$सुडोउपयुक्तइंस्टॉलउत्तरदायीस्थापना की पुष्टि करने के लिए, दबाएं तथा और फिर दबाएं .
Ansible स्थापित किया जाना चाहिए।
अब, यह जांचने के लिए निम्न कमांड चलाएँ कि क्या उत्तर सही ढंग से काम कर रहा है।
$उत्तरदायी--संस्करणजैसा कि आप देख सकते हैं, ansible कमांड उपलब्ध है और सही तरीके से काम कर रहा है।
SSH कुंजी उत्पन्न करना:
अब, आपको उस कंप्यूटर पर एक एसएसएच कुंजी उत्पन्न करनी होगी जहां आपने Ansible स्थापित किया है।
SSH कुंजी बनाने के लिए, निम्न कमांड चलाएँ:
$एसएसएच-कीजेनअब, दबाएं .
दबाएँ .
दबाएँ .
एक SSH कुंजी जनरेट की जानी चाहिए।
उत्तरदायी स्वचालन के लिए उबंटू होस्ट को कॉन्फ़िगर करना:
इस खंड में, मैं आपको दिखाऊंगा कि उबंटू होस्ट को कैसे कॉन्फ़िगर किया जाए ( मेजबान1 ) Ansible स्वचालन के लिए। यदि आपके पास एक से अधिक होस्ट हैं जिन्हें आप Ansible का उपयोग करके स्वचालित करना चाहते हैं, तो प्रत्येक होस्ट पर उसी प्रक्रिया को दोहराएं।
Ubuntu Ansible होस्ट (जिसे आप Ansible Automation के लिए कॉन्फ़िगर करना चाहते हैं) के पास SSH सर्वर पैकेज स्थापित होना चाहिए।
सबसे पहले, निम्न आदेश के साथ APT पैकेज रिपॉजिटरी कैश को अपडेट करें:
$सुडोउपयुक्त अद्यतनफिर, निम्न आदेश के साथ ओपनएसएसएच सर्वर स्थापित करें:
$सुडोउपयुक्तइंस्टॉलopenssh-सर्वर-तथामेरे मामले में, ओपनएसएसएच सर्वर पैकेज पहले से स्थापित है। यदि यह आपके मामले में स्थापित नहीं है, तो इसे स्थापित किया जाना चाहिए।
अब, जांचें कि क्या एसएसएचडी सेवा निम्न आदेश के साथ चल रही है:
$सुडोsystemctl स्थिति sshdजैसा कि आप देख सकते हैं, एसएसएचडी सेवा है सक्रिय (दौड़ना) और सक्षम (सिस्टम बूट पर स्वचालित रूप से प्रारंभ हो जाएगा)।
अगर एसएसएचडी सेवा नहीं है सक्रिय (चल रहा है) आपके मामले में, इसे निम्न आदेश के साथ मैन्युअल रूप से प्रारंभ करें:
$सुडोsystemctl प्रारंभ sshdअगर एसएसएचडी सेवा नहीं है सक्षम (सिस्टम स्टार्टअप में नहीं जोड़ा गया) आपके मामले में, इसे सिस्टम स्टार्टअप में निम्नलिखित कमांड के साथ मैन्युअल रूप से जोड़ें:
$सुडोसिस्टमक्टलसक्षमएसएसएचडीअब, निम्न आदेश के साथ SSH एक्सेस की अनुमति देने के लिए फ़ायरवॉल को कॉन्फ़िगर करें:
$सुडोयूएफडब्ल्यू अनुमतिएसएसएचओआपको एक भी बनाना चाहिए उत्तरदायी उपयोगकर्ता और पासवर्ड रहित sudo एक्सेस की अनुमति दें उत्तरदायी उपयोगकर्ता।
एक बनाने के लिए उत्तरदायी उपयोगकर्ता, निम्न आदेश चलाएँ:
$सुडोयोजक उत्तरदायीअब, के लिए एक पासवर्ड टाइप करें उत्तरदायी उपयोगकर्ता और प्रेस .
अब, पासवर्ड फिर से टाइप करें और दबाएं .
अब, दबाएं .
अब, दबाएं .
अब, दबाएं .
अब, दबाएं .
अब, दबाएं .
अब, टाइप करें तथा और फिर दबाएं .
एक उत्तरदायी उपयोगकर्ता बनाया जाना चाहिए।
अब, पासवर्ड रहित sudo एक्सेस को कॉन्फ़िगर करें उत्तरदायी निम्न आदेश के साथ उपयोगकर्ता:
$फेंक दिया 'उत्तरदायी ALL=(ALL) NOPASSWD:ALL' | सुडो टी /आदि/sudoers.d/उत्तरदायीअब, Ansible होस्ट का IP पता खोजें ( मेजबान1 ) निम्न आदेश के साथ:
$होस्ट नाम -मैंयहाँ, मेरे मामले में IP पता है 192.168.20.162 . यह आपके लिए अलग होगा। इसलिए, इसे अभी अपने फॉर्म से बदलना सुनिश्चित करें।
अब, उस कंप्यूटर से जहाँ आपने Ansible स्थापित किया है, SSH सार्वजनिक कुंजी को Ansible होस्ट में कॉपी करें ( मेजबान1 ) निम्नलिखित नुसार:
$ssh-कॉपी-आईडी ansible@192.168.20.162में टाइप करें हां और दबाएं .
अब, के लिए पासवर्ड टाइप करें उत्तरदायी उपयोगकर्ता और प्रेस .
सार्वजनिक SSH कुंजी की प्रतिलिपि बनाई जानी चाहिए मेजबान1 .
अब, के लिए पासवर्ड-आधारित लॉगिन अक्षम करें उत्तरदायी निम्न आदेश के साथ उपयोगकर्ता:
$सुडोउपयोगकर्तामोड-NSउत्तरदायीअब, आप केवल Ansible होस्ट में SSH कर सकते हैं ( मेजबान1 ) जैसा उत्तरदायी उपयोगकर्ता ने कंप्यूटर से किसी भी पासवर्ड के बिना एसएसएच सार्वजनिक कुंजी की प्रतिलिपि बनाई है (इस मामले में, वह कंप्यूटर जहां आपने Ansible स्थापित किया है)। लेकिन आप SSH को Ansible होस्ट में सक्षम नहीं कर पाएंगे ( मेजबान1 ) जैसा उत्तरदायी किसी अन्य कंप्यूटर से उपयोगकर्ता। मैंने सुरक्षा कारणों से Ansible होस्ट्स को इस तरह से कॉन्फ़िगर किया है। के रूप में उत्तरदायी उपयोगकर्ता को प्रशासनिक आदेश चलाने के लिए किसी पासवर्ड की आवश्यकता नहीं है, पासवर्ड-आधारित लॉगिन की अनुमति देना जोखिम भरा है उत्तरदायी उपयोगकर्ता।
अब, आप एसएसएच को उत्तरदायी मेजबान में सक्षम होना चाहिए मेजबान1 उस कंप्यूटर से जहाँ आपने Ansible को निम्नानुसार स्थापित किया है:
$एसएसएचओउत्तरदायी@192.168.20.162जैसा कि आप देख सकते हैं, मैं Ansible होस्ट ( मेजबान1 ) बिना किसी पासवर्ड के उत्तरदायी उपयोगकर्ता के रूप में। तो, उत्तरदायी मेजबान ( मेजबान1 ) Ansible ऑटोमेशन के लिए तैयार है।
यदि किसी कारण से, आप पासवर्ड-आधारित लॉगिन की अनुमति देना चाहते हैं उत्तरदायी उपयोगकर्ता फिर से, Ansible होस्ट में निम्न कमांड चलाएँ ( मेजबान1 ):
$सुडोउपयोगकर्तामोडयूउत्तरदायीआप Ansible ऑटोमेशन के लिए जितने चाहें उतने होस्ट कॉन्फ़िगर कर सकते हैं।
इस लेख में, मैंने केवल 2 होस्ट कॉन्फ़िगर किए हैं, मेजबान1 तथा मेजबान २ प्रदर्शन के लिए।
परीक्षण उत्तरदायी:
अब, एक नई परियोजना निर्देशिका बनाएँ ~/उत्तरदायी-डेमो/ कंप्यूटर में जहाँ आपने Ansible को निम्नानुसार स्थापित किया है:
$एमकेडीआईआर~/ansible- डेमोअब, पर नेविगेट करें ~/उत्तरदायी-डेमो/ निर्देशिका इस प्रकार है:
$सीडी~/ansible- डेमो/अब, एक नया बनाएं मेजबान प्रोजेक्ट निर्देशिका में फ़ाइल निम्नानुसार है:
$नैनोमेजबानअब, Ansible मेजबानों के IP पते या DNS नाम टाइप करें ( मेजबान1 तथा मेजबान २ मेरे मामले में) मेजबान फ़ाइल इस प्रकार है:
192.168.20.162192.168.20.153
अब, फाइल को दबाकर सेव करें + एक्स के बाद तथा और फिर .
अब, Ansible का उपयोग करके सभी मेजबानों को निम्नानुसार पिंग करने का प्रयास करें:
$उत्तरदायी सभी-मैं./मेजबानयूउत्तरदायी-एम गुनगुनाहटध्यान दें: यहां, -u विकल्प का उपयोग उपयोगकर्ता नाम (इस मामले में उत्तरदायी) को निर्दिष्ट करने के लिए किया जाता है, जो कि Ansible SSH को मेजबानों में उपयोग करेगा।
जैसा कि आप देख सकते हैं, सभी मेजबानों को पिंग किया जा सकता है। तो, मेजबान Ansible स्वचालन के लिए तैयार हैं।
उसी तरह, आप निम्न प्रकार से Ansible का उपयोग करके मेजबानों में कोई भी कमांड चला सकते हैं:
$उत्तरदायी सभी-मैं./मेजबानयूउत्तरदायी-एमसीप-प्रति 'गूंज' $ (होस्टनाम) - $ (होस्टनाम -I)''जैसा कि आप देख सकते हैं, कमांड प्रत्येक होस्ट में सफलतापूर्वक चला और आउटपुट प्रदर्शित होता है।
तो, इस प्रकार आप उबंटू 20.04 एलटीएस पर Ansible स्थापित करते हैं और Ansible स्वचालन के लिए Ubuntu 20.04 LTS होस्ट को कॉन्फ़िगर करते हैं। इस लेख को पढ़ने के लिए धन्यवाद।