Ansible: aggiornamenti nelle soluzioni chiave per automatizzare il tuo mondo

La comunità Ansible offre costantemente nuovo contenuto - plugin e moduli - creando così molto lavoro per chi si occupa del supporto di Ansible, poiché il nuovo codice deve essere integrato il più rapidamente possibile nei repository. Non sempre è facile rispettare le scadenze e il rilascio di alcuni prodotti pronti viene rinviato alla prossima versione ufficiale di Ansible Engine. Fino a poco tempo fa, l'unico modo per gli utenti finali di ottenere nuovo contenuto Ansible era attraverso una nuova versione di Ansible Engine.

Ansible: aggiornamenti nelle soluzioni chiave per automatizzare il tuo mondo

Per alleviare questo inconveniente, la comunità Ansible ha iniziato a lavorare su opzioni più flessibili per la creazione e l'ottenimento di contenuti.

Red Hat Ansible Engine 2.8: verso nuovi metodi di gestione del contenuto Ansible

In risposta alle richieste degli utenti, Ansible Engine 2.8 ha introdotto modifiche riguardanti la gestione dei contenuti, non inclusi nell'uscita ufficiale. Queste modifiche consentiranno di implementare un nuovo metodo di distribuzione dei contenuti agli utenti, che non dipenderà dai manutentori di Ansible nella gestione sia del contenuto Ansible che del codice stesso della piattaforma.

È previsto che nelle future versioni i creatori di contenuti possano fornire i loro materiali sotto forma di pacchetti speciali, noti come Collezioni, che potranno essere installati nella posizione appropriata per l'esecuzione sul nodo principale Ansible (control node) o sul nodo gestito (managed node). Il creatore delle collezioni definirà direttamente i dettagli dell'esecuzione all'interno del pacchetto utilizzando ruoli e playbook. Grazie alle modifiche menzionate in Ansible Engine, le collezioni diventeranno uno degli strumenti che permetteranno di dissociare il rilascio dei contenuti dal rilascio delle versioni ufficiali di Ansible Engine..

La nuova struttura Become

La struttura Become è stata introdotta da tempo, ma a partire dalla versione 2.8 la parola BECOME è utilizzata di default in Ansible Engine per richiedere la password durante l'innalzamento dei privilegi (privilegi sudo su sistemi *nix o modalità enable su dispositivi di rete). In altre parole, ora BECOME è lo strumento standard per l'innalzamento dei diritti, che gestisce autonomamente il sistema target.

Ecco come appare un esempio del suo utilizzo:

ansible-playbook --become --ask-become-pass site.yml
BECOME password:

Inoltre, in Ansible Engine 2.8 è stato introdotto il plugin BECOME, che funziona come doas su Linux e come runas su Windows, e consente di eseguire azioni a nome di un utente specifico. Per l'elevazione dei privilegi sui dispositivi di rete si utilizza il plugin become enable.

Ricerca dell'interprete Python

Potresti aver incontrato un errore simile a questo:

/usr/bin/python: bad interpreter: No such file or directory

Il fatto è che nelle versioni precedenti di Ansible Engine si presumeva per default che l'interprete Python principale (quello utilizzato per default) fosse situato nella cartella /usr/bin/python. A partire dalla versione 2.8, Ansible cerca l'interprete su ogni sistema target, inizialmente confrontandosi con la tabella dei percorsi e dei nomi dei file eseguibili dell'interprete Python principale in diverse distribuzioni, e poi utilizzando elenchi ordinati di interpreti di riserva (fallback list), ulteriori dettagli possono essere trovati in Guida al porting su Ansible 2.8.

I file di retry non vengono più creati di default

Hai cercato a lungo file .retry sul disco? Se hai utilizzato Ansible per un po', sicuramente ce ne sono molti e occupano solo spazio utile. A partire dalla versione 2.8, Ansible Engine non crea più questi file di default (cosa che può essere annullata modificando il file ansible.cfg di default utilizzato).

Play Recap aggiornato

Estratto da Guida al porting su Ansible 2.8:

Play Recap ora considera i task con stato ignored e rescued, oltre a ok, changed, unreachable, failed e skipped, grazie a due nuovi contatori statistici nel callback plugin default. I task failed a cui è stato impostato il flag ignore_errors: yes vengono considerati come ignored. I task failed per i quali è stata poi eseguita la sezione rescue vengono considerati come rescued. Si noti che, a differenza delle versioni precedenti di Ansible, i task rescued non vengono più conteggiati come failed.

E nella tabella Play Recap alla fine dell'esecuzione del playbook sono apparse colonne aggiuntive per i host: skipped, rescued e ignored:

Ansible: aggiornamenti nelle soluzioni chiave per automatizzare il tuo mondo

Cloud e container

Nella versione 2.8 sono stati implementati miglioramenti e aggiunte nei moduli cloud e container per lavorare con Amazon Web Services, Microsoft Azure, Google Cloud, Digital Ocean, podman e kubevirt. È anche importante notare che i file TOML possono ora essere utilizzati come sorgente inventory.

Paramiko

Stai utilizzando Red Hat Ansible Network Automation? Ansible Engine 2.8 non contiene più paramiko e non dipende più da esso. Di default, Ansible Engine utilizza ssh. Se hai bisogno di paramiko, puoi installarlo con il comando pip install paramiko

Se hai bisogno di supporto per l'utilizzo di paramiko nell'ambito dell'abbonamento Red Hat, fai riferimento all'articolo della base di conoscenza Pacchetto Paramiko mancante dopo nuove installazioni di Ansible Engine.

Pertanto, la nuova versione di Red Hat Ansible Engine si arricchisce di un'impressionante lista di miglioramenti e modifiche, di cui puoi prendere visione qui.

Red Hat Ansible Tower 3.5: maggiore automazione

Dalla fine di maggio è disponibile anche la nuova versione di Red Hat Ansible Tower 3.5, che offre subito diversi importanti miglioramenti per l'automazione, di cui parleremo, se non hai già avuto modo di controllarli.

Quindi, iniziamo con i punti chiave:

  • Supporto per Red Hat Enterprise Linux 8;
  • Supporto per archivi esterni delle credenziali utilizzando i plugin appropriati;
  • Supporto per i plugin become in Ansible Tower.

Inoltre, nella nuova versione sono stati risolti oltre 160 bug e problemi registrati.

Supporto per Red Hat Enterprise Linux 8

Ripetiamo spesso che Red Hat Enterprise Linux (RHEL) è una base sicura e versatile per la costruzione, ad esempio, di un cloud ibrido. Ansible Tower 3.5 (così come Ansible Engine 2.8) gestisce gli host RHEL 8 e può essere eseguito su piattaforma Red Hat Enterprise Linux 8 come nodo di controllo del sistema Red Hat Ansible Automation.

Archivi esterni delle credenziali

Oltre all'archivio di credenziali integrato, Ansible Tower 3.5 può ora utilizzare anche archivi esterni delle credenziali, poiché talvolta è necessario rendere le credenziali più accessibili per le applicazioni distribuite. Pertanto, la nuova versione di Ansible Tower può lavorare direttamente con diverse soluzioni per la gestione delle password e delle chiavi, ad esempio:

  • HashiCorp Vault;
  • CyberArk AIM;
  • CyberArk Conjur;
  • Microsoft Azure Key Vault.

Maggiore dettagli su come lavorare con questi sistemi sono disponibili nella documentazione Sistema di gestione segreta.

Nuovi plugin per la gestione dell'inventario e per l'escalation dei privilegi

Seguindo lo sviluppo di Ansible Engine, Ansible Tower 3.5 offre nuovi plugin per l'inventario e un plugin per il nuovo strumento per l'escalation dei privilegi.

Grazie a nuovi plugin per l'inventario Ansible Tower può ora utilizzare come fonte di inventario le piattaforme Microsoft Azure, Google Cloud Platform e Red Hat OpenStack Platform, offrendo supporto per ambienti cloud ibridi 'out-of-the-box'.

Il nuovo plugin per l'escalation dei privilegi fornisce una gestione completa delle attività di elevazione dei privilegi, offrendo molta più flessibilità e controllo rispetto ai tradizionali sudo e su.

Interfaccia utente riprogettata per le liste

Nella nuova versione, la gestione delle liste è diventata molto più comoda. È possibile espandere per visualizzare i dettagli e ridurre per mostrare più elementi sullo schermo. Le liste possono anche essere ordinate per diversi campi e filtrate praticamente per qualsiasi proprietà.

Metriche migliorate

Le metriche ora dispongono di un cosiddetto endpoint (/api/v2/metrics), grazie al quale Ansible Tower può essere facilmente monitorato con Prometheus e altri sistemi simili, e è possibile utilizzare più sistemi contemporaneamente, inclusi quelli basati su cloud.

Ansible Tower 3.5 è già disponibile per il download, l'ultima versione di Red Hat Ansible Tower può essere installata sia localmente che tramite Vagrant o Amazon AMI.

Webinar su Ansible: potenzia le tue abilità

In continua espansione il repository di webinar sul tema: www.ansible.com/resources/webinars-training?hsLang=en-us

Il 4 giugno si è svolto webinar Cosa c'è di nuovo nell'Automazione Ansible, dedicato alle nuove e migliorate funzionalità di Red Hat Ansible Tower e Red Hat Ansible Engine. Presto disponibile nel repository.

In lingua russa è disponibile un webinar sulla Automazione delle reti tramite Ansible.

Fonte: habr.com

Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS 🔥 Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS - ProHoster