Sto utilizzando Ansible per alcune semplici attività di gestione degli utenti con un piccolo gruppo di computer. Attualmente, ho i miei Playbooks impostato hosts: all
e il mio file hosts è solo un singolo gruppo con tutte le macchine elencate:Limitare in sicurezza i playbook Ansible su una singola macchina?
# file: hosts
[office]
imac-1.local
imac-2.local
imac-3.local
mi sono trovato spesso di dover indirizzare una singola macchina. Il comando ansible-playbook
può limitare i giochi in questo modo:
ansible-playbook --limit imac-2.local user.yml
ma che sembra tipo di fragili, soprattutto per un playbook potenzialmente distruttiva. Lasciando fuori la bandiera limit
significa che il playbook verrà eseguito ovunque. Dal momento che questi strumenti vengono utilizzati solo occasionalmente, sembra che sia opportuno adottare misure per una riproduzione infallibile, in modo da non nuotare accidentalmente qualcosa tra qualche mese.
Esiste una procedura ottimale per limitare le esecuzioni di Playbook a una singola macchina? Idealmente i quaderni dovrebbero essere innocui se alcuni dettagli importanti sono stati lasciati fuori.
Questo è risolvibile in 1.5.3 con '--limit office [0]' –
La variabile deve essere quotata, ad esempio: '' {{target}} ''- in base a http: //docs.ansible. com/playbooks_variables.html # hey-wait-a-yaml-gotcha –
Buona presa, è stata citata nei miei quaderni dall'inizio. Aggiornato. – joemaller