Ansible - Comandi ad hoc

I comandi ad hoc sono comandi che possono essere eseguiti individualmente per eseguire funzioni rapide. Questi comandi non devono essere eseguiti in seguito.

Ad esempio, devi riavviare tutti i server della tua azienda. Per questo, eseguirai i comandi Adhoc da '/usr/bin/ansible'.

Questi comandi ad hoc non vengono utilizzati per la gestione e la distribuzione della configurazione, poiché questi comandi vengono utilizzati una sola volta.

ansible-playbook viene utilizzato per la gestione e la distribuzione della configurazione.

Parallelismo e comandi shell

Riavvia il tuo server aziendale in 12 fork paralleli alla volta. Per questo, dobbiamo configurare SSHagent per la connessione.

$ ssh-agent bash 
$ ssh-add ~/.ssh/id_rsa

Per eseguire il riavvio di tutti i server della tua azienda in un gruppo, "abc", in 12 fork paralleli:

$ Ansible abc -a "/sbin/reboot" -f 12

Per impostazione predefinita, Ansible eseguirà i comandi Ad-hoc sopra indicati dall'account utente corrente. Se vuoi cambiare questo comportamento, dovrai passare il nome utente nei comandi ad-hoc come segue:

$ Ansible abc -a "/sbin/reboot" -f 12 -u username

Trasferimento di file

Puoi usare i comandi ad-hoc per fare SCP (Secure Copy Protocol) molti file in parallelo su più macchine.

Trasferimento di file su molti server / macchine

$ Ansible abc -m copy -a "src = /etc/yum.conf dest = /tmp/yum.conf"

Creazione di una nuova directory

$ Ansible abc -m file -a "dest = /path/user1/new mode = 777 owner = user1 group = user1 state = directory"

Eliminazione dell'intera directory e file

$ Ansible abc -m file -a "dest = /path/user1/new state = absent"

Gestione dei pacchetti

I comandi ad-hoc sono disponibili per yum e apt. Di seguito sono riportati alcuni comandi ad-hoc che utilizzano yum.

Il seguente comando controlla se il pacchetto yum è installato o meno, ma non lo aggiorna.

$ Ansible abc -m yum -a "name = demo-tomcat-1 state = present"

Il seguente comando verifica che il pacchetto non sia installato.

$ Ansible abc -m yum -a "name = demo-tomcat-1 state = absent"

Il comando seguente controlla che l'ultima versione del pacchetto sia installata.

$ Ansible abc -m yum -a "name = demo-tomcat-1 state = latest"

Raccolta di fatti

I fatti possono essere usati per implementare le istruzioni condizionali nel playbook. Puoi trovare informazioni ad hoc di tutti i tuoi fatti tramite il seguente comando ad-hoc:

$ Ansible all -m setup