Utilizzare Ansible per Configurare un Server Web Locale
Imparerai come connetterti a un server Ubuntu remoto e gestirlo utilizzando Ansible. Creeremo file di configurazione che ti permetteranno di automatizzare attività di routine. Come esempio, aggiorneremo l'indice dei pacchetti e installeremo Git — il primo passo per preparare un server allo sviluppo o ad attività DevOps.
Se utilizzi Windows, esegui questi comandi in wsl
. Se sei su macOS o Linux, puoi semplicemente usare il terminale.
Installazione di Ansible
Prima di iniziare, assicurati che Ansible sia installato sulla tua macchina:
sudo apt update
sudo apt install ansible -y
Il primo comando, sudo apt update
, aggiorna l'elenco dei pacchetti del sistema in modo che sia a conoscenza delle versioni software più recenti disponibili. Successivamente, sudo apt install ansible -y
installa Ansible sulla macchina, confermando automaticamente l'installazione senza richiedere di digitare "yes".
Creazione dei file di configurazione
Per prima cosa, è necessario configurare un elenco di server a cui Ansible si collegherà. A tal fine, si crea un file di inventario chiamato hosts.ini
:
Incollare quanto segue:
hosts.ini
[ubuntu_container]
— il gruppo di host gestito da Ansible;
localhost
— l'indirizzo host (in questo caso, la macchina locale che esegue il container Docker);
ansible_port=2222
— la porta SSH per la connessione;
ansible_user=root
e ansible_password=root
— credenziali per l'accesso SSH;
ansible_connection=ssh
— indica a Ansible di utilizzare SSH per eseguire i comandi.
Il file hosts.ini
indica a Ansible dove connettersi e quali parametri utilizzare. Senza questo file, un playbook non può individuare il server né eseguire le attività.
Playbook setup.yml
Successivamente, crea lo script di automazione, o playbook, setup.yml
:
Incolla quanto segue:
setup.yml
Il file setup.yml
definisce i task che Ansible deve eseguire sul server.
-
name: Configure Ubuntu container
— il titolo del playbook; -
hosts: ubuntu_container
— il gruppo di host dahosts.ini
; -
become: true
— esegue i comandi come superutente (root
); -
tasks
— un elenco di azioni che verranno eseguite in ordine.
In questo esempio, si aggiorna l'indice dei pacchetti e si installa Git.
Configurazione di Ansible
Infine, si configura Ansible stesso. Il file ansible.cfg
personalizza il comportamento di Ansible. Creare ansible.cfg
:
Incollare:
ansible.cfg
In questo caso, disabilitiamo il controllo della chiave host SSH. Normalmente, Ansible verifica l'impronta digitale del server per garantire una connessione sicura. Per questo tutorial, questa scelta semplifica la procedura, poiché stiamo utilizzando un container Docker temporaneo.
Verifica della Connessione
Dopo aver creato tutti i file di configurazione, è importante verificare che tutto sia impostato correttamente. Questo garantisce che Ansible possa connettersi al tuo server Ubuntu remoto ed eseguire le attività come previsto.
Quando esegui questo comando, Ansible tenta di connettersi al tuo container Ubuntu tramite SSH utilizzando le credenziali e la porta specificate in hosts.ini
. Se tutto è configurato correttamente, vedrai:

Ora è il momento di eseguire realmente il playbook, poiché il controllo della connettività è stato superato con successo e puoi essere sicuro che tutto funzionerà correttamente.
Quando viene eseguito questo comando, Ansible si connetterà al server remoto Ubuntu tramite SSH, eleverà i privilegi utilizzando become: true
ed eseguirà tutte le attività in sequenza. In questo esempio, aggiorna prima l'indice dei pacchetti affinché il sistema conosca le versioni più recenti del software, quindi installa Git.
Al termine del playbook, è possibile verificare che Git sia stato installato sul server Ubuntu. Per prima cosa, connettersi al server tramite SSH:
Quindi verificare la versione di Git installata:
Se tutto ha funzionato correttamente, verrà visualizzata la versione di Git, confermando che il playbook è stato eseguito con successo.
1. Qual è lo scopo del file hosts.ini
in Ansible?
2. Nel playbook, perché si usa become: true
?
Grazie per i tuoi commenti!
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione
What should I do if the Ansible ping command fails?
Can I add more tasks to the setup.yml playbook?
How do I manage multiple servers with this setup?
Awesome!
Completion rate improved to 3.7
Utilizzare Ansible per Configurare un Server Web Locale
Scorri per mostrare il menu
Imparerai come connetterti a un server Ubuntu remoto e gestirlo utilizzando Ansible. Creeremo file di configurazione che ti permetteranno di automatizzare attività di routine. Come esempio, aggiorneremo l'indice dei pacchetti e installeremo Git — il primo passo per preparare un server allo sviluppo o ad attività DevOps.
Se utilizzi Windows, esegui questi comandi in wsl
. Se sei su macOS o Linux, puoi semplicemente usare il terminale.
Installazione di Ansible
Prima di iniziare, assicurati che Ansible sia installato sulla tua macchina:
sudo apt update
sudo apt install ansible -y
Il primo comando, sudo apt update
, aggiorna l'elenco dei pacchetti del sistema in modo che sia a conoscenza delle versioni software più recenti disponibili. Successivamente, sudo apt install ansible -y
installa Ansible sulla macchina, confermando automaticamente l'installazione senza richiedere di digitare "yes".
Creazione dei file di configurazione
Per prima cosa, è necessario configurare un elenco di server a cui Ansible si collegherà. A tal fine, si crea un file di inventario chiamato hosts.ini
:
Incollare quanto segue:
hosts.ini
[ubuntu_container]
— il gruppo di host gestito da Ansible;
localhost
— l'indirizzo host (in questo caso, la macchina locale che esegue il container Docker);
ansible_port=2222
— la porta SSH per la connessione;
ansible_user=root
e ansible_password=root
— credenziali per l'accesso SSH;
ansible_connection=ssh
— indica a Ansible di utilizzare SSH per eseguire i comandi.
Il file hosts.ini
indica a Ansible dove connettersi e quali parametri utilizzare. Senza questo file, un playbook non può individuare il server né eseguire le attività.
Playbook setup.yml
Successivamente, crea lo script di automazione, o playbook, setup.yml
:
Incolla quanto segue:
setup.yml
Il file setup.yml
definisce i task che Ansible deve eseguire sul server.
-
name: Configure Ubuntu container
— il titolo del playbook; -
hosts: ubuntu_container
— il gruppo di host dahosts.ini
; -
become: true
— esegue i comandi come superutente (root
); -
tasks
— un elenco di azioni che verranno eseguite in ordine.
In questo esempio, si aggiorna l'indice dei pacchetti e si installa Git.
Configurazione di Ansible
Infine, si configura Ansible stesso. Il file ansible.cfg
personalizza il comportamento di Ansible. Creare ansible.cfg
:
Incollare:
ansible.cfg
In questo caso, disabilitiamo il controllo della chiave host SSH. Normalmente, Ansible verifica l'impronta digitale del server per garantire una connessione sicura. Per questo tutorial, questa scelta semplifica la procedura, poiché stiamo utilizzando un container Docker temporaneo.
Verifica della Connessione
Dopo aver creato tutti i file di configurazione, è importante verificare che tutto sia impostato correttamente. Questo garantisce che Ansible possa connettersi al tuo server Ubuntu remoto ed eseguire le attività come previsto.
Quando esegui questo comando, Ansible tenta di connettersi al tuo container Ubuntu tramite SSH utilizzando le credenziali e la porta specificate in hosts.ini
. Se tutto è configurato correttamente, vedrai:

Ora è il momento di eseguire realmente il playbook, poiché il controllo della connettività è stato superato con successo e puoi essere sicuro che tutto funzionerà correttamente.
Quando viene eseguito questo comando, Ansible si connetterà al server remoto Ubuntu tramite SSH, eleverà i privilegi utilizzando become: true
ed eseguirà tutte le attività in sequenza. In questo esempio, aggiorna prima l'indice dei pacchetti affinché il sistema conosca le versioni più recenti del software, quindi installa Git.
Al termine del playbook, è possibile verificare che Git sia stato installato sul server Ubuntu. Per prima cosa, connettersi al server tramite SSH:
Quindi verificare la versione di Git installata:
Se tutto ha funzionato correttamente, verrà visualizzata la versione di Git, confermando che il playbook è stato eseguito con successo.
1. Qual è lo scopo del file hosts.ini
in Ansible?
2. Nel playbook, perché si usa become: true
?
Grazie per i tuoi commenti!