Ansible में GitHub क्रियाएँ

Ansible Mem Github Kriya Em



Ansible एक लोकप्रिय, मुफ़्त और ओपन-सोर्स ऑटोमेशन टूल है जो हमें कॉन्फ़िगरेशन प्रबंधन, ऐप परिनियोजन आदि जैसे DevOps कार्यों को स्वचालित करने की अनुमति देता है।

Ansible को GitHub Actions के साथ संयोजित करने से हमें जब भी किसी रिपॉजिटरी में कोई विशिष्ट घटना घटती है, जैसे कि मुख्य शाखा में पुश, तो Ansible प्लेबुक के निष्पादन को स्वचालित करने की अनुमति मिलती है।







यह ट्यूटोरियल आपको सिखाता है कि Ansible प्लेबुक चलाने के लिए GitHub एक्शन कैसे सेट करें जो कोड परिवर्तनों के जवाब में तैनाती को स्वचालित करने के लिए उपयोगी है।



पूर्वावश्यकताएँ:

आगे बढ़ने से पहले, सुनिश्चित करें कि आपके पास निम्नलिखित हैं:



  • एक GitHub खाता
  • एक मौजूदा GitHub रिपॉजिटरी
  • अन्सिबल प्लेबुक का बुनियादी ज्ञान
  • एक लक्ष्य मशीन जहां Ansible कार्यों को चला सकता है। सुनिश्चित करें कि Ansible GitHub रनर से इन मशीनों से कनेक्ट हो सकता है।

चरण 1: एन्जिबल एनवायरनमेंट सेटअप करें

Ansible प्लेबुक और सभी संबंधित फ़ाइलों को GitHub रिपॉजिटरी में बनाएं और संग्रहीत करें। इसमें भूमिकाएँ टेम्प्लेट, वेरिएबल आदि जैसी फ़ाइलें शामिल होनी चाहिए।





एक उदाहरण प्लेबुक इस प्रकार है:

---
- नाम: सुनिश्चित करें कि Nginx वेब सर्वर पर स्थापित है
होस्ट: वेबसर्वर
बनो: हाँ
कार्य:
- नाम: उपयुक्त कैश अपडेट करें
उपयुक्त:
अपडेट_कैश: हाँ

- नाम: Nginx स्थापित करें
उपयुक्त:
नाम: nginx
राज्य: वर्तमान

सुनिश्चित करें कि आपके पास Ansible के लिए लक्ष्य मशीनों को निर्दिष्ट करने वाली एक इन्वेंट्री फ़ाइल है।



चरण 2: GitHub रिपोजिटरी में रहस्य सेटअप करें

यह देखते हुए कि प्लेबुक को SSH कुंजी या पासवर्ड जैसी संवेदनशील जानकारी की आवश्यकता है, GitHub रहस्यों को सुरक्षित रूप से संग्रहीत करने का एक तरीका प्रदान करता है:

अपने GitHub रिपॉजिटरी पर नेविगेट करें।

सेटिंग्स > सीक्रेट्स एंड वेरिएबल्स -> एक्शन्स -> न्यू रिपॉजिटरी सीक्रेट पर जाएं।

चरण 3: GitHub एक्शन वर्कफ़्लो बनाएं

रिपॉजिटरी में, एक '.github/workflows' निर्देशिका बनाएं। इस निर्देशिका के अंदर, अपने वर्कफ़्लो के लिए एक YAML फ़ाइल बनाएँ।

वर्कफ़्लो इस प्रकार जोड़ें:

नाम: अन्सिबल प्लेबुक चलाएँ
पर:
धकेलना:
शाखाएँ:
- मालिक
नौकरियां:
तैनात करना:
रन-ऑन: उबंटू-नवीनतम
कदम:
- नाम: चेकआउट कोड
उपयोग: क्रियाएँ/चेकआउट@v2
- नाम: SSH कुंजी सेट करना
भागो: |
प्रतिध्वनि '${{रहस्य.SSH_PRIVATE_KEY }}' > Private_key.pem
chmod 600 प्राइवेट_की.पेम
- नाम: अन्सिबल प्लेबुक चलाएँ
भागो: |
सुडो उपयुक्त अद्यतन
sudo apt install -y ansible
ansible-playbook -ihosts.ini my-playbook.yml --private-key=private_key.pem --user=${{रहस्य.REMOTE_USER }}

चरण 4: वर्कफ़्लो को ट्रिगर करें

जब भी आप मास्टर शाखा पर दबाव डालते हैं, GitHub स्वचालित रूप से इस वर्कफ़्लो को चलाएगा और इस प्रकार प्लेबुक को निष्पादित करेगा।

निष्कर्ष

इसके लिए बस इतना ही। हमने Github क्रियाओं का उपयोग करके एक Ansible प्लेबुक चलाने का तरीका कवर किया।