Come installare Ansible su Ubuntu 20.04 LTS

How Install Ansible Ubuntu 20



In questo articolo, ti mostrerò come installare Ansible su Ubuntu 20.04 LTS e configurare gli host Ubuntu 20.04 LTS per l'automazione di Ansible. Quindi iniziamo.

Topologia di rete:







qui, il linuxhint-711ea è una macchina Ubuntu 20.04 LTS in cui installerò Ansible.



Quindi, configurerò gli host host1 (indirizzo IP 192.168.20.162) e ospite2 (indirizzo IP 192.168.20.153) per l'automazione di Ansible ed eseguire comandi su di essi utilizzando Ansible dal linuxhint-711ea macchina.



chiamerò semplicemente host1 e ospite2 come host Ansible in questo articolo.





Installazione di Ansible:

Puoi facilmente installare Ansible su Ubuntu 20.04 LTS dal repository ufficiale dei pacchetti di Ubuntu.

Innanzitutto, aggiorna la cache del repository del pacchetto APT con il seguente comando:



$sudoapt aggiornamento

La cache del repository del pacchetto APT dovrebbe essere aggiornata.

Ora, installa Ansible con il seguente comando:

$sudoadattoinstallareansible

Per confermare l'installazione, premere E e poi premere .

Ansible dovrebbe essere installato.

Ora, esegui il seguente comando per verificare se ansible funziona correttamente.

$ansible--versione

Come puoi vedere, il comando ansible è disponibile e funziona correttamente.

Generazione della chiave SSH:

Ora devi generare una chiave SSH sul computer in cui hai installato Ansible.

Per generare una chiave SSH, esegui il seguente comando:

$ssh-keygen

Ora premi .

premere .

premere .

Dovrebbe essere generata una chiave SSH.

Configurazione degli host Ubuntu per Ansible Automation:

In questa sezione, ti mostrerò come configurare un host Ubuntu ( host1 ) per l'automazione Ansible. Se hai più di un host che desideri automatizzare utilizzando Ansible, ripeti la stessa procedura su ciascuno degli host.

Gli host Ubuntu Ansible (che si desidera configurare per l'automazione Ansible) devono avere il pacchetto server SSH installato.

Innanzitutto, aggiorna la cache del repository del pacchetto APT con il seguente comando:

$sudoapt aggiornamento

Quindi, installa il server OpenSSH con il seguente comando:

$sudoadattoinstallareopenssh-server-e

Nel mio caso, il pacchetto del server OpenSSH è già installato. Se non è installato nel tuo caso, dovrebbe essere installato.

Ora, controlla se il sshd servizio è in esecuzione con il seguente comando:

$sudostato systemctl sshd

Come puoi vedere, il sshd il servizio è attivo (di corsa) e abilitato (si avvierà automaticamente all'avvio del sistema).

Se la sshd il servizio non è attivo (in esecuzione) nel tuo caso, avvialo manualmente con il seguente comando:

$sudosystemctl avvia sshd

Se la sshd il servizio non è abilitato (non aggiunto all'avvio del sistema) nel tuo caso, aggiungilo manualmente all'avvio del sistema con il seguente comando:

$sudosystemctlabilitaresshd

Ora, configura il firewall per consentire l'accesso SSH con il seguente comando:

$sudoufw consentiressh

Dovresti anche creare un ansible utente e consentire l'accesso sudo senza password al ansible utente.

Per creare un ansible utente, eseguire il seguente comando:

$sudoadduser ansible

Ora, digita una password per il ansible utente e premere .

Ora, ridigita la password e premi .

Ora premi .

Ora premi .

Ora premi .

Ora premi .

Ora premi .

Ora digita e e poi premere .

Un ansible l'utente dovrebbe essere creato.

Ora, configura l'accesso sudo senza password al ansible utente con il seguente comando:

$buttato fuori 'ansible ALL=(ALL) NOPASSWD:ALL' | sudo tee /eccetera/sudoers.d/ansible

Ora, trova l'indirizzo IP dell'host Ansible ( host1 ) con il seguente comando:

$Nome host -IO

Ecco, l'indirizzo IP nel mio caso è 192.168.20.162 . Sarà diverso per te. Quindi, assicurati di sostituirlo con il tuo modulo ora attivo.

Ora, dal computer in cui hai installato Ansible, copia la chiave pubblica SSH sull'host Ansible ( host1 ) come segue:

$ssh-copy-id ansible@192.168.20.162

Digitare e premi .

Ora, digita la password per il ansible utente e premere .

La chiave pubblica SSH deve essere copiata in host1 .

Ora disabilita l'accesso basato su password per il ansible utente con il seguente comando:

$sudousermod-Lansible

Ora puoi solo SSH nell'host Ansible ( host1 ) come ansible utente senza alcuna password dal computer da cui hai copiato la chiave pubblica SSH (in questo caso, il computer su cui hai installato Ansible). Ma non sarai in grado di SSH nell'host Ansible ( host1 ) come ansible utente da qualsiasi altro computer. Ho configurato gli host Ansible in questo modo per motivi di sicurezza. Come la ansible l'utente non ha bisogno di alcuna password per l'esecuzione di comandi amministrativi, è rischioso consentire l'accesso basato su password per il ansible utente.

Ora dovresti essere in grado di eseguire SSH nell'host ansible host1 dal computer in cui hai installato Ansible come segue:

$sshansible@192.168.20.162

Come puoi vedere, sono in grado di accedere all'host Ansible ( host1 ) come utente ansible senza alcuna password. Quindi, l'host Ansible ( host1 ) è pronto per l'automazione di Ansible.

Se per qualche motivo, desideri consentire l'accesso basato su password per il ansible utente di nuovo, esegui il seguente comando nell'host Ansible ( host1 ):

$sudousermod-Uansible

Puoi configurare tutti gli host che desideri per l'automazione di Ansible allo stesso modo.

In questo articolo ho configurato solo 2 host, host1 e ospite2 per la dimostrazione.

Test Ansible:

Ora crea una nuova directory di progetto ~/ansible-demo/ nel computer in cui hai installato Ansible come segue:

$mkdir~/demo-ansible

Ora vai a ~/ansible-demo/ directory come segue:

$cd~/demo-ansible/

Ora, crea un nuovo padroni di casa file nella directory del progetto come segue:

$nanopadroni di casa

Ora, digita gli indirizzi IP o i nomi DNS degli host Ansible ( host1 e ospite2 nel mio caso) in padroni di casa file come segue:

192.168.20.162
192.168.20.153

Ora salva il file premendo + X seguito da E poi .

Ora, prova a eseguire il ping di tutti gli host utilizzando Ansible come segue:

$ansible tutto-io./padroni di casa-uansible-m ping

NOTA: Qui, l'opzione -u viene utilizzata per specificare il nome utente (ansible in questo caso) che Ansible utilizzerà per SSH negli host.

Come puoi vedere, è possibile eseguire il ping di tutti gli host. Quindi, gli host sono pronti per l'automazione di Ansible.

Allo stesso modo, puoi eseguire qualsiasi comando negli host utilizzando Ansible come segue:

$ansible tutto-io./padroni di casa-uansible-mguscio-a 'echo '$(nome host) - $(nome host -I)''

Come puoi vedere, il comando è stato eseguito correttamente in ciascuno degli host e l'output viene visualizzato.

Quindi, è così che installi Ansible su Ubuntu 20.04 LTS e configuri gli host Ubuntu 20.04 LTS per l'automazione di Ansible. Grazie per aver letto questo articolo.