Come usare VAR extra in Ansible

Come usare VAR extra in Ansible
Ansible offre flessibilità mediante l'uso di variabili. Le variabili consentono di impostare valori e condizioni personalizzati durante l'esecuzione di Playbook ANSIBE. Tuttavia, sebbene le variabili in un playbook siano utili, è necessario modificare il playbook quando è necessario apportare modifiche.

Puoi superarlo usando l'input esterno a un playbook Ansible usando variabili extra.

Questo articolo imparerà come utilizzare le variabili extra di Ansible per fornire valori personalizzati o dinamici senza modificare i playbook.

Cos'è Ansible extra vars?

Ansible extra vars è una funzione che consente di includere una maggiore flessibilità nei tuoi playbook ansible fornendoti la possibilità di specificare valori dinamici quando si eseguono il playbook.

I vars extra ansible sono utili quando:

  1. Hai una variabile il cui valore può cambiare più di una volta quando si esegue il playbook.
  2. Non è necessario modificare il playbook per modificare il valore della variabile nel playbook.

Come usare ansible extra vars

Ansible extra vars sovrascriverà il valore memorizzato in un playbook o in un file variabile. Sono anche chiamati variabili di comando.

Guardiamo ora un esempio di come usare VAR extra.

Un esempio tipico dei vari extra in Ansible è quando codifica duramente il valore degli host. Supponiamo che tu abbia un playbook che si svolge su host con il gruppo "Sviluppo" quando devi eseguire il playbook su host "Production", sarai costretto a modificare il playbook.

Questo può essere noioso e incline agli errori, specialmente su una vasta raccolta di gruppi ospitanti.

Per risolvere questo problema, possiamo utilizzare la funzione ANSIBE EXTRA VARS. Possiamo definire una variabile che rappresenta il gruppo degli host e specificarne il valore durante l'esecuzione del playbook.

Considera il playbook di esempio qui sotto:

---
- Host: "Group"
Diventa: sì
Gather_Facts: no
compiti:
- Nome: InstalPache
Apt:
Nome: httpd
Stato: presente
update_cache: sì

Ora che abbiamo un esempio di playbook come sopra, possiamo passare il valore alla variabile "gruppo" usando l'opzione -extra -vars durante l'esecuzione del playbook.

Un comando di esempio è come mostrato:

Esempio Ansible-Playbook.YML -Extra -vars “Group = Produzione”

Per cambiare il gruppo in "sviluppo", non è necessario modificare il playbook; Passare la variabile come mostrato:

Esempio Ansible-Playbook.YML-Extra-vars “Group = Sviluppo”

L'esempio seguente utilizza VAR extra per specificare il servizio per l'avvio in base alla distribuzione target.

---
- Host: "Group"
Diventa: sì
Gather_Facts: no
compiti:
- Nome: InstalPache
servizio:
nome: "pkg_name"
Stato: iniziato

Usando il playbook sopra, possiamo specificare le variabili extra come:

Esempio Ansible-Playbook.YML-Extra-vars “Group = Sviluppo pkg_name = apache2"

Se si desidera passare variabili con gli spazi, si utilizzano segni di preventivi singoli come mostrato nell'esempio seguente:

Esempio Ansible-Playbook.YML -Extra -vars "Protocol = 'All -SSLv2'"

Conclusione

Questo tutorial illustra come implementare e utilizzare le variabili extra per aggiungere flessibilità ai playbook. Controlla la documentazione per saperne di più.