Come usare il modulo ansible ping

Come usare il modulo ansible ping

Per eseguire un'attività automatizzata su un host remoto con Ansible, è necessario riempire e lavorare con determinate variabili, come prevedibile. Ad esempio, questo tipo di attività è necessario per mettere online un host remoto, consentire i privilegi di accesso e utente e impostare un ambiente Python.

È possibile SSH in un host remoto e verificare se l'host soddisfa tutti i criteri. Tuttavia, come strumento di automazione, Ansible fornisce moduli che consentono di eseguire questi noiosi compiti che richiedono tempo in una singola riga di comando.

Questo tutorial mostra come utilizzare il modulo ping incorporato Ansible per eseguire varie variabili impostate su host remoti. La richiesta di ping Ansible è uno strumento semplice ma utile che è possibile utilizzare per testare la disponibilità e la praticità degli host remoti.

Ora daremo uno sguardo più da vicino a come funziona il ping ansible.

NOTA: Questa sezione è in qualche modo teorica. Se tutto ciò di cui hai bisogno è la parte tecnica dell'articolo, puoi saltare questa sezione. Anche così, ti consigliamo di leggere questa sezione, in quanto fornisce alcune informazioni utili e informazioni sul modulo Ping.

Con questo notato, ora andremo avanti per introdurre il modulo ping.

Informazioni sul modulo ping ansible

La richiesta di ping Ansible controlla l'host remoto. Questo modulo controlla specificamente:

  • Se l'host remoto è attivo e accessibile.
  • Se l'ambiente Python può eseguire con successo i playbook richiesti.
  • L'accesso dell'utente e i privilegi.

Dopo l'invio di una richiesta di ping all'host remoto, il modulo restituisce un valore che indica se il ping ha avuto successo. Per impostazione predefinita, il modulo ping restituisce la stringa "pong" al successo e un'eccezione su errore (se specificato).

Suggerimento professionale: Per assicurarsi che i tuoi playbook Ansible sugli host remoti target non falliscano, utilizzare il modulo ping per verificare se i requisiti sono soddisfatti e svolgono le attività solo se si ottiene un output riuscito.

Caratteristiche del modulo Ansible Ping

Il modulo ping è abbastanza semplice e il seguente è un elenco delle funzionalità fornite da questo modulo:

  • Non un ping ICMP; Piuttosto, è un piccolo modulo che richiede un ambiente Python valido su host remoti.
  • Gli host remoti di Windows dovrebbero invece utilizzare il modulo Win_ping.
  • Fornisce un modulo net_ping per i dispositivi di rete.
  • Accetta solo un singolo parametro per aumentare un'eccezione.
  • Utilizzato per impostazione predefinita quando si chiama il comando Ansible nella directory/usr/bin/ansible per verificare le autorizzazioni di accesso e un ambiente Python valido.
  • Restituisce la stringa "pong" sul successo.

Come usare il modulo ansible ping

Ora esamineremo alcuni esempi che usano il modulo ping ansible.

Usando il comando ad hoc ping

Il modo più semplice per eseguire il modulo ping ansible è eseguire un semplice comando ad hoc nel terminale.

Il comando ad hoc è il seguente:

ansible tutto -m ping -v

Il comando sopra inizia chiamando Ansible, seguito dal modello specifico dell'host. In questo caso, vogliamo ping "tutti" host. La parte successiva, '-m,' specifica il modulo che vogliamo usare. Il '-v' sta per Verbose.

Al successo, otterrai un output come quello mostrato di seguito:

Utilizzando/etc/ansible/ansible.CFG come file di configurazione 35.222.210.12
| Success =>
"Ansible_Facts":
"Discovered_Interpreter_python": "/usr/bin/python",
"cambiato": falso,
"ping": "pong"

Se gli host remoti non sono disponibili (forse sono offline), otterrai un output come quello mostrato di seguito:

Utilizzando/etc/ansible/ansible.CFG come file di configurazione 35.222.210.12
| IRRAGGIUNGIBILE! =>
"cambiato": falso,
"MSG": "Impossibile connettersi all'host tramite SSH: SSH: connettersi all'host 35.222.210.12 Porta 22: connessione scaduta ",
"Irraggiungibile": vero

Utilizzando il modulo ping nei playbook

Puoi anche usare il modulo ping all'interno di un playbook. Nella maggior parte dei casi, non costruirai un playbook che esegue solo una richiesta di ping. Tuttavia, è possibile avvolgere tutte le attività all'interno delle condizioni della richiesta di ping.

Considera il seguente semplice playbook:

- Host: tutto
Diventa: sì
compiti:
- ping

Potresti notare che nel playbook sopra, ho incluso la direttiva "diventa". Questo non è un requisito, ma ho incontrato casi in cui il modulo ping non riesce per un utente standard. Ora puoi eseguire il playbook e verificare se il server host soddisfa i requisiti per una risposta "pong" di successo.

Ansible-Playbook Ping.YML

Se il ping non ha successo, otterrai il seguente errore "irraggiungibile":

fatale: [35.222.210.12]: irraggiungibile! => "modificato": false, "msg": "non è riuscito a connettersi all'host tramite ssh: ssh: connettersi all'host 35.222.210.12 porta 22: connessione a tempo "," irraggiungibile ": true

Utilizzando l'eccezione di aumento con il modulo ping

È inoltre possibile specificare i dati come un arresto anomalo per indurre un'eccezione. Ciò cambia il ritorno predefinito da "pong" a "Crash.'

Considera il seguente playbook:

- Host: tutto
Diventa: sì
compiti:
- ping:
Crash: dati

L'esecuzione del playbook con eccezione dovrebbe restituire il seguente valore:

ansible-playbook ping_except.YML

Conclusione

Questo tutorial ti ha mostrato la diversa utilità del modulo ping. Sebbene questo modulo non contenga parametri complessi come la maggior parte dei moduli Ansible, contiene ancora potenti capacità. Ad esempio, è possibile utilizzare il modulo ping per verificare se un errore è dovuto a un ambiente Python mancante e creare un'attività per installare l'ambiente richiesto sull'host remoto.