Corso di formazione su Ansible

Un corso per imparare la prototipazione dei server e l'automazione dei servizi .

Il problema

Automatizzare le attività ripetitive e standardizzare gli ambienti è un problema che investe il mondo IT sia dal lato della gestione dei sistemi (Ops) che dal lato dello sviluppo (Dev). Il proliferare delle piattaforme e in particolare l'uso delle soluzioni Cloud ha accentuato il problema, rendendo necessario avere strumenti veloci, affidabili e facili per la gestione di configurazioni e per il continuo rilascio di codice.

Ansible: la nostra soluzione

Ansible è uno strumento per orchestrare l'installazione e la configurazione di sistemi ed applicazioni: permette di definire lo stato di uno o più server in modo prevedibile, replicabile e consistente. Simile in questo a software come Puppet, Chef, Saltstack o CFEngine, esso basa la propria filosofia su una parola chiave: la semplicità d'uso.

A differenza di altri sistemi, Ansible non necessita di altro che di una connessione SSH tra la macchina che funge da controllore e i server da controllare, e tutto si gestisce con semplici direttive di configurazione contenute in file testuali. Ancora: è una soluzione agentless per cui non è necessario installare nessun client sugli hosts da configurare, ma solo Python e - cosa che non guasta - è anche un prodotto che presenta una curva di apprendimento molto agevole.

Una piccola curiosita: la parola “ansible” si riferisce all’omonimo dispositivo che nel romanzo di fantascienza “Il Gioco di Ender” di Orson Scott Card permetteva di controllare remotamente le astronavi.

F.A.Q.

Cosa avrò imparato alla fine del corso?

Ad usare Ansible per fare partire, fermare e configurare dei server Linux su Cloud (AWS o Digitalocean); si imparerà come si definiscono con Ansible i profili di configurazione di vari server, corrispondenti ad usi differenti (i.e. web server, database server, server di monitoraggio, eccetera).

Si imparerà inoltre come svolgere alcune azioni ripetitive su tutti i server dell'infrastruttura, come ad esempio aggiornare dei pacchetti software, fare deploy di nuovi programmi, eccetera.

Devo portare il mio portatile?

Sì, con installato l’ambiente di sviluppo software di tua scelta.

Come devo prepararmi per il corso?

Installa una macchina Vagrant preparata da noi (scaricabile all'indirizzo) e assicurati che sia funzionante.

È un corso per principianti o per esperti?

È per principianti e per chi ha provato ad utilizzare Ansible ma non è ancora riuscito a farlo diventare una pratica quotidiana.

Il corso si applica solo a sistemisti o programmatori Linux, o anche Windows ?

Il corso si applica a tutti, ma è bene avere una confidenza di base con la shell Bash - si lavorerà su una macchina Vagrant Debian Wheezy.