devops automation how is automation applied devops practice
Automazione in DevOps:
Nell'ultimo tutorial abbiamo appreso l'importanza di Controllo del codice sorgente in DevOps . Qui, in questo tutorial impareremo a conoscere l'automazione in DevOps.
L'automazione è l'ultima esigenza per la pratica DevOps e 'Automatizza tutto' è il principio chiave di DevOps. In DevOps, l'automazione inizia dalla generazione del codice sulla macchina degli sviluppatori fino a quando il codice viene inserito nel codice e anche successivamente per monitorare l'applicazione e il sistema in produzione.
Letture consigliate => Serie di tutorial informativi DevOps
L'intera pipeline DevOps contenente integrazione continua, test continui e distribuzione continua, incluso il monitoraggio delle prestazioni delle applicazioni in tempo reale, è automatizzata.
L'automazione dell'impostazione e delle configurazioni dell'infrastruttura e della distribuzione del software è l'elemento chiave della pratica DevOps. La pratica DevOps dipende fortemente dall'automazione per effettuare consegne in un periodo di poche ore ed effettuare consegne frequenti su tutte le piattaforme.
Pertanto, l'automazione in DevOps favorisce velocità, maggiore precisione, coerenza, affidabilità e aumenta il numero di consegne. In definitiva, l'automazione in DevOps incapsula tutto, dalla creazione, distribuzione e monitoraggio.
VIDEO Parte 2 Blocco 3: DevOps Automation- 16 minuti e 40 secondi
Comprendiamo in dettaglio il significato dell'automazione nella pratica DevOps in questo tutorial.
Qui discuteremo:
- Come viene applicata l'automazione nella pratica DevOps?
- Necessità e ruolo dell'automazione?
- Cosa automatizzare?
- Strumenti e framework, test continui?
Ho un po 'paura di parlare di automazione. Perché, per quanto mai parlo di automazione, secondo me, non è mai completo.
Inutile dire che l'automazione è semplicemente allontanarsi dalle attività manuali. Le persone vogliono ridurre il loro coinvolgimento nelle attività ordinarie ordinarie e utilizzare il loro tempo e la loro intelligenza in qualcosa di nuovo o innovativo.
Detto questo, il ruolo dell'automazione in DevOps è molto importante e cruciale per fornire continuamente valore al cliente.
Rispondiamo insieme, come l'automazione viene applicata nella pratica DevOps insieme a cosa automatizzare perché entrambe queste domande ottengono una risposta insieme.
Cosa automatizzare?
Non credo che siano necessarie molte spiegazioni per la risposta a questa domanda in questa era dell'automazione. Ovunque andiamo, vediamo cose che vengono automatizzate, con il minimo o nessun intervento umano. Quindi, DevOps non fa eccezione.
In un metodo di sviluppo software tradizionale, erano solo il team di sviluppo e le loro attività ad essere automatizzati, in particolare i test. In passato era così, che automazione significa testare e automatizzare casi di test, anche questo solo casi di test funzionali ma nemmeno test non funzionali come prestazioni e sicurezza.
E nessuna delle altre attività, in particolare le attività operative, venivano automatizzate. Il fallimento della distribuzione manuale su un enorme cluster che ha coinvolto 8 server e la perdita che ha causato è molto buona Esempio di complessità coinvolti nelle distribuzioni e spiega chiaramente la necessità di automazione per le attività Devops.
come si crea un falso indirizzo email
Ho visto io stesso che le organizzazioni assumevano persone altamente qualificate e intelligenti pagando un enorme pacchetto salariale, per configurare le reti e gli ambienti, cosa che faceva in base alla loro intelligenza, conoscenza nella rispettiva area, alla loro esperienza e competenza, che era un lavoro manuale completo.
La configurazione manuale è sempre soggetta a errori come tutti sanno. Quello che generalmente accadeva in caso di configurazione manuale è che, per un periodo di tempo, dopo aver ripetutamente fatto lo stesso lavoro ancora e ancora, queste persone intelligenti, i configuratori di rete, usano per annoiarsi di queste attività e finiscono per commettere errori dovuti alla negligenza.
Sai che sono molto brillanti e queste attività saranno molto semplici e poco interessanti per loro e hanno bisogno di nuove sfide ogni giorno, e non di questo compito noioso.
Quindi, l'introduzione dell'automazione per l'installazione del software e il controllo della versione della parte infrastrutturale è diventato un enorme guadagno e ha ridotto molti errori umani oltre a risparmiare tempo e consente a qualsiasi uomo comune di farlo, rimuovendo così la dipendenza dai lavoratori qualificati.
Inoltre, eseguendo i processi se un nuovo ambiente deve essere configurato, come aumentare il ticket per la creazione di un nuovo ambiente, il team IT che lavora da dietro nella configurazione, tutti questi problemi vengono rimossi.
Pertanto, i singoli membri del team hanno il potere di svolgere i compiti. Immagina la velocità, l'affidabilità e la coerenza raggiunte dall'automazione. Quindi, l'automazione è aumentata terribilmente, il numero di consegne alla produzione.
Quindi, ora nella pratica DevOps, anche il team operativo ha avviato l'automazione in tutti i loro lavori, che è diventata la chiave del successo di DevOps.
In realtà, nella pratica DevOps, il calcio d'automazione inizia dalla generazione del codice sul computer degli sviluppatori fino a quando il codice non è disponibile per la produzione e anche successivamente nel monitoraggio dell'applicazione dal vivo. Questo è un tipico ciclo DevOps.
Il team di sviluppo e operativo verifica il codice e le configurazioni dell'ambiente fino al controllo del codice sorgente, da dove inizia l'automazione per l'attivazione della compilazione, l'esecuzione di casi di unit test e altri casi di qualità del codice di base, casi di test di copertura, casi di test relativi alla sicurezza, ecc.
Una volta che il codice ha finito con questo, il codice viene compilato automaticamente, viene memorizzato nel controllo della versione e viene distribuito automaticamente negli ambienti successivi per ulteriori test e, infine, alla versione di produzione.
Possiamo vedere l'automazione eseguita in ogni fase dello sviluppo a partire dall'attivazione della build, esecuzione di unit test, imballaggio, distribuzione negli ambienti specificati, esecuzione di test di verifica della build, test del fumo, casi di test di accettazione e infine distribuzione sull'ambiente di produzione finale.
miglior software per le prestazioni per Windows 10
Anche quando diciamo di automatizzare i casi di test, non si tratta solo di test unitari ma test di installazione, test di integrazione, test dell'esperienza utente, test dell'interfaccia utente, ecc.
DevOps obbliga il team operativo, oltre alle attività di sviluppo, ad automatizzare tutte le loro attività, come il provisioning dei server, la configurazione dei server, la configurazione delle reti, la configurazione dei firewall, il monitoraggio dell'applicazione nel sistema di produzione.
Quindi per rispondere a cosa automatizzare, è il trigger di build, la compilazione e la creazione, la distribuzione o l'installazione, l'automazione dell'infrastruttura impostata come script codificato, le configurazioni dell'ambiente come script codificato, inutile menzionare i test, il monitoraggio delle prestazioni di vita post-distribuzione nella vita, registra il monitoraggio, il monitoraggio degli avvisi, l'invio di notifiche in tempo reale e la ricezione di avvisi dal vivo in caso di errori e avvisi, ecc.,
Infine automatizzando tutti i documenti relativi al progetto.
Quindi, posso dire che automazione nel linguaggio DevOps significa, integrazione continua, test continui, distribuzione continua e consegna continua. Studieremo ciascuno di essi in dettaglio nelle prossime parti.
Nel complesso, DevOps consente ogni attività di sviluppo e operazioni, ove possibile, qualunque sia automatizzabile, qualunque sia ripetibile, ovunque sia richiesta precisione, qualunque cosa richieda molto tempo viene automatizzata.
Tuttavia, se non menzioniamo gli strumenti da utilizzare per l'automazione, la discussione sull'automazione è incompleta.
Pertanto, la selezione di un framework e di uno strumento di automazione corretti è il requisito chiave per l'automazione in DevOps.
Ci sono molti strumenti disponibili sul mercato, sia open source che con licenza, che supportano l'automazione end-to-end dell'intera pipeline di consegna, comprese le attività svolte dal team Ops, macchine di provisioning, server automatizzati di rotazione, configurazione di reti, firewall, e persino monitorare le prestazioni del software.
Inoltre, alcune organizzazioni hanno sviluppato il proprio framework in modo da integrare il processo end to end di DevOps che inizia dal commit del codice alla distribuzione del codice inclusa la documentazione che è un unico strumento integrato e il team non deve uscire dal framework per nulla di correlato programmare, che si tratti di controllo della versione, scrittura di casi di test, revisione, dumping dei risultati dei casi di test, analisi ecc.
Per esempio: pupazzo, gestore risorse di Azure, chef ecc.,
Vantaggi dell'automazione in DevOps
Abbiamo visto versioni precedenti, in assenza di automazione che impiegava anni per entrare in produzione e anche recentemente con agile, sia esso snello, mischia o sicuro, e con una percentuale di automazione migliorata, le tempistiche di rilascio sono ridotte a pochi mesi o settimane.
Ma l'automazione è assolutamente un must per rendere i rilasci il più veloci possibile in poche ore. Quindi, penso che sia impossibile realizzare rilasci così rapidi e frequenti a meno che non mettiamo in atto l'automazione in tutta la pipeline.
Quindi, ovviamente quindi, se vogliamo raggiungere gli obiettivi di DevOps, alta qualità e valore fornito ai clienti tramite consegne frequenti e veloci, automatizzare tutto è un must.
Chiaramente, ormai sappiamo che l'automazione rimuove gli errori manuali, la dipendenza da un individuo, esegue più velocemente e raggiunge la precisione ottenendo così coerenza e affidabilità. Quindi, automatizzare tutto consente l'obiettivo devops di una consegna di alta qualità, consente rilasci frequenti e rilasci più veloci.
In poche parole, automazione,
- Rimuove gli errori manuali
- I membri del team sono autorizzati
- Dipendenza rimossa
- Latenza rimossa
- Aumenta il numero di consegne
- Riduce i tempi di consegna
- Aumenta la frequenza dei rilasci
- Fornisce feedback più rapidi
- Consente velocità, affidabilità e coerenza
Quindi, in breve, l'automazione in DevOps alla fine incapsula tutto direttamente dalla creazione, distribuzione e monitoraggio.
Tutorial PREV | PROSSIMO Tutorial
Lettura consigliata
- Importanza di piccoli incrementi di consegne in DevOps
- Controllo del codice sorgente o controllo della versione in DevOps (tutorial video parte 2 - blocco 2)
- Tutorial DevOps: The Ultimate Guide to DevOps (25+ tutorial)
- Pratica DevOps basata su Agile Manifesto (Parte 2 - Blocco 1)
- Tutorial sul test DevOps: in che modo DevOps influirà sui test di controllo qualità?
- Tutorial di AWS CodeCommit per l'implementazione di DevOps nel cloud
- SeeTest Automation Tutorial: A Mobile Test Automation Tool Guide
- Consegna continua in DevOps