Account Effettua il login
Jump to section

Cos'è l'automazione del deployment

Copia URL

L'automazione del deployment consente di trasferire il software dall'ambiente di test a quello di produzione e viceversa tramite processi automatizzati. Si ottengono così deployment ripetibili e affidabili per l'intero ciclo di distribuzione del software.

L'automazione del deployment consente di rilasciare nuove applicazioni e funzionalità con più rapidità e frequenza, riducendo al minimo l'intervento umano.

L'automazione del deployment è un aspetto importante nell'adozione delle metodologie DevOps e nella gestione della pipeline CI/CD.

Quello dei flussi di integrazione e distribuzione continue (CI/CD) è un metodo per la distribuzione frequente delle applicazioni ai clienti basato sull'automazione e sul monitoraggio continui lungo l'intero ciclo di vita dell'applicazione, dall'integrazione al test fino alla distribuzione e al deployment

Con integrazione continua si intende il processo con il quale le modifiche apportate da uno sviluppatore all'applicazione vengono automaticamente testate alla ricerca di bug e caricate in un repository (come GitHub o un registro per container), dal quale vengono distribuite in un ambiente di produzione dai team operativi (o mediante l'automazione del deployment).

Una volta aggiunte le modifiche apportare dagli sviluppatori, queste vengono convalidate con la creazione automatizzata dell'app e l'esecuzione di diversi livelli di test automatici, in genere test di unità e integrazione, per verificare che l'app non abbia subito danni. 

 

Cos'è la distribuzione continua? Scopri come una pipeline CI/CD consente di contribuire allo sviluppo delle applicazioni in modo automatico.

 

L'altra definizione possibile per "CD", deployment continuo, può riferirsi al rilascio automatico delle modifiche apportate dallo sviluppatore dal repository alla produzione, dove diventano fruibili ai clienti. 

Non essendoci alcun blocco al deployment manuale nelle fasi del flusso prima della produzione, il deployment continuo deve necessariamente fare affidamento su un'automazione dei test ben progettata.

Con l'automazione si evita di sovraccaricare i team operativi con procedure manuali, che altrimenti rallenterebbero la distribuzione delle applicazioni.

Questa fase sfrutta i vantaggi dell'integrazione continua, automatizzando la fase successiva della pipeline.

La pipeline CI/CD deve essere supportata dalla collaborazione agile tra team operativi e di sviluppo, tramite un approccio DevOps o con metodi di site reliability engineering (SRE).

L'adozione delle metodologie agile per lo sviluppo software porta a cicli di rilascio più rapidi, tempi di inattività inferiori e alla possibilità di correggere gli errori non appena si verificano, senza dover attendere una nuova release.

L'automazione del deployment non può funzionare se i team di sviluppo e quelli operativi distribuiscono le applicazioni o configurano gli ambienti con modalità differente. 

L'ambiente può essere automatizzato solo se è coerente. È importante che lo stesso processo di deployment sia applicato in ogni ambiente, anche in quello di produzione. 

Se i due team non sono allineati, si corre anche il rischio che quello operativo gestisca i deployment manualmente, con conseguenti errori, incoerenze e cicli di rilascio più lunghi. 

Per questa ragione è fondamentale che i team lavorino e seguano le procedure DevOps in sinergia. Affinché il processo di automazione del deployment sia coerente e ripetibile, alla sua creazione devono partecipare entrambi i team. 

Solitamente, la pipeline di deployment è suddivisa in tre fasi (ma potrebbero essere di più), ovvero creazione, test e deployment. Questa pipeline facilita l'automazione del deployment e garantisce che il codice passi dalla fase di inserimento delle modifiche a quella di deployment in tempi rapidi.

  • Creazione: uno sviluppatore apporta le modifiche al codice in un repository software. Le modifiche vengono integrate in ambienti simili a quello di produzione.
  • Test: uno strumento di automazione del deployment, ad esempio Jenkins o Ansible, controlla il nuovo codice e avvia una serie di test. Una volta superati tutti i test, la nuova versione del codice può essere inviata in produzione. Senza un processo di automazione del deployment, questo passaggio viene eseguito manualmente.
  • Deployment: in questa fase l'applicazione viene distribuita al reparto di produzione e resa disponibile agli utenti.

Per i team agile e DevOps i test dovrebbero essere eseguiti parallelamente allo sviluppo, restituendo un feedback agli sviluppatori in maniera continuativa. 

Anche l'integrazione continua è una fase importante del processo di sviluppo, al fine di evitare la creazione di conflitti fra gli aggiornamenti frequenti. Per la riuscita dell'integrazione continua, le nuove modifiche apportate al codice dell'app vengono regolarmente compilate, testate e unite in un repository condiviso.

È bene poter eseguire anche il deployment in un ambiente on demand. Quando è necessario provvedere alla creazione di un ambiente, significa che il processo non è automatizzato.

Red Hat® Ansible® Automation Platform include tutti gli strumenti necessari per implementare l'automazione nell'intera azienda, inclusi i playbook, una dashboard visiva e gli strumenti di business analytics.

La piattaforma consente il deployment di applicazioni multilivello in modo affidabile e coerente da un framework comune, la configurazione dei servizi necessari e il trasferimento dei componenti dell'applicazione da un sistema condiviso.

Gli Ansible Playbook, scritti in YAML, descrivono la condizione target dei sistemi, in genere controllati dal codice sorgente. Red Hat Ansible Automation Platform si occupa di portare i sistemi nella condizione desiderata, qualunque sia quella corrente. 

I playbook Ansible rendono affidabili e ripetibili le installazioni, gli aggiornamenti e le attività quotidiane.

Red Hat Ansible Automation Platform è stata nominata "leader" da Forrester Research nel report di Forrester Wave™ "Infrastructure Automation Platforms" per il terzo trimestre 2020.

Le aziende non solo devono essere in grado di creare automazione, ma anche di condividere e riutilizzare l'automazione tra progetti e team con il giusto livello di governance e controllo. 

Con la soluzione di automazione giusta, puoi eseguire il deployment di nuovi servizi e applicazioni più rapidamente, gestire l'infrastruttura IT in modo più efficiente e ottenere una maggiore produttività nello sviluppo delle applicazioni.

Continua a leggere

Articolo

I concetti base di Ansible

Ansible consente di automatizzare i processi IT, come il provisioning e la gestione della configurazione. Questo articolo fornisce un'introduzione ai concetti base di Ansible.

Articolo

Cos'è la gestione dei processi aziendali?

La gestione dei processi di business (BPM, business process management) consiste nella creazione di modelli di business, nell'analisi e nell'ottimizzazione dei processi aziendali end to end per realizzare i tuoi obiettivi aziendali strategici.

Articolo

Perché scegliere Red Hat per l'automazione

Red Hat Ansible Automation Platform include tutti gli strumenti necessari per condividere le competenze di automazione tra i team e adottare l'automazione a livello aziendale.

Scopri di più sull'automazione

Prodotti

Red Hat Consulting

Collabora con il nostro team di consulenti strategici in grado di analizzare l'azienda nel suo insieme e valutare le sfide da affrontare, per aiutarti a superarle con soluzioni complete e convenienti.

Red Hat Ansible Automation Platform

Una piattaforma per implementare l'automazione in azienda, in qualsiasi fase del tuo percorso di trasformazione

Red Hat Process Automation

Una piattaforma per lo sviluppo delle applicazioni cloud native destinate all'automazione dei processi e delle decisioni aziendali.

Risorse

Ebook

L'azienda automatizzata connette persone e processi

Ebook

Automazione dei flussi di lavoro dell'infrastruttura

Continua a leggere

CASO CLIENTE

Microsoft, azienda tecnologica internazionale, crea una cultura basata sull'automazione

WHITE PAPER

Ottimizza le pipeline CI/CD con Red Hat Ansible Automation Platform

RESOCONTO ANALITICO

Automazione dell'ultimo miglio: garantire la coerenza e la scalabilità con l’edge computing

RESOCONTO ANALITICO

IDC: Il valore di Red Hat Ansible Tower

SCHEDA TECNICA

Red Hat Ansible Automation Platform

SCHEDA TECNICA

Red Hat Ansible Tower

SCHEDA TECNICA

Red Hat Edge

SINTESI

Missione compiuta: edge computing nello spazio

SINTESI

Red Hat e Nutanix: supporto per le tue applicazioni dati strategiche

PANORAMICA

Tre modi in cui i responsabili IT possono misurare il rendimento dell'automazione

PANORAMICA

Semplifica la transizione al cloud con Red Hat e Google Cloud

CHECKLIST

Cinque consigli per pianificare la migrazione a Red Hat Ansible Automation Platform 2

CHECKLIST

Automazione aziendale con una metodologia DevOps

CHECKLIST

6 modi per promuovere l'automazione IT in tutta l'organizzazione

CHECKLIST

3 vantaggi per la soluzione automatizzata dei problemi prestazionali

EBOOK

Red Hat Ansible Automation Platform 2

EBOOK

Guida all'automazione per dirigenti IT

EBOOK

Automazione aziendale in cinque passaggi

EBOOK

Automazione delle reti alla portata di tutti

EBOOK

Automazione all'edge: 7 scenari di utilizzo settoriali con esempi

EBOOK

Automazione della rete con Red Hat

EBOOK

Accelerazione della trasformazione digitale nel settore pubblico con Red Hat Ansible Automation Platform

EBOOK

Il manuale per automation architect

EBOOK

Come rendere agile un'architettura monolitica

EBOOK

Semplifica la gestione dello storage

EBOOK

Apri le porte a nuove possibilità di innovazione e crescita nelle tre aree chiave dell'IT, con Red Hat

Formazione

Corso di formazione gratuito

Ansible Essentials: Simplicity in Automation Technical Overview

Corso di formazione gratuito

Red Hat Ansible Automation for SAP

Illustration - mail

Ricevi contenuti simili

Iscriviti a Red Hat Shares, la nostra newsletter gratuita.

Red Hat logo LinkedInYouTubeFacebookTwitter

Prodotti

Strumenti

Prova, acquista, vendi

Comunica

Informazioni su Red Hat

Red Hat è leader mondiale nella fornitura di soluzioni open source per le aziende, tra cui Linux, Kubernetes, container e soluzioni cloud. Le nostre soluzioni open source, rese sicure per un uso aziendale, consentono di operare su più piattaforme e ambienti, dal datacenter centrale all'edge della rete.

Ricevi la nostra newsletter, Red Hat Shares

Iscriviti subito

Seleziona la tua lingua

© 2022 Red Hat, Inc.