Close

Gestione degli imprevisti per i team high velocity

Il percorso verso una gestione degli imprevisti più efficace inizia qui

Best practice e suggerimenti per la risposta agli imprevisti

L'impatto di un imprevisto può essere misurato in decine o centinaia di migliaia di dollari persi al minuto. Con una posta in gioco così alta, le organizzazioni stanno rapidamente evolvendo le best practice di risposta agli imprevisti.

Se le organizzazioni non ripetono costantemente il loro processo di gestione degli imprevisti, si espongono al rischio di imprevisti gestiti male, ritardi non necessari e costi associati.

Di seguito trovi alcune delle migliori pratiche, oltre a suggerimenti comuni, e non così comuni.

Persone che guardano un board di Jira

1. Tieni sempre a portata di mano le risorse utili

Le risorse utili per gli addetti agli imprevisti comprendono tutte le informazioni critiche a cui i team devono accedere nella maniera più rapida possibile. Sebbene possa trattarsi con maggiori probabilità di un documento digitale, avere un punto di partenza centralizzato è molto utile agli addetti agli imprevisti.

Questo potrebbe includere una serie di elementi:

  • Piani di risposta agli imprevisti
  • Liste di contatti
  • On-call Schedule
  • Escalation Policy
  • Collegamenti a strumenti per conferenze
  • Codici di accesso
  • Documenti sulle policy
  • Documentazione tecnica e runbook

2. Attieniti ai runbook

I runbook offrono indicazioni su quali passi intraprendere in un determinato scenario. Sono particolarmente importanti per i team che lavorano a rotazione su chiamata quando un esperto di sistema potrebbe non essere immediatamente disponibile. Un set di runbook ben mantenuto consente ai team di rispondere più velocemente, nonché di costruire una knowledge base condivisa di pratiche di risposta agli imprevisti.

3. Abbraccia il caos, promuovi la stabilità

Il Chaos Engineering è la pratica di attivare intenzionalmente dei guasti all'interno dei sistemi per capire come questi ultimi possano essere costruiti in modo più robusto. Un esempio di ciò è Chaos Monkey. Sviluppato originariamente su Netflix, Chaos Monkey è uno strumento che mette alla prova la resilienza della rete portando intenzionalmente offline i sistemi di produzione.

4. Pensa al di fuori del NOC

Storicamente, i Network Operations Centers (NOCs) fungevano da hub di monitoraggio e avviso per sistemi IT su larga scala. I moderni strumenti di gestione degli imprevisti consentono di semplificare notevolmente questo processo. Automatizzando i flussi di lavoro di consegna degli avvisi in base a tipi di avviso definiti, programmazioni del team ed escalation policy, è possibile evitare il rischio di errori umani e/o ritardi.

5. Aggrega, non aggravare

Non c'è niente di peggio che ricevere una continua raffica di avvisi provenienti da più strumenti di monitoraggio. Centralizzando il flusso di avvisi attraverso un unico strumento, i team sono in grado di filtrare meglio il rumore in modo da potersi concentrare rapidamente sulle questioni che richiedono la loro attenzione.

6. Ricorda: la conoscenza è potere

Un avviso di base indica che qualcosa non va, ma non sempre spiega cosa. Ciò causa ritardi non necessari poiché i team sono costretti a indagare e determinare la causa. Associando gli avvisi ai dettagli tecnici del motivo per cui sono stati attivati, il processo di correzione può iniziare più velocemente.

7. Ricevi avvisi per i tuoi avvisi

La frase latina "quis custodiet ipsos custodes" ("Chi sorveglierà i sorveglianti?") identifica un problema universale. Gli strumenti di monitoraggio utilizzati dai team IT e di sviluppatori sono altrettanto vulnerabili agli imprevisti e ai tempi di inattività quanto i sistemi progettati per proteggere. I processi di allarme olistici assicurano che sia i sistemi che gli strumenti che li monitorano siano continuamente controllati per verificarne l'integrità.

8. Ferma il sanguinamento

Un medico del triage sa che rischia di causare un danno maggiore se si impantana nel tentativo di risolvere tutte le situazioni contemporaneamente. La sua attenzione si concentra su azioni a breve termine che stabilizzano un paziente in maniera sufficiente da consentire di spostarlo verso cure più acute. Nei settori tecnologici, le azioni di contenimento si concentrano su soluzioni temporanee (isolamento di una rete, regressione di una build, riavvio dei server, ecc.) che limitano al minimo l'ambito dell'imprevisto o, più idealmente, riportano i sistemi online.

9. Non muoverti da solo

La cultura degli eroi nei team IT e DevOps è una filosofia in via di estinzione. Non è più di moda essere l'ingegnere solitario che lavora infinite ore di notte e nei fine settimana perché è l'unica persona in grado di riportare i sistemi online. Invece, i team stanno lavorando proprio come dice il loro nome, in team. La catena è forte quanto il suo anello più debole, lavora per nutrire l'intero team e non solo un eroe solitario.

10. Sii trasparente

Se gli utenti subiscono un'interruzione del servizio, è normale che l'imprevisto venga reso pubblico in breve tempo. Per stare al passo con questo, i team dovrebbero disporre di un piano di comunicazione degli imprevisti. L'obiettivo è creare fiducia con i clienti riconoscendo pubblicamente che si sta verificando un'interruzione e garantire loro che vengano prese misure adeguate per risolverla. Strumenti come Statuspage sono ottimi per distribuire queste informazioni.

11. Impara dai fallimenti

Nella stragrande maggioranza, i team IT e DevOps diranno che si prendono solo il tempo necessario per esaminare le "interruzioni gravi". Sebbene questo sia un buon inizio, spesso porta a trascurare imprevisti minori che possono avere un impatto persistente. Un report lungo potrebbe non essere necessario per tutti gli imprevisti, ma un'analisi retrospettiva è sempre utile.

12. Trova la causa principale (non esiste una causa principale!)

O esiste? Quando si analizza un imprevisto, è raro che si possa nominare una singola causa "principale" identificabile. Spesso i sistemi sono troppo complessi e interdipendenti per definire una singola causa principale di un imprevisto. Anche se la causa principale sembra evidente (ad esempio un errore di battitura che blocca un'applicazione), di solito è molto più utile capire quali fattori esterni potrebbero aver permesso (o non impedito) all'applicazione di bloccarsi. Per avere una comprensione più approfondita dei tuoi imprevisti impegnati a cercare molteplici cause principali.

13. Sii irreprensibile

L'obiettivo di ogni analisi retrospettiva degli imprevisti dovrebbe essere quello di capire cosa è andato storto e cosa si può fare per evitare che imprevisti simili si ripetano in futuro. È importante sottolineare che questo processo non dovrebbe essere utilizzato per colpevolizzare qualcuno. Questo perché i team che si concentrano sul "chi" e non sul "cosa", si lasciano sopraffare dalle emozioni anziché concentrarsi sulla comprensione reale di ciò che è successo.

Un'altra cosa

Nei moderni ambienti di gestione degli imprevisti, il cambiamento è l'unica costante. Ciò significa che i sistemi saranno continuamente messi a dura prova in modi nuovi e diversi. I team che capiscono questo, capiscono anche che non si tratta di se i sistemi falliranno, ma di quando accadrà. L'adozione di misure che preparano ad affrontare questi fallimenti dovrebbe essere riconosciuta come un elemento critico del successo continuo e integrata nel DNA dei team di tecnici.

Una soluzione di gestione degli imprevisti come Jira Service Management ti aiuterà con ciascuno di questi 13 punti, dall'organizzazione della On-call Schedule e degli avvisi all'unificazione dei team per una migliore collaborazione fino all'esecuzione delle analisi retrospettive.