Ansible e Kubernetes: piattaforme complementari

Copia URL

Ansible e Kubernetes sono piattaforme open source entrambe pensate per automatizzare gli ambienti IT, ma ciascuna con un ruolo specifico. Possono essere utilizzate in concomitanza oppure singolarmente. 

Ansible ha come principale obiettivo l'automazione dei processi IT ripetitivi nei vari componenti dell'infrastruttura, mentre Kubernetes è pensato per orchestrare il deployment, la scalabilità e la gestione delle applicazioni containerizzate, permettendo di eseguire il software in maniera scalabile negli ambienti ibridi. Negli ambienti IT moderni, tali obiettivi sono complementari ed è frequente l'utilizzo congiunto di Ansible e Kubernetes.

Red Hat® Ansible® Automation Platform e Red Hat OpenShift® sono soluzioni di livello enterprise basate rispettivamente su Ansible e Kubernetes, che consolidano le funzionalità base di questi strumenti e introducono capacità aggiuntive per i deployment di importanza critica su vasta scala. 

Scopri l'automazione nel cloud

Ansible è un motore di automazione open source progettato per semplificare attività quali il provisioning dei sistemi, la gestione della configurazione, il deployment delle applicazioni e altri processi IT. 

Amministratori di sistema e altri professionisti IT lo utilizzano per automatizzare la configurazione e il deployment di nuovi sistemi negli ambienti più eterogenei, sul cloud oppure on premise. Ansible mantiene i sistemi nella configurazione desiderata, con attività come l'aggiornamento automatico dei pacchetti software installati. Ad esempio, un'azienda può utilizzarlo per il deployment di uno stack applicativo uniforme su centinaia di server, ottimizzando l'efficienza del sistema.

In base alla documentazione della community Ansible, questa piattaforma è progettata per essere:

  1. Agentless: consente di evitare l'installazione di ulteriori software nell'infrastruttura IT, semplificando il deployment.
  2. Semplice: gli Ansible Playbook sono scritti in YAML, un linguaggio chiaro che migliora la leggibilità del codice.
  3. Scalabile e flessibile: grazie al suo design modulare, è compatibile con diversi sistemi operativi e consente di automatizzare i processi con scalabilità.
  4. Idempotente e prevedibile: esegue i moduli in modo ricorrente senza alterare la condizione target.

Cos'è l'automazione dell'IT?

Kubernetes è una piattaforma di orchestrazione open source basata su container che automatizza molti dei processi manuali necessari per il deployment, la gestione e la scalabilità delle applicazioni containerizzate. 

Un container accorpa tutti gli elementi necessari a un'applicazione per essere eseguita come un processo isolato: codice, configurazione e dipendenze. Ciascuna applicazione viene eseguita nel proprio container o in più container, che sono organizzati in pod. Un deployment Kubernetes in funzione è chiamato cluster, che è un gruppo di host che eseguono container. 

Uno dei principali vantaggi di Kubernetes è la sua capacità di operare su varie tipologie di infrastruttura, dai server bare metal agli ambienti di cloud ibrido più complessi.

Tre sono i principi cardine di progettazione attribuibili a Kubernetes. In base ai dettagli dell'implementazione di Kubernetes, un deployment Kubernetes deve essere:

  1. Sicuro: deve rispettare le best practice più aggiornate in materia di sicurezza.
  2. Intuitivo: deve poter funzionare con pochi e semplici comandi.
  3. Estendibile: non deve vincolare ad alcun provider e deve essere personalizzabile a partire da un file di configurazione.

Scopri di più sull'architettura Kubernetes

Kubernetes si distingue nell'orchestrazione dei carichi di lavoro containerizzati ma, per coprire aspetti come provisioning dell'infrastruttura, gestione del ciclo di vita delle applicazioni e supporto multicluster, è spesso necessario introdurre strumenti complementari. La gestione manuale di queste attività può risultare difficoltosa ed espone a un maggiore rischio di errori umani. Ansible risponde a queste problematiche automatizzando il provisioning dei cluster, l'applicazione delle configurazioni e la gestione dei deployment delle applicazioni negli ambienti Kubernetes. Utilizzando Ansible insieme a Kubernetes, le organizzazioni possono beneficiare dei vantaggi di entrambe le tecnologie: la libreria di moduli di Ansible, i playbook leggibili e il supporto per attività complesse come la migrazione delle macchine virtuali. L'integrazione consente di superare le principali criticità operative, migliorando la scalabilità, la coerenza e la gestibilità degli ambienti Kubernetes nel lungo periodo.

Per i deployment meno complessi, Ansible e Kubernetes forniscono una base ottimale per automatizzare la gestione della configurazione e orchestrare le applicazioni containerizzate, ma per le operazioni su vasta scala, Red Hat OpenShift e Ansible Automation Platform offrono soluzioni più complete e affidabili. Red Hat OpenShift è una piattaforma applicativa cloud ibrida aziendale con tecnologia Kubernetes che, se associata a Red Hat Ansible Automation Platform, estende l'automazione a infrastruttura e applicazioni, ampliando le funzionalità di gestione e sicurezza. Il deployment di Ansible Automation Platform in Red Hat OpenShift tramite OperatorHub è il metodo più semplice per approcciarsi all'installazione e alla gestione del ciclo di vita. 

Una volta installato Ansible Automation Platform su Red Hat OpenShift, le due piattaforme possono essere combinate per:

  • Automatizzare la creazione, la distribuzione e la gestione dei cluster Red Hat OpenShift.
  • Coordinare l'infrastruttura esterna al cluster già in uso con servizi e infrastrutture cloud native.
  • Supportare in modo sicuro la distribuzione, la scalabilità e gli aggiornamenti delle applicazioni da un solo framework comune.
  • Eseguire la migrazione e la gestione delle macchine virtuali (VM) in modo coerente ed effettuare il provisioning per soluzioni di cloud pubblico o privato.
  • Definire l'automazione per il ripristino dagli imprevisti e la continuità operativa end to end per i cluster Red Hat OpenShift.

Sia Ansible Automation Platform sia Red Hat OpenShift utilizzano YAML, permettendo ai team con esperienza su una qualsiasi delle due piattaforme di rendersi operativi in poco tempo. Grazie a questa base condivisa, gli amministratori di OpenShift possono creare Ansible Playbook, mentre gli sviluppatori dell'automazione possono gestire e distribuire i cluster con maggiore efficienza.

Esistono anche altri modi per utilizzare Ansible Automation Platform e Red Hat OpenShift insieme:

Ansible Kubernetes Collection

La Ansible Kubernetes Collection mette a disposizione moduli che automatizzano operazioni come il deployment di applicazioni su cluster Kubernetes, la gestione di risorse quali pod, servizi e deployment e l'interazione con l'interfaccia di programmazione delle applicazioni (API) di Kubernetes. Ad esempio, è possibile automatizzare il deployment di microservizi su un cluster Kubernetes utilizzando gli Ansible Playbook.

Ansible OpenShift Collection

La Ansible OpenShift Collection semplifica l'automazione dei cluster Red Hat OpenShift basati sull'architettura Kubernetes. Questa risorsa consente di automatizzare attività quali la gestione dei progetti OpenShift, la scalabilità delle applicazioni e la gestione delle risorse OpenShift.

Red Hat Advanced Cluster Management

Red Hat Advanced Cluster Management for Kubernetes è uno strumento per la gestione centralizzata di diversi cluster OpenShift, che consente agli amministratori di distribuire, configurare e monitorare le applicazioni tra i cluster. Red Hat Advanced Cluster Management può essere utilizzato insieme ad Ansible Automation Platform per l'automazione delle operazioni su un numero elevato di cluster.

Kubernetes ed Event-Driven Ansible

Event-Driven Ansible rende possibile una gestione dinamica e in tempo reale degli eventi all'interno di un sistema. L'integrazione di Event-Driven Ansible con Kubernetes permette di automatizzare le risposte agli eventi in un cluster Kubernetes, ad esempio con la scalabilità dei pod durante i picchi di traffico oppure distribuendo nuove versioni di un'applicazione all'invio del codice nel repository. Questa integrazione migliora la flessibilità e la resilienza degli ambienti gestiti tramite Kubernetes.

Perché utilizzare Red Hat Ansible Automation Platform con OpenShift  

Red Hat è leader nello sviluppo di tecnologie open source, tra cui Ansible e Kubernetes; realizza inoltre strumenti strategici per proteggere, semplificare e aggiornare in modo automatico l'infrastruttura IT.

Con Red Hat Ansible Automation Platform, puoi creare, gestire e adattare con scalabilità le funzionalità dell'automazione all'interno dell'azienda, permettendo inoltre di gestire numerosi scenari di utilizzo di automazione dell'IT, fra cui provisioning, gestione della configurazione, ambienti cloud e virtualizzazione. 

Scopri di più su Red Hat Ansible Automation Platform

Grazie a Red Hat OpenShift con tecnologia Kubernetes, puoi creare nuove app containerizzate, ospitarle e distribuirle nel cloud con la scalabilità, il controllo e l'orchestrazione necessari per trasformare i progetti in nuove opportunità di business, in modo semplice e rapido.

Scopri di più su Red Hat OpenShift

Formazione e certificazione su Red Hat Ansible Automation Platform

Esplora i corsi di formazione e gli esami di certificazione su Red Hat Ansible Automation Platform e trova il percorso formativo più adeguato al tuo ruolo.

Continua a leggere

Automazione aziendale: Cos'è Ansible?

Ansible consente di automatizzare i processi IT, come il provisioning e la gestione della configurazione.

Virtualizzazione: cos'è la tecnologia vRAN?

Le reti RAN (Radio Access Network) virtualizzate (vRAN) consentono agli operatori di telecomunicazioni di eseguire le funzioni baseband sotto forma di software.

Artificial intelligence: cos'è il machine learning?

Il machine learning (apprendimento automatico) è una tecnologia che permette di addestrare computer a individuare schemi, eseguire analisi predittive e imparare dall'esperienza.

Automazione del cloud: risorse consigliate

Articoli correlati