Hvordan bruke ekstra vars i Ansible

Hvordan bruke ekstra vars i Ansible
Ansible tilbyr fleksibilitet ved bruk av variabler. Variabler lar deg angi tilpassede verdier og betingelser når du utfører skarpe spillbøker. Selv om variabler i en spillbok er nyttig, må du imidlertid redigere spillboken når du trenger å gjøre endringer.

Du kan overvinne dette ved å bruke ekstern inngang til en Ansible Playbook ved hjelp av ekstra variabler.

Denne artikkelen vil lære å bruke Ansible ekstra variabler for å gi tilpassede eller dynamiske verdier uten å redigere spillbøkene.

Hva er Ansible ekstra vars?

Ansible Extra Vars er en funksjon som lar deg inkludere mer fleksibilitet i dine Ansible Playbooks ved å gi deg muligheten til å spesifisere dynamiske verdier når du utfører spillboken.

Ansible ekstra vars er nyttige når:

  1. Du har en variabel hvis verdi kan endre seg mer enn en gang når du kjører spillboken.
  2. Du trenger ikke å redigere spillboken for å endre variabelenes verdi i spillboken.

Hvordan bruke Ansible ekstra vars

Ansible ekstra vars vil overskrive verdien som er lagret i en spillbok eller en variabel fil. De kalles også kommandolinjevariabler.

La oss nå se på et eksempel på hvordan du bruker ekstra vars.

Et typisk eksempel på de ekstra varene i Ansible er når du har hardkode vertenes verdi. Anta at du har en spillbok som kjører på verter med gruppen "utvikling" når du trenger å kjøre spillboken på "Production" -verter, vil du bli tvunget til å redigere spillboken.

Dette kan være slitsomt og utsatt for feil, spesielt på en omfattende samling av vertsgrupper.

For å løse dette problemet, kan vi bruke Ansible Extra VARS -funksjonen. Vi kan definere en variabel som representerer vertenes gruppe og spesifisere verdien når vi kjører spillboken.

Tenk på eksemplet spillbok nedenfor:

---
- Verter: "Group"
Bli: Ja
Samle_facts: Nei
oppgaver:
- Navn: InstallApache
apt:
Navn: Httpd
Stat: Nåværende
UPDATE_CACHE: Ja

Nå som vi har et eksempel på Playbook som ovenfor, kan vi gi verdien til "Group" -variabelen ved hjelp av -extra -vars -alternativet mens vi kjører spillboken.

Et eksempel -kommando er som vist:

Ansible-Playbook-eksempel.YML -Extra -Vars “Group = Production”

For å endre gruppen til "utvikling", trenger du ikke redigere spillboken; passere variabelen som vist:

Ansible-Playbook-eksempel.YML-Extra-Vars “Group = Development”

Eksemplet nedenfor bruker ekstra vars for å spesifisere tjenesten for å starte basert på målfordelingen.

---
- Verter: "Group"
Bli: Ja
Samle_facts: Nei
oppgaver:
- Navn: InstallApache
service:
Navn: "pkg_name"
Stat: startet

Ved å bruke spillboken ovenfor, kan vi spesifisere de ekstra variablene som:

Ansible-Playbook-eksempel.YML-Extra-Vars “Group = Development Pkg_Name = Apache2”

Hvis du vil passere variabler med mellomrom, bruker du enkelt anførselstegn som vist i eksemplet nedenfor:

Ansible-Playbook-eksempel.yml -Extra -vars "protocol = 'All -SLV2'"

Konklusjon

Denne opplæringen illustrerer hvordan du implementerer og bruker Ansible ekstra variabler for å legge til fleksibilitet til spillbøker. Sjekk dokumentasjonen for å lære mer.