Ansible Ubuntu · 4 min read · Dec 20, 2025
Come installare e configurare Ansible su Ubuntu 18.04 LTS

Ansible è un software gratuito e open source che può essere utilizzato per automatizzare il provisioning del software, la gestione della configurazione e il deployment delle applicazioni. A differenza di Puppet o Chef, non è necessario impostare un ambiente client-server prima di utilizzare Ansible. Puoi gestire più host da una posizione centrale. Questo strumento è molto semplice ma potente per automatizzare ambienti applicativi IT complessi a più livelli. Ansible comunica tramite normali canali SSH per recuperare informazioni da macchine remote ed eseguire compiti.
In questo tutorial, impareremo come installare e utilizzare Ansible su un server Ubuntu 18.04.
Requisiti
- Due sistemi server Ubuntu 18.04 con OpenSSH server installato.
- Un indirizzo IP statico 192.168.0.101 è configurato sul sistema server e 192.168.0.104 è configurato sul sistema client.
- Un utente non root con privilegi sudo è configurato su entrambi i sistemi.
Iniziare
Prima di iniziare, aggiorna il tuo sistema con l’ultima versione con il seguente comando:
sudo apt-get update -y
sudo apt-get upgrade -yUna volta che il tuo sistema è aggiornato, riavvia il sistema per applicare le modifiche.
Installare e configurare Ansible
Per impostazione predefinita, l’ultima versione di Ansible non è disponibile nel repository predefinito di Ubuntu 18.04. Quindi dovrai aggiungere il PPA di Ansible al tuo server. Puoi farlo eseguendo il seguente comando:
sudo apt-add-repository ppa:ansible/ansibleSuccessivamente, aggiorna il repository e installa Ansible con il seguente comando:
sudo apt-get update -y
sudo apt-get install ansible -yUna volta completata l’installazione, puoi controllare la versione di Ansible con il seguente comando:
sudo ansible --versionOutput:
ansible 2.7.1
config file = /etc/ansible/ansible.cfg
configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python2.7/dist-packages/ansible
executable location = /usr/bin/ansible
python version = 2.7.15rc1 (default, Nov 12 2018, 14:31:15) [GCC 7.3.0]
Successivamente, dovrai definire il tuo sistema client che desideri gestire nel file hosts di Ansible. Puoi farlo modificando il file /etc/ansible/hosts:
sudo nano /etc/ansible/hostsAggiungi le seguenti righe:
[Client]
node1 ansible_ssh_host=192.168.0.104
Salva e chiudi il file, quando hai finito.
Configurare le chiavi SSH per il sistema client
Ansible utilizza SSH per comunicare con l’host client. Quindi dovrai configurare l’autenticazione SSH basata su chiave per l’host client.
Per prima cosa, genera una coppia di chiavi SSH con il seguente comando:
ssh-keygenOutput:
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:bTVjTCKqxD8rnIw7/6mB6ZH9cnhzzOFg+/+x4clSOow root@ubuntu1804
The key's randomart image is:
+---[RSA 2048]----+
| . . . |
| . . . + |
| o . * |
| . o . o o |
| . o S o |
| O .oo.. . |
| * Bo.* + oo |
| ..oo+=.E =o = |
| ooo*++...+* |
+----[SHA256]-----+
Successivamente, copia questa chiave pubblica nel sistema client con il seguente comando:
ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]Output:
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
[email protected]'s password:
Number of key(s) added: 1
Now try logging into the machine, with: "ssh '[email protected]'"
e check to make sure that only the key(s) you wanted were added.
Lavorare con Ansible
Ansible è ora installato e configurato. È tempo di testare Ansible.
Sul server Ansible, prova a pingare il tuo sistema client utilizzando Ansible con il seguente comando.
ansible -m ping ClientOutput:
node1 | SUCCESS => {
"changed": false,
"ping": "pong"
}
Se hai più client configurati nel tuo file hosts di Ansible. Allora, puoi pingare tutti i sistemi client con il seguente comando:
ansible -m ping allPuoi controllare lo stato del server web Apache sul sistema client con il seguente comando:
ansible -m shell -a 'service apache2 status' ClientOutput:
node1 | CHANGED | rc=0 >>
* apache2 is running
Per controllare la dimensione della partizione del sistema client, esegui il seguente comando:
ansible -m shell -a 'df -h' ClientOutput:
node1 | CHANGED | rc=0 >>
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 138G 48G 83G 37% /
none 4.0K 0 4.0K 0% /sys/fs/cgroup
udev 1.9G 4.0K 1.9G 1% /dev
tmpfs 384M 1.2M 383M 1% /run
none 5.0M 0 5.0M 0% /run/lock
none 1.9G 67M 1.9G 4% /run/shm
none 100M 36K 100M 1% /run/user
/dev/sda5 225G 35G 180G 16% /Data
Congratulazioni! hai installato e configurato Ansible con successo su un server Ubuntu 18.04. Ora puoi facilmente utilizzare Ansible per eseguire compiti semplici da remoto.
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.