Junior
ასპინში ცვლადების მინიჭების გზებს დაასახელეთ.
sobes.tech AI
პასუხი AI-სგან
Ansible-ში ცვლადებს შეიძლება განსაზღვრავდეს რამდენიმე გზით:
- ინვენტარის ფაილები:
hostsფაილებში ან ცალკე ფაილებშიgroup_varsდაhost_varsდირექტორიებში. - კომანდის ხაზი:
--extra-varsან-eფლაგის გამოყენებით. - Playbook-ები:
vars,vars_files,include_varsსექციებში. - როლები:
varsდირექტორიებში ან როლის გამოძახების დროს პარამეტრებით. - Ansible კონფიგურაციის ფაილები:
ansible.cfg-ში, მაგრამ არ არის რეკომენდებული სპეციფიკური მნიშვნელობებისთვის. - დინამიური ინვენტარი: სკრიპტების საშუალებით, რომლებიც გენერირებენ ინვენტარს და ცვლადებს შესრულების დროს.
- Vaults: საიდუმლო მონაცემების შესანახად.
Ansible-ში ცვლადების მინიჭების პრიორიტეტი დაბლიდან მაღალამდე:
ansible.cfg- ინვენტარის ფაილები (
host_vars,group_vars) - როლები (დან
default, შემდეგvars) varsსექცია playbook-ში- ბრძანების ხაზი, სადაც გადაეცემა ცვლადები
ინვენტარში ცვლადის მინიჭების მაგალითი:
# inventory.ini
[webservers]
web1 ansible_host=192.168.1.100
[webservers:vars]
http_port=80
playbook-ში ცვლადის მინიჭების მაგალითი:
# playbook.yml
---
- name: ვებ სერვერის კონფიგურაცია
hosts: webservers
vars:
greeting: "Hello, World!"
tasks:
- name: მისალმების გამოტანა
debug:
msg: "{{ greeting }}"
ბრძანების ხაზი, სადაც ცვლადი გადაეცემა:
ansible-playbook playbook.yml -e "user=admin"