Ansible AWX · 6 min read · Jan 25, 2026

Guida Ansible AWX: Uso e Configurazione di Base

AWX è un’applicazione web open source che fornisce un’interfaccia utente, un’API REST e un motore di attività per Ansible. È la versione open source di Ansible Tower. L’AWX ti consente di gestire playbook Ansible, inventari e pianificare lavori da eseguire utilizzando l’interfaccia web.

In questo tutorial, ti mostreremo l’uso di base di Ansible AWX. Quindi, hai bisogno di un server su cui è già stato installato Ansible AWX. Copriamo alcune configurazioni di base di Ansible AWX che devi conoscere, come configurare le credenziali, gli inventari, configurare e eseguire modelli di lavoro, ecc. Se non hai ancora installato Ansible, ti preghiamo di vedere questo tutorial: https://www.howtoforge.com/how-to-install-ansible-awx-with-nginx-reverse-proxy-on-ubuntu-1804/.

Prerequisiti

  • 2 o 3 server - 10.5.5.20 ansible-awx
  • 10.5.5.21 lemp
  • Comprensione di base di Ansible
  • Privilegi di root

Cosa faremo:

  1. Configurazione e Setup dell’Ambiente
  2. Configurazione delle Credenziali
  3. Configurazione degli Inventari
  4. Configurazione dei Progetti
  5. Configurazione dei Modelli di Lavoro
  6. Esecuzione dei Lavori

Passo 1 - Configurazione e Setup dell’Ambiente

In questo tutorial, stiamo per distribuire ed eseguire il playbook Ansible per l’installazione di base di LEMP tramite il dashboard di Ansible AWX.

Abbiamo due server per l’awx stesso e la macchina target.

10.5.5.20   ansible-awx  
10.5.5.21   lemp

Ora stiamo per distribuire il playbook come utente chiamato ‘hakase’ e utilizzare l’autenticazione SSH basata su chiave. Quindi, assicurati di aver già configurato l’utente e l’autenticazione basata su chiave sulla macchina target ‘lemp’.

Testa utilizzando il seguente comando dal server ‘ansible-awx‘.

su - hakase  
ssh [email protected]

Assicurati di essere connesso senza alcuna password.

Ora l’utente ‘hakase’ deve avere la password di root senza password per eseguire attività.

Sulla macchina target ‘lemp‘, esegui il comando sudo come di seguito.

su - hakase  
sudo su

Assicurati di aver inserito i privilegi di root senza la password.

Ora devi installare i pacchetti python su tutte le macchine target gestite da Ansible.

sudo apt install python -y

Install Python

Passo 2 - Configurazione delle Credenziali

Prima di tutto, dobbiamo configurare le Credenziali di Ansible AWX. Viene utilizzato per l’autenticazione quando si avviano ed eseguono lavori contro server gestiti, sincronizzando con le fonti di inventario e importando progetti.

Per impostazione predefinita, Ansible AWX supporta molte credenziali, inclusa la macchina VM tramite autenticazione SSH, Amazon Web Services, Google Compute Engine, OpenStack, password Vault, Controllo del Codice, ecc.

Per configurare le credenziali, fai clic sul menu ‘Credenziali‘ a sinistra e fai clic sul pulsante ‘+’ sul lato destro.

Setup Credentials

Ora digita le credenziali ‘NOME‘ e ‘DESCRIZIONE‘, quindi specifica il ‘TIPO DI CREDENZIALI‘ come ‘Macchina‘.

Semplicemente, la credenziale ‘Macchina’ ti consentirà di utilizzare l’autenticazione SSH per gestire i server. Supporta sia le autenticazioni basate su password che su chiave.

Per questa guida, utilizzeremo l’autenticazione basata su chiave. Quindi, digita il nome utente e incolla le chiavi private per quell’utente.

key-based authentication

Quindi fai clic sul pulsante ‘SALVA‘.

Di conseguenza, il nuovo tipo di credenziali Ansible AWX ‘Macchina’ è stato creato.

Ansible AWX credentials

Passo 3 - Configurazione degli Inventari

Gli inventari sono gruppi di server host gestiti da Ansible AWX. Gli inventari ti consentono di creare un gruppo con diversi server host. E rende più facile gestire server diversi con ambienti diversi.

Per gestire e fornire server, dobbiamo creare un nuovo gruppo di inventario e quindi aggiungere gli host server in quel gruppo di inventario.

Per aggiungere un nuovo inventario, fai clic sul menu ‘Inventari‘ a sinistra, quindi fai clic sul pulsante ‘+’ e scegli ‘Inventario’.

Setup AWX Inventories

Digita il ‘NOME‘ e la ‘DESCRIZIONE‘ dell’inventario, quindi fai clic sul pulsante ‘SALVA‘.

Name and description

Ora fai clic sulla scheda ‘HOSTS‘ e fai clic sul pulsante ‘+’ per aggiungere nuovi host.

hosts

Digita il ‘NOME HOST‘, ‘DESCRIZIONE‘ e le ‘VARIABILI‘ con configurazione aggiuntiva per l’indirizzo IP della macchina target ‘ansible_host: 10.5.5.21’.

Hostname and variables

Ora fai clic sul pulsante ‘SALVA‘.

Successivamente, dobbiamo assicurarci della configurazione degli host controllando gli host utilizzando il comando ping.

Torna alla scheda ‘HOSTS‘, seleziona il nome del server degli host e fai clic sul pulsante ‘ESEGUI COMANDI‘.

Ora scegli il ‘MODULO‘ chiamato ‘ping‘, fai clic sul pulsante di ricerca all’interno delle ‘CREDENZIALI MACCHINA‘ e ‘SELEZIONA‘ le tue, quindi fai clic sul pulsante ‘LANCIA‘.

Machine credential

E verrai reindirizzato a una nuova pagina e qui sotto ci sono i risultati.

Result of the awx script run

Un nuovo inventario è stato creato e il server della macchina target è stato aggiunto ad esso.

Passo 4 - Configurazione dei Progetti

I progetti sono rappresentati come Playbook Ansible su AWX. Sono collezioni di Playbook Ansible che possiamo gestire tramite la directory di progetto locale o utilizzando il sistema SCM come Git, Subversion, Mercurial e RedHat Insights.

Per creare nuovi progetti, fai clic sul menu ‘Progetti‘ a sinistra e fai clic sul pulsante ‘+’.

AWX projects

Digita il ‘NOME‘ del tuo progetto e la ‘DESCRIZIONE‘, quindi scegli il ‘TIPO SCM‘ come ‘Git‘ e incolla il tuo repository di playbook.

Name, description and scm type

Ora fai clic sul pulsante ‘SALVA‘ e di conseguenza, un nuovo progetto per il playbook è stato creato.

Project has been added

Inoltre:

Se desideri creare un nuovo progetto con il tipo SCM ‘Manuale‘, puoi creare una nuova directory di playbook situata sotto la directory ‘/var/lib/awx/projects‘.

La directory ‘/var/lib/awx/projects’ è la directory di progetto predefinita per i tuoi playbook Ansible se stai utilizzando la versione docker di AWX con ‘project_data_dir‘ abilitato.

Passo 5 - Creare Nuovi Modelli di Lavoro

Il modello di lavoro è la definizione dell’esecuzione dei playbook Ansible stessi. Quindi, per creare un nuovo modello di lavoro o eseguire il modello di lavoro, dobbiamo aggiungere il playbook Ansible dal nostro ‘Progetto’, le ‘Credenziali’ per l’autenticazione e le macchine target memorizzate negli ‘Inventari’.

Per questa guida, abbiamo già creato un nuovo Progetto, Credenziale e Inventario. Quindi, fai semplicemente clic sul menu ‘Modelli‘ a sinistra, quindi fai clic sul pulsante ‘+’ e scegli l’opzione ‘Modello di lavoro‘.

Add job template

Ora devi digitare il ‘NOME‘ e la ‘DESCRIZIONE‘ del lavoro. Quindi scegli l’ ‘INVENTARIO‘, le ‘CREDENZIALI‘ e il ‘PROGETTO‘. E dopo, specifica il ‘PLAYBOOK‘ che desideri eseguire e distribuire.

Add job project details

E di conseguenza, il nuovo modello di lavoro Ansible AWX è stato creato.

Passo 6 - Eseguire il Modello di Lavoro

Dopo aver creato il nuovo modello di lavoro, eseguiremo il modello di lavoro e distribuiremo i Playbooks ‘Progetti’ agli host target nell’ ‘Inventario’.

Fai clic sul menu ‘Modelli‘ a sinistra e otterrai un elenco dei modelli di lavoro disponibili.

Una volta terminato il lavoro, otterrai il segno verde all’interno del nome del modello di lavoro.

Template run result

Fai clic sul segno verde all’interno del nome del modello di lavoro e ti verrà mostrato il risultato effettivo di quel lavoro.

Result of the job

Il lavoro è stato completato con successo e la macchina target ha installato il LEMP Stack tramite Ansible AWX.

Passo 7 - Testare la Macchina Target

Testare il nome di dominio della macchina target. La configurazione del nome di dominio è memorizzata nella configurazione ‘roles/web/vars/main.yml‘.

Test target server

Controllando i servizi Nginx e PHP-FPM utilizzando i comandi systemctl.

systemctl status nginx  
systemctl status php7.2-fpm

Nginx and php-fpm status

Testando il database MySQL sulla macchina target. Le configurazioni dettagliate del database MySQL sono memorizzate nel file di configurazione ‘roles/db/vars/main.yml’.

MySQL status

Di conseguenza, il LEMP Stack è stato installato sulla macchina target tramite Ansible AWX.

Riferimenti

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.