Operazioni moderne
- 3 minuti
In precedenza in questo modulo si è affermato che le procedure operative moderne possono essere utili. Tuttavia, non abbiamo detto molto su ciò che queste pratiche erano o perché cercare loro assistenza ha senso. Discutiamo ora di questo come preludio alla mappa che usiamo per navigare il nostro lavoro sull'affidabilità.
In questo modulo e in tutto il percorso di apprendimento delle operazioni moderne viene usato il termine procedure operative moderne come contenitore per due procedure diverse:
- DevOps
- Ingegneria dell'affidabilità del sito (SRE)
Diamo un rapido sguardo a entrambi e a ciò che devono offrirci in questo contesto.
DevOps
DevOps è un concetto affascinante che diverse persone hanno compreso e interpretato in modi diversi. Esistono molte definizioni valide. Esaminiamo alcuni di essi per darti una visione a 360 gradi.
Consegna continua di valore
DevOps è l'unione di persone, processi e prodotti in grado di offrire recapito continuo di valore agli utenti finali. La contrazione di "Dev" e "Ops" si riferisce alla sostituzione di sviluppo e operazioni isolati con lo scopo di creare team multidisciplinari che lavorano insieme con procedure e strumenti condivisi ed efficienti. Le procedure devOps essenziali includono la pianificazione agile, l'integrazione continua, il recapito continuo e il monitoraggio delle applicazioni.
-- Sam Guckenheimer, Che cos'è DevOps?
Cultura della collaborazione, della proprietà e dell'apprendimento
DevOps è una cultura di progettazione di collaborazione, proprietà e apprendimento allo scopo di accelerare il ciclo di vita dello sviluppo software dall'ideazione alla produzione.
-- Emily Freeman, DevOps for Dummies
Collaborare per immaginare, sviluppare, distribuire e gestire un sistema
DevOps: una cultura in cui le persone, indipendentemente dal titolo o dal background, interagiscono per immaginare, sviluppare, distribuire e gestire un sistema.
-- Ken Murage
Ingegneria dell'Affidabilità del Sito
Se una parola chiave nell'ambito DevOps è la distribuzione, la parola chiave per l'affidabilità dei siti sarebbe l'affidabilità. Sebbene ci siano alcune definizioni per SRE che sono state discusse nel campo, sembra esserci più consenso sull'argomento. Ecco la definizione che acquisisce gli aspetti chiave del consenso:
Site Reliability Engineering (SRE) è una disciplina di ingegneria informatica dedicata ad assistere le organizzazioni che vogliono ottenere con modalità sostenibili livelli di affidabilità appropriati per i sistemi, i servizi e i prodotti.
Perché queste procedure? Perché ora?
I professionisti delle operazioni hanno creato DevOps e SRE negli ultimi 15 anni per rispondere a un set specifico di sfide nello spazio operativo. Hanno riconosciuto che molti fattori richiedevano un nuovo approccio, tra cui:
- La crescente complessità degli ambienti di produzione.
- Aumento della dipendenza aziendale dal funzionamento continuo di tali ambienti.
- L'impossibilità di ridimensionare la forza lavoro in modo lineare con le dimensioni di questi ambienti.
Anche se esistono procedure diverse con un po' di attenzione diversa (ad esempio, distribuzione e affidabilità come indicato in precedenza), sia DevOps che SRE hanno sia principi che procedure sviluppate che sono fondamentali per il lavoro di affidabilità. Tra cui monitoraggio/osservabilità, risposta corretta agli eventi imprevisti, automazione e collaborazione. Tutti questi aspetti svolgono un ruolo importante nel materiale illustrato nel percorso di apprendimento Migliorare l'affidabilità .
Mettiamoci al lavoro. Si inizierà con un modello che consente di strutturare e pianificare le attività di affidabilità.