Ansible : Playbook का उपयोग करें (variables)2023/09/27 |
|
Ansible Playbook में वेरिएबल्स का उपयोग निम्नलिखित है।
|
|
| [1] | यह वेरिएबल का उपयोग करने का उदाहरण है। |
|
ubuntu@dlp:~$
vi playbook_sample.yml
- hosts: target_servers
become: yes
become_method: sudo
tasks:
- name: General packages are installed
apt:
name: "{{ packages }}"
state: present
vars:
packages:
- tar
- wget
- unzip
tags: General_Packages
ansible-playbook playbook_sample.yml --ask-become-pass BECOME password: PLAY [target_servers] ********************************************************** TASK [Gathering Facts] ********************************************************* ok: [10.0.0.51] ok: [10.0.0.52] TASK [General packages are installed] ****************************************** changed: [10.0.0.52] changed: [10.0.0.51] PLAY RECAP ********************************************************************* 10.0.0.51 : ok=2 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 10.0.0.52 : ok=2 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 # सत्यापित करें ubuntu@dlp:~$ ansible target_servers -m shell -a "which tar; which wget; which unzip;" 10.0.0.52 | CHANGED | rc=0 >> /usr/bin/tar /usr/bin/wget /usr/bin/unzip 10.0.0.51 | CHANGED | rc=0 >> /usr/bin/tar /usr/bin/wget /usr/bin/unzip |
| [2] | Playbook चलाते समय, [ATHERING FACTS] कार्य हमेशा निष्पादित होता है, यह वह फ़ंक्शन है जो Ansible लक्ष्य होस्ट की जानकारी प्राप्त करता है और उन्हें चर में सेट करता है। आप उन्हें Playbooks में संदर्भित और उपयोग कर सकते हैं। यदि आप यह पुष्टि करना चाहते हैं कि किस प्रकार के वेरिएबल सेट हैं, तो निम्न प्रकार से [setup] मॉड्यूल के साथ आउटपुट करना संभव है। |
|
ubuntu@dlp:~$ ansible 10.0.0.50 -m setup
10.0.0.50 | SUCCESS => {
"ansible_facts": {
"ansible_all_ipv4_addresses": [
"10.0.0.50"
],
"ansible_all_ipv6_addresses": [
"fe80::5054:ff:fef6:f1b2"
],
"ansible_apparmor": {
"status": "disabled"
},
"ansible_architecture": "x86_64",
"ansible_bios_date": "04/01/2014",
"ansible_bios_vendor": "SeaBIOS",
.....
.....
# [ansible_distribution], [ansible_distribution_version] का संदर्भ लें
- hosts: target_servers
tasks:
- name: Refer to Gathering Facts
command: echo "{{ ansible_distribution }} {{ ansible_distribution_version }}"
register: dist
- debug: msg="{{ dist.stdout }}"
ansible-playbook playbook_sample.yml
PLAY [target_servers] **********************************************************
TASK [Gathering Facts] *********************************************************
ok: [10.0.0.52]
ok: [10.0.0.51]
TASK [Refer to Gathering Facts] ************************************************
changed: [10.0.0.52]
changed: [10.0.0.51]
TASK [debug] *******************************************************************
ok: [10.0.0.51] => {
"msg": "Ubuntu 22.04"
}
ok: [10.0.0.52] => {
"msg": "Ubuntu 22.04"
}
PLAY RECAP *********************************************************************
10.0.0.51 : ok=3 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
10.0.0.52 : ok=3 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
|
| Sponsored Link |
|
|