Junior
Ansible'da değişken atama yöntemlerini belirtin.
sobes.tech yapay zeka
AI'dan gelen yanıt
Ansible'da değişkenler birkaç şekilde tanımlanabilir:
- Envanter dosyaları:
hostsdosyalarında veyagroup_varsvehost_varsdizinlerindeki ayrı dosyalarda. - Komut satırı:
--extra-varsveya-ebayrağı kullanılarak. - Playbooklar:
vars,vars_files,include_varsbölümlerinde. - Roller:
varsdizinlerinde veya rol çağrısı sırasında parametreler aracılığıyla. - Ansible yapılandırma dosyaları:
ansible.cfgiçinde, ancak belirli değerler için önerilmez. - Dinamik Envanter: envanteri ve değişkenleri çalışma zamanında üreten betikler aracılığıyla.
- Vaults: gizli verileri saklamak için.
Ansible'da değişken atama önceliği düşükten yükseğe:
ansible.cfg- Envanter dosyaları (
host_vars,group_vars) - Roller (vars dizinleri ve vars sekmesi)
- Playbook'taki
varsbölümü - Komut satırıyla geçirilen değişkenler
Envanterde değişken atama örneği:
# inventory.ini
[webservers]
web1 ansible_host=192.168.1.100
[webservers:vars]
http_port=80
Playbook'ta değişken atama örneği:
# playbook.yml
---
- name: Web sunucusunu yapılandır
hosts: webservers
vars:
greeting: "Hello, World!"
tasks:
- name: Selamı yazdır
debug:
msg: "{{ greeting }}"
Komut satırından değişken atama örneği:
ansible-playbook playbook.yml -e "user=admin"