Ansible è uno strumento open source per il provisioning del software, la gestione della configurazione e la distribuzione delle applicazioni che ti consente di gestire la tua infrastruttura in modalità IaC (Infrastructure as Code). In questo articolo tratteremo l'installazione e la configurazione iniziale di Ansible su Ubuntu Linux.
Perché Ansible
I team operativi e gli amministratori utilizzano gli strumenti di gestione della configurazione per semplificare il processo di automazione della gestione delle configurazioni di un gran numero di server. Utilizzando Ansible hai il controllo su numerosi sistemi da una posizione centrale.
Gli strumenti di gestione della configurazione più popolari disponibili per te sono:
- Pupazzo
- Chef
- Abile
Ecco un grafico di Google Trends, che mostra il volume di ricerca per tutti loro:
Ansible è molto semplice, il che lo rende uno strumento preferito da molte persone in tutto il mondo. Utilizza SSH per eseguire attività di automazione descritte nei file YAML.
Ansible supporta anche i carichi di lavoro containerizzati e l'automazione della distribuzione dell'infrastruttura su cloud pubblici e privati.
Non importa quali siano i requisiti per la tua applicazione; Ansible si assumerà la responsabilità di creare, gestire e mantenere tutto.
Ecco i casi d'uso principali per Ansible:
- Infrastrutture private e automazione del cloud: Ansible è uno strumento potente e pratico che consente agli utenti di gestire vari dispositivi fisici, come dispositivi di archiviazione, server bare-metal e persino dispositivi di rete. È semplice utilizzare l'automazione basata su Playbook di Ansible e integrarla con l'infrastruttura di provisioning esistente.
- Gestione dei servizi IT: Puoi modernizzare i processi di servizio in modo più rapido ed efficace automatizzando le richieste di servizio e offrendo un'unica fonte di informazioni sulle configurazioni delle risorse IT.
- Automazione della virtualizzazione: Ansible supporta molti dei principali framework del settore della virtualizzazione, tra cui Vagrant, VMware, Red Hat Virtualization (RHV), vSphere. Ansible può fornire mondi virtuali, orchestrarli e distribuirli in qualsiasi ambiente virtuale.
- Automazione dei container: Ansible supporta Red Hat OpenShift Container Platform e altre tecnologie di container e gestisce Kubernetes nativo e la gestione dei container Docker. Ansible esegue il wrapping dei comandi nativi su tutti questi framework, consentendoti di automatizzare quasi tutto.
Nella parte successiva di questa guida, esamineremo l'installazione e la configurazione di Ansible sul sistema Ubuntu.
Installazione di Ansible
Per installare Ansible su Ubuntu Linux, usa il seguente comando:
sudo apt install ansible
Verifichiamo con successo l'installazione di Ansible:
ansible --version
Se stai installando Ansible su un server o un container Docker nuovo di zecca, esegui il comando per generare la chiave SSH:
ssh-keygen
Puoi premere Invio per rispondere alle domande per procedere con la configurazione della chiave SSH predefinita, oppure puoi apportare le modifiche richieste.
Se desideri saperne di più su SSH, la sua configurazione e gli esempi di utilizzo, ti consiglio il nostro articolo Le 10 principali funzionalità di SSH che devi conoscere per essere più produttivo.
Configurazione host Ansible
Configurazione OpenSSH
Per sbloccare la capacità di utilizzare Ansible per l'automazione di un server o di un container, è necessario installare un pacchetto SSH su di esso.
sudo apt install openssh-server -y
Verifica che lo stato del servizio SSH del nostro server sia attivo :
sudo systemctl status sshd
Puoi anche abilitare sshd
servizio se il suo stato non è Attivo .
sudo systemctl start sshd
Se hai abilitato il firewall UFW, assicurati di non dimenticare di consentire il traffico SSH verso l'host:
sudo ufw allow ssh
Utente Ansible
Ora dobbiamo aggiungere un nuovo utente chiamato ansible
.
sudo adduser ansible
Compila tutte le credenziali richieste, tra cui password, nome completo, ecc.
Inoltre, digita "y ‘ nel terminale se hai fornito le informazioni corrette.
Successivamente, dobbiamo impostare l'accesso senza password per ansible
utente e lui la possibilità di eseguire comandi amministrativi:
echo "ansible ALL=(ALL) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/ansible
Cerca l'indirizzo IP dell'host in cui hai creato il ansible
utente:
hostname -I
Copiamo la chiave SSH pubblica sull'host in cui abbiamo installato Ansible per consentire l'autenticazione senza password:
ssh-copy-id [email protected]
Usa '-L ' opzione nel usermod
comando per disabilitare l'accesso basato su password:
sudo usermod -L ansible
Proviamo a inviare SSH all'host usando un ansible
utente.
Non dovresti usare una password:
ssh [email protected]
Test della connessione Ansible all'host
Ora proviamo che siamo pronti per l'automazione Ansible.
Dobbiamo creare una nuova directory per Ansible.
mkdir ~/ansible-demo
Vai alla ansible-demo
directory:
cd ~/ansible-demo/
Aggiungi l'indirizzo IP dell'host che desideri gestire gli hosts
file:
nano hosts
Inserisci l'IP dell'host Ansible e salva questo file:
Infine, possiamo eseguire il ping dell'host utilizzando Ansible:
ansible all -i ./hosts -u ansible -m ping
Il SUCCESS
si riferisce alla connessione stabilita con successo all'host Ansible. In un altro caso, UNREACHABLE
verrà visualizzato se il sistema ha riscontrato problemi durante il test dell'automazione Ansible.
Ora puoi iniziare a sviluppare i tuoi playbook di automazione Ansible per automatizzare la configurazione dell'host.
Riepilogo
Questo articolo ti ha fornito una procedura passo passo per l'installazione e la configurazione di Ansible su Ubuntu. A partire da ora, puoi lavorare sui playbook di automazione.
Speriamo che questo articolo ti sia stato utile. Se è così, per favore, aiutaci a diffonderlo nel mondo.
Crediti
Abbiamo ottenuto il logo Ansible da Wikimedia Commons.