संपादित 5 दिन पहले द्वारा ExtremeHow संपादकीय टीम
स्वचालनऐंसिबलकॉन्फ़िगरेशन प्रबंधनदेवऑप्सस्क्रिप्टिंगकमांड लाइनसर्वर सेटअपआर्केस्ट्रेशनप्लेबुक्सप्रबंधन
अनुवाद अपडेट किया गया 1 सप्ताह पहले
सर्वरों की एक बड़ी संख्या का प्रबंधन करना और प्रक्रियाओं को स्वचालित करना सिस्टम प्रशासकों और DevOps पेशेवरों के लिए एक सामान्य कार्य है। Ansible एक शक्तिशाली और सरल उपकरण है जो इस पहलू में मदद कर सकता है। यह इन्फ्रास्ट्रक्चर कोड के रूप में, कॉन्फ़िगरेशन प्रबंधन और कार्यों के स्वचालन को सक्षम करता है। यह गाइड आपको Linux पर Ansible को इंस्टॉल और उपयोग करने के विस्तृत चरणों के माध्यम से मार्गदर्शन करेगी। हम Ansible के साथ शुरू करने के लिए आवश्यक बुनियादी बातें कवर करेंगे।
Ansible एक ओपन-सोर्स ऑटोमेशन टूल या प्लेटफ़ॉर्म है जिसका उपयोग IT कार्यों जैसे कि एप्लिकेशन डिप्लॉयमेंट, ऑर्केस्ट्रेशन, कॉन्फ़िगरेशन प्रबंधन के लिए होता है, जिसमें यह प्लेबुक्स का उपयोग करके सिस्टम को कॉन्फ़िगर करता है, सॉफ़्टवेयर डिप्लॉय करता है, और उन्नत वर्कफ़्लो को ऑर्केस्ट्रेट करता है। इसे सेट करना आसान है, एजेंट्स की आवश्यकता नहीं होती है, और इसके प्लेबुक्स के लिए YAML (Yet Another Markup Language) का उपयोग करता है, जो शुरुआती लोगों के लिए समझने और प्रभावी ढंग से उपयोग करने में अपेक्षाकृत सरल है।
आरंभ करने से पहले, सुनिश्चित करें कि आपके पास निम्नलिखित हैं:
Ansible का इंस्टालेशन प्रक्रिया उस Linux डिस्ट्रीब्यूशन पर थोड़ी भिन्न हो सकती है जिसे आप उपयोग कर रहे हैं। आइए कुछ सबसे सामान्य विधियों को देखें:
Ubuntu पर Ansible इंस्टॉल करने के लिए इन चरणों का पालन करें:
sudo apt update
sudo apt install software-properties-common
sudo add-apt-repository --yes --update ppa:ansible/ansible
sudo apt update
sudo apt install ansible
ansible --version
यदि आप CentOS या Red Hat Enterprise Linux (RHEL) का उपयोग कर रहे हैं, तो इन चरणों का पालन करें:
sudo yum install epel-release
sudo yum install ansible
ansible --version
Fedora उपयोगकर्ताओं के लिए प्रक्रिया बहुत समान है:
sudo dnf install ansible
ansible --version
Ansible को इंस्टॉल करने के बाद, अगला कदम इसे कॉन्फ़िगर करना है। Ansible आरक्षित सर्वरों के साथ संवाद करने के लिए SSH का उपयोग करता है। आपको उन होस्ट मशीनों की SSH एक्सेस सेट करनी होगी जिन्हें आप Ansible के माध्यम से प्रबंधित करेंगे।
ssh-keygen
ssh-copy-id <user>@<host>
ssh <user>@<host>
Ansible इन्वेंटरी फ़ाइल उन होस्ट्स और होस्ट समूहों को सूचीबद्ध करती है जिन्हें Ansible प्रबंधित करने के लिए निर्देशित किया गया है। डिफ़ॉल्ट रूप से, यह /etc/ansible/hosts
में स्थित होती है।
sudo nano /etc/ansible/hosts
[webservers]<hostname> ansible_host=<IP>[dbservers]<hostname> ansible_host=<IP>
Ansible प्लेबुक्स वे फ़ाइलें हैं जिनमें Ansible के अनुसरण करने वाले कार्य होते हैं। वे YAML प्रारूप में लिखी जाती हैं, जो पढ़ने और समझने में आसान है। यहाँ एक Ansible प्लेबुक की मूल संरचना है:
---
- name: सुनिश्चित करें कि Apache इंस्टॉल है
hosts: webservers
tasks:
- name: Apache इंस्टॉल करें
apt:
name: apache2
state: present
उपरोक्त उदाहरण में:
name
: यह वर्णन करता है कि प्लेबुक किस बारे में है।hosts
: होस्ट्स या होस्ट समूहों को निर्दिष्ट करता है जिन पर प्लेबुक लागू होती है।tasks
: निष्पादित करने के लिए कार्यों की सूची, प्रत्येक कार्य का अपना name
और action
होती है।Ansible मॉड्यूल्स Ansible प्लेबुक्स बनाने के लिए बिल्डिंग ब्लॉक्स हैं। प्रत्येक मॉड्यूल एक स्टैंडअलोन स्क्रिप्ट होती है जिसे Ansible एक बार में चलाता है। मॉड्यूल्स का उपयोग हार्डवेयर, ऑपरेटिंग सिस्टम कॉन्फ़िगरेशन, और अधिक को प्रबंधित करने के लिए किया जा सकता है।
apt
मॉड्यूल का प्लेबुक में उपयोग का उदाहरण:
- name: Apache इंस्टॉल करें
hosts: webservers
tasks:
- name: Apache पैकेज इंस्टॉल करें
apt:
name: apache2
state: latest
एक बार जब आप प्लेबुक लिखते हैं, तो आपको अपने सर्वर पर स्वचालित कार्य करने के लिए इसे निष्पादित करना होगा। प्लेबुक चलाने के लिए:
.yml
फ़ाइल एक्सटेंशन के साथ सहेजें।playbook.yml
को प्रतिस्थापित करें):ansible-playbook playbook.yml
मान लें कि आपने setup_web.yml
नामक एक प्लेबुक बनाई है जिसमें निम्नलिखित सामग्री है:
- name: वेब सर्वर सेट करें
hosts: webservers
become: true
tasks:
- name: Apache इंस्टॉल करें
apt:
name: apache2
state: present
- name: Apache प्रारंभ करें
service:
name: apache2
state: started
इसे इस तरह से चलाएँ:
ansible-playbook setup_web.yml
चलाने के बाद, Ansible आपके इन्वेंटरी फ़ाइल के webserver समूह के तहत सूचीबद्ध सभी होस्ट्स पर Apache इंस्टॉल करता है और इसकी सेवा शुरू करता है।
अधिक जटिल सिस्टम को प्रबंधित करने के लिए, Ansible रोल्स आपको प्लेबुक्स को पुनः उपयोग करने योग्य घटकों में व्यवस्थित करने देते हैं। रोल्स आपको एक प्लेबुक को कई, छोटे फ़ाइलों में विभाजित करने की अनुमति देते हैं जिन्हें अधिक आसानी से बनाए रखा जा सकता है। रोल्स आमतौर पर कार्यों, हैंडलर्स, टेम्प्लेट्स, वेरिएबल्स, और फाइल्स, को एक विशिष्ट संरचना में संगठित करते हैं।
ansible-galaxy init <rolename>
/roles
के तहत रोल के लिए एक डायरेक्टरी संरचना बनाएगा जिसमें कार्यों, हैंडलर्स आदि के लिए डायरेक्टरी होंगे।- hosts: webservers
roles:
- <rolename>
यह निर्दिष्ट होस्ट पर रोल में परिभाषित कार्यों को लागू करने का कारण बनेगा।
Ansible के साथ काम करते समय आपको मिलने वाली कुछ सामान्य समस्याएँ शामिल हैं:
Ansible सर्वर और एप्लिकेशन प्रावधान, कॉन्फ़िगरेशन और प्रबंधन के लिए एक बहुमुखी उपकरण है। इसके विशाल मॉड्यूल संग्रह और YAML में लिखी गई आसानी से समझने योग्य प्लेबुक्स के साथ, Ansible IT प्रशासक के टूलकिट में एक अनिवार्य उपकरण बन जाता है। उल्लिखित चरणों का पालन करके, पेशेवर Linux पैकेज मैनेजर का उपयोग करके आसानी से Ansible इंस्टॉल कर सकते हैं, इसे आसानी से कॉन्फ़िगर कर सकते हैं, और अपनी इन्फ्रास्ट्रक्चर के पार प्लेबुक्स और रोल्स के माध्यम से कार्यों को स्वचालित कर सकते हैं।
यदि आपको लेख की सामग्री में कुछ गलत लगता है, आप कर सकते हैं