Cos'è un Ansible Playbook?

Copia URL

Un Ansible® Playbook è un modello di attività di automazione, ovvero azioni IT eseguite con un intervento manuale minimo in un inventario di soluzioni IT. I Playbook indicano ad Ansible cosa fare con quali dispositivi.

Invece di applicare manualmente la stessa azione a centinaia o migliaia di tecnologie simili su più ambienti IT, l'esecuzione di un playbook completa automaticamente la stessa azione sul tipo di inventario specificato, ad esempio un set di router. I playbook fungono anche da framework di codice già scritto che gli sviluppatori possono utilizzare ad-hoc o come modello di partenza.

Sono utilizzati regolarmente per automatizzare l'infrastruttura IT (come i sistemi operativi e le piattaforme Kubernetes), le reti, i sistemi di sicurezza e i repository di codice come GitHub. I playbook consentono ai team IT di programmare applicazioni, servizi, nodi server o altri dispositivi senza dover partire da zero ogni volta.

Inoltre, possono essere salvati, condivisi o riutilizzati indefinitivamente, come le condizioni, le variabili e le attività che contengono. Per i team IT diventa più facile codificare le conoscenze operative e garantire l'esecuzione coerente delle stesse azioni.

Scrivi il tuo primo playbook con questo laboratorio interattivo gratuitoBlog: L'evoluzione di Ansible: supporto alle persone e alle tecnologieBlog: Automazione nel cloud ibrido. Perché è importante?

Gli Ansible Playbook sono elenchi di attività che vengono eseguite automaticamente nell'inventario o nei gruppi di host specificati. La combinazione di una o più attività di Ansible costituisce un play, ovvero un raggruppamento ordinato di attività abbinate a specifici host; le attività vengono eseguite nell'ordine in cui sono scritte. Un playbook può includere uno o più play, ma anche Ansible Role, ossia pacchetti di attività abbinate a risorse di automazione che possono essere eseguiti in più play o riutilizzati in diversi playbook.

Le attività vengono eseguite da moduli, ognuno dei quali esegue un'attività specifica in un playbook e contiene metadati che determinano quando e dove viene eseguita l'attività, nonché quale utente la esegue.

Esistono migliaia di moduli Ansible che eseguono tutti i tipi di attività IT, come:

 

Gestione del cloud

oci_vcn crea, elimina o aggiorna reti cloud virtuali negli ambienti Oracle Cloud Infrastructure. Analogamente, vmware_cluster aggiunge, rimuove o aggiorna i cluster VMware vSphere.

Gestione utenti

selogin mappa gli utenti del sistema operativo (SO) Linux® sull'utente SELinux e gitlab_user crea, aggiorna o elimina gli utenti GitLab.

Reti

Decine di moduli gestiscono le interfacce di programmazione delle applicazioni (API), i dispositivi IOS, NXOS e IOS XR Cisco, nonché i servizi F5 BIG-IP e il sistema operativo di rete cloud Arista EOS.

Sicurezza

Openssh_cert genera certificati host o utente OpenSSH e ipa_config gestisce le impostazioni di configurazione FreeIPA globali.

Gestione della configurazione

pip gestisce le dipendenze della libreria Python mentre assemble consolida i file di configurazione dai frammenti.

Comunicazione

mail può inviare automaticamente email in base a determinati criteri e snow_record crea, elimina o aggiorna un singolo record in ServiceNow.

Scopri le nozioni di base del playbook con questo percorso di apprendimento gratuito

Risorse da Red Hat

Ansible è in grado di comunicare con molte diverse tipologie di dispositivi, dalle API REST, ai sistemi Linux e Windows, all'hardware di rete e molto altro. Di seguito un esempio di 2 moduli Ansible che aggiornano automaticamente 2 tipi di server:

---
- name: Update web servers
  hosts: webservers
  become: true
 
  tasks:
    - name: Ensure apache is at the latest version
      ansible.builtin.yum:
        name: httpd
        state: latest
    - name: Write the apache config file
      ansible.builtin.template:
        src: /srv/httpd.j2
        dest: /etc/httpd.conf
        mode: "0644"
 
- name: Update db servers
  hosts: databases
  become: true
 
  tasks:
    - name: Ensure postgresql is at the latest version
      ansible.builtin.yum:
        name: postgresql
        state: latest
    - name: Ensure that postgresql is started
      ansible.builtin.service:
        name: postgresql
        state: started

Il playbook contiene 2 play: 

  • Il primo verifica se il software del web server è aggiornato ed esegue l'aggiornamento se necessario.
  • Il secondo verifica se il software del server di database è aggiornato ed esegue l'aggiornamento se necessario.

Ottieni maggiori dettagli su questo playbookEbook: Automazione aziendale in cinque passaggiEbook: L'azienda automatizzata

Ansible utilizza la sintassi YAML. Per alcuni, l'acronimo YAML sta per "yet another markup language", ovvero "un ulteriore linguaggio di markup", mentre per altri indica "YAML ain’t markup language", ovvero "YAML non è un linguaggio di markup" (un acronimo ricorrente). Esistono anche 2 estensioni di file YAML diverse, ma perfettamente accettabili: .yaml o .yml. 

Esistono 2 modi per utilizzare gli Ansible Playbook: dall'interfaccia a riga di comando (CLI) o utilizzando i deployment a pulsante di Red Hat® Ansible Automation Platform.

Poiché YAML è un linguaggio leggibile in chiaro, i professionisti IT con esperienza in ambiti specifici, ad esempio le reti, la sicurezza o il cloud, potranno creare i playbook senza dover apprendere complicati linguaggi di codifica.

Dalla CLI

Dopo aver installato il progetto Ansible open source o Red Hat Ansible Automation Platform (per cui è sufficiente digitare "sudo yum install ansible" nella CLI di Red Hat Enterprise Linux), tutto ciò che devi fare è utilizzare il comando ansible-playbook per eseguire gli Ansible Playbook.

Dall'interno della piattaforma

L'interfaccia utente web di Red Hat Ansible Automation Platform include deployment di Ansible Playbook a pulsante che vengono utilizzati come parte di processi o modelli di processi più grandi. Questi deployment sono dotati di ulteriori modalità di protezione particolarmente utili per gli utenti che non conoscono bene l'automazione IT o per coloro che non hanno molta esperienza di utilizzo della CLI.

Una guida rapida all'esecuzione del proprio playbook

Red Hat Ansible Automation Platform è una piattaforma unificata capace di automatizzare interi processi nei domini IT per una serie di scenari di utilizzo, tra cui l'infrastruttura, il cloud ibrido, la sicurezza e le reti, fino alle posizioni all'edge. Ansible Automation Platform include tutti gli strumenti necessari per implementare l'automazione nell'intera azienda, inclusi playbook, strumenti di analisi e una soluzione basata sugli eventi. Consente inoltre ai team di centralizzare e controllare l'infrastruttura IT tramite un dashboard grafico, il controllo degli accessi basato sui ruoli e molte altre funzionalità volte a ridurre la complessità operativa.

Le sottoscrizioni Red Hat includono i contenuti certificati e supportati a cura di Red Hat e dei suoi partner, l'accesso ai servizi gestiti in hosting e il supporto tecnico per il ciclo di vita che agevolano la scalabilità dell'automazione nell'intera organizzazione. I clienti possono inoltre avvalersi delle conoscenze e delle competenze degli esperti Red Hat, acquisite attraverso collaborazioni di successo con migliaia di clienti.

L'introduzione di Red Hat Ansible Lightspeed with IBM watsonx Code Assistant rende Ansible ancora più accessibile ai principianti e permette ai team di automazione più esperti di apprendere, creare e gestire i contenuti su Red Hat Ansible Automation Platform in modo più efficiente. Questo servizio di IA generativa accetta le richieste inserite dagli utenti e interagisce con i modelli fondativi di IBM watsonx per generare il codice in base alle migliori pratiche Ansible. Ciò consente di convertire l'esperienza nel settore in un codice Ansible collaudato e affidabile, da estendere su scala in più team e domini.

Scopri di più su Ansible Automation Platform

 

Icon-Red_Hat-Media_and_documents-Quotemark_Open-B-Red-RGB Le funzionalità integrate di Red Hat Ansible Automation Platform ci hanno fornito un acceleratore per l'innovazione. È lo standard comune che molti dei nostri fornitori e partner utilizzano anche per scrivere gli script con cui installano, configurano e gestiscono la propria tecnologia.

Jesse Amerson

IT Director, Ulta Beauty

Leggi la storia del cliente Ulta Beauty

Hub

Il blog ufficiale di Red Hat

Leggi gli articoli del blog di Red Hat per scoprire novità e consigli utili sulle nostre tecnologie, e avere aggiornamenti sul nostro ecosistema di clienti, partner e community.

Tutte le versioni di prova dei prodotti Red Hat

Grazie alle versioni di prova gratuite dei prodotti Red Hat potrai acquisire esperienza pratica, prepararti per le certificazioni o capire se il prodotto che hai scelto è giusto per le esigenze della tua organizzazione.

Continua a leggere

Come creare una strategia di automazione dell'IT

Un approccio all'automazione frammentario offre vantaggi limitati. Per arrivare ad automatizzare ogni aspetto delle operazioni IT occorre una strategia di automazione che unifichi i team, i processi e i flussi di lavoro disconnessi.

Cos'è il controllo degli accessi?

Il controllo degli accessi è una tecnica di autorizzazione che prevede di stabilire quali risorse di un'infrastruttura IT possono essere visualizzate da un determinato utente o sistema e quali azioni quest'ultimo può intraprendere su di esse.

Gestione dell'infrastruttura virtuale e ruolo dell'automazione

La gestione dell'infrastruttura virtuale si riferisce al coordinamento di software, risorse IT e altri strumenti per la gestione dell'intero ciclo di vita delle macchine virtuali e dei relativi ambienti IT.

Automazione e gestione: risorse consigliate

Prodotto in evidenza

Articoli correlati