L'uso di comandi ad hoc è un metodo imperativo e non è meglio che utilizzare il client SSH per eseguire comandi in remoto.
Hai bisogno di due componenti per trasformarlo in un'orchestrazione reale e imperativa:un playbook e moduli. Il playbook è la base per l'implementazione, la configurazione e la manutenzione del tuo sistema. Può orchestrare tutto, anche tra host! Un playbook è lì per descrivere lo stato che vuoi raggiungere. I playbook sono scritti nel linguaggio YAML e possono essere eseguiti con il comando ansible-playbook:
$ ansible-playbook [filename]
Il secondo componente è il modulo. Il modo migliore per descrivere un modulo è:il compito da eseguire per raggiungere lo stato desiderato. Sono anche conosciuti come plugin di attività o plugin di libreria.
Se riscontri l'errore seguente durante l'esecuzione del comando ansible-playbook:
ansible-playbook: command not found
puoi provare a installare il pacchetto seguente secondo la tua scelta di distribuzione.
Distribuzione | Comando |
---|---|
OS X | brew install ansible |
Debian | apt-get install ansible |
Ubuntu | apt-get install ansible |
Alpino | apk add ansible |
Arci Linux | pacman -S ansible |
Kali Linux | apt-get install ansible |
CentOS | yum install ansible |
Fedora | dnf install ansible |
Raspbian | apt-get install ansible |
Esempi di comandi ansible-playbook
1. Esegui attività nel playbook:
$ ansible-playbook playbook
2. Esegui attività nel playbook con l'inventario host personalizzato:
$ ansible-playbook playbook -i inventory_file
3. Esegui attività nel playbook con variabili aggiuntive definite tramite la riga di comando:
$ ansible-playbook playbook -e "variable1=value1 variable2=value2"
4. Esegui attività nel playbook con variabili aggiuntive definite in un file JSON:
$ ansible-playbook playbook -e "@variables.json"
5. Esegui attività nel playbook per i tag indicati:
$ ansible-playbook playbook --tags tag1,tag2
6. Esegui attività in un playbook a partire da un'attività specifica:
$ ansible-playbook playbook --start-at task_name
7. Per controllare la sintassi di Ansible, usa:
$ ansible-playbook --syntax-check Ansible/example1.yaml