खोज…


अवलोकन

Ansible में, एक प्लेबुक एक YAML फाइल है जिसमें एक सर्वर को कैसे देखना चाहिए इसकी परिभाषा है। एक प्लेबुक में आप परिभाषित करते हैं कि आपके द्वारा इच्छित राज्य में सर्वर प्राप्त करने के लिए Ansible को क्या कार्रवाई करनी चाहिए। केवल जो आप परिभाषित करते हैं वह हो जाता है।

यह एक मूल उत्तर-पुस्तिका है, जो web समूह से संबंधित प्रत्येक होस्ट पर git स्थापित करता है:

---
- name: Git installation
  hosts: web
  remote_user: root
  tasks: 
    - name: Install Git
      apt: name=git state=present

प्लेबुक की संरचना

प्लेबुक का प्रारूप काफी सीधा है, लेकिन रिक्ति और लेआउट के मामले में सख्त है। एक प्लेबुक में नाटकों का समावेश होता है। एक नाटक लक्ष्य मेजबानों का एक संयोजन है और इन मेजबानों पर हम जिन कार्यों को लागू करना चाहते हैं, वे हैं, इसलिए एक प्लेबुक का एक चित्र यह है:

एक Ansible playbook का सचित्र प्रतिनिधित्व

इस प्लेबुक को निष्पादित करने के लिए, हम बस चलाते हैं:

ansible-playbook -i hosts my_playbook.yml

खेलने की संरचना

यहाँ एक सरल नाटक है:

- name: Configure webserver with git
  hosts: webserver
  become: true
  vars:
    package: git
  tasks:
    - name: install git
      apt: name={{ package }} state=present

जैसा कि हमने पहले कहा, हर नाटक में होना चाहिए:

  • कॉन्फ़िगर करने के लिए मेजबानों का एक सेट

  • उन मेजबानों पर निष्पादित किए जाने वाले कार्यों की एक सूची

एक नाटक को उस चीज़ के रूप में सोचें जो मेजबान को कार्यों से जोड़ता है। मेजबानों और कार्यों को निर्दिष्ट करने के अलावा, नाटक कई वैकल्पिक सेटिंग्स का भी समर्थन करते हैं। दो आम हैं:

  • name : एक टिप्पणी जो नाटक के बारे में बताती है। जब खेल चलना शुरू हो जाता है, तो इसका जवाब देने योग्य होगा
  • vars : चर और मूल्यों की एक सूची

टैग

प्ले में कई कार्य हैं, जिन्हें टैग किया जा सकता है:

- name: Install applications
  hosts: all
  become: true
  tasks:
    - name: Install vim
      apt: name=vim state=present
      tags:
        - vim
    - name: Install screen 
      apt: name=screen state=present
      tags:
        - screen

टैग में निर्दिष्ट होने पर 'vim' के साथ टास्क चलेगा। आप जितने चाहें उतने टैग निर्दिष्ट कर सकते हैं। 'इंस्टॉल' या 'कॉन्फिग' जैसे टैग का उपयोग करना उपयोगी है। फिर आप टैग या स्किप-टैग को निर्दिष्ट करके प्लेबुक चला सकते हैं। के लिये

ansible-playbook my_playbook.yml --tags "tag1,tag2"
ansible-playbook my_playbook.yml --tags "tag2"
ansible-playbook my_playbook.yml --skip-tags "tag1"

डिफ़ॉल्ट रूप से Ansible सभी टैग चलाता है



Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow