Capitolo 2 – Architettura e Componenti di Ansible

Dopo aver compreso cos’è Ansible, è fondamentale capire come è strutturato e quali sono i suoi componenti principali.

Una corretta comprensione dell’architettura è essenziale per utilizzarlo in modo professionale in ambienti server.


2.1 Modello Architetturale

Ansible utilizza un modello push-based.

Questo significa che:

Questo approccio riduce complessità, consumo risorse e superficie di attacco.


2.2 Control Node

Il Control Node è la macchina su cui è installato Ansible.

Caratteristiche:

Requisiti:

In ambienti enterprise il Control Node può essere:


2.3 Managed Nodes

I Managed Nodes sono i server che vengono configurati da Ansible.

Requisiti minimi:

Importante:
Non è richiesto alcun agente Ansible installato sul nodo remoto.

Questo è uno dei principali vantaggi rispetto ad altri strumenti di configuration management.


2.4 Inventory

L’Inventory è il file che definisce quali server devono essere gestiti.

Può essere:

Esempio concettuale:

L’inventory è il punto di partenza di qualsiasi esecuzione.


2.5 Moduli

I Moduli sono le unità operative di Ansible.

Sono piccoli programmi che:

Quando eseguiamo un comando Ansible:

  1. Il modulo viene copiato temporaneamente sul nodo remoto
  2. Viene eseguito
  3. Restituisce un output JSON
  4. Viene rimosso

Questo processo è trasparente per l’amministratore.


2.6 Playbook

I Playbook sono file YAML che descrivono lo stato desiderato dell’infrastruttura.

Definiscono:

Un playbook può:

Rappresentano il cuore dell’automazione con Ansible.


2.7 Idempotenza

Concetto fondamentale in ambito sistemistico.

Un’operazione è idempotente quando:

Esempio:

Questo garantisce:


2.8 Flusso di Esecuzione

Quando si lancia un playbook:

  1. Ansible carica il file di configurazione
  2. Legge l’inventory
  3. Stabilisce connessioni SSH
  4. Esegue i task in ordine
  5. Riporta lo stato finale (ok, changed, failed)

L’output fornisce:


Conclusione

Ansible si basa su un’architettura semplice ma estremamente potente:

Comprendere questi elementi è fondamentale prima di passare alla configurazione operativa.

Nel prossimo capitolo entreremo nella configurazione iniziale dell’ambiente di lavoro: inventory, ansible.cfg e struttura progetto.


Revision #2
Created 2026-02-26 13:45:14 UTC by Pe
Updated 2026-02-26 13:52:02 UTC by Pe