Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Conclusioni
Abbiamo stabilito 12 regole per l'alta disponibilità in questo documento.
-
Regola 1 — Guasti meno frequenti (MTBF più lungo), tempi di rilevamento dei guasti più brevi (MTTD più breve) e tempi di riparazione più brevi (MTTR più breve) sono i tre fattori utilizzati per migliorare la disponibilità nei sistemi distribuiti.
-
Regola 2 — La disponibilità del software nel carico di lavoro è un fattore importante della disponibilità complessiva del carico di lavoro e dovrebbe ricevere la stessa attenzione degli altri componenti.
-
Regola 3 — La riduzione delle dipendenze può avere un impatto positivo sulla disponibilità.
-
Regola 4: in generale, seleziona le dipendenze i cui obiettivi di disponibilità sono uguali o superiori agli obiettivi del tuo carico di lavoro.
-
Regola 5: usa il risparmio per aumentare la disponibilità delle dipendenze in un carico di lavoro.
-
Regola 6 — Esiste un limite superiore all'efficienza in termini di costi del risparmio. Utilizza il minor numero di pezzi di ricambio necessari per ottenere la disponibilità richiesta.
-
Regola 7: non dipendere dai piani di controllo del piano dati, specialmente durante il ripristino.
-
Regola 8 — Abbina liberamente le dipendenze in modo che il carico di lavoro possa funzionare correttamente nonostante la riduzione della dipendenza, ove possibile.
-
Regola 9 — L'osservabilità e la strumentazione sono fondamentali per ridurre MTTD e MTTR.
-
Regola 10 — Concentrati sulla mitigazione dell'impatto, non sulla risoluzione dei problemi. Prendi il percorso più veloce per tornare al normale funzionamento.
-
Regola 11 — L'isolamento dei guasti riduce la portata dell'impatto e aumenta l'MTBF del carico di lavoro riducendo il tasso di guasto complessivo.
-
Regola 12 — Fai in modo che gli operatori facciano facilmente la cosa giusta.
Il miglioramento della disponibilità dei carichi di lavoro si basa sulla riduzione di MTTD e MTTR e sull'aumento del MTBF. In sintesi, abbiamo discusso i seguenti modi per migliorare la disponibilità che riguardano tecnologia, persone e processi.
-
MTTD
-
Riduci l'MTTD attraverso il monitoraggio proattivo delle metriche relative alla Customer Experience.
-
Sfrutta i controlli di integrità granulari per un failover rapido.
-
-
MTTR
-
Monitora l'ambito di impatto e le metriche operative sullo stato di salute.
-
Riduci l'MTTR seguendo 1/Restart, 2/Reboot, 3/Re-image/Redeploy e 4/Replace.
-
Risolvi il fallimento comprendendo l'ambito dell'impatto.
-
Utilizza servizi con tempi di riavvio più rapidi, come container e funzioni serverless su macchine virtuali o host fisici.
-
Ripristina automaticamente le distribuzioni non riuscite quando possibile.
-
Definisci guide e strumenti operativi per le operazioni di diagnosi e le procedure di riavvio.
-
-
MTBF
-
Elimina i bug e i difetti del software attraverso test rigorosi prima del rilascio in produzione.
-
Implementa l'ingegneria del caos e l'iniezione di errori.
-
Utilizza la giusta dose di risparmio nelle dipendenze per tollerare il fallimento.
-
Riduci al minimo la portata dell'impatto durante i guasti tramite contenitori di guasti.
-
Implementa gli standard per le implementazioni e le modifiche.
-
Progetta interfacce operatore semplici, intuitive, coerenti e ben documentate.
-
Stabilisci obiettivi per l'eccellenza operativa.
-
Privilegia la stabilità rispetto al rilascio di nuove funzionalità quando la disponibilità è una dimensione critica del carico di lavoro.
-
Implementa le quote di utilizzo con limitazione o riduzione del carico o entrambi per evitare il sovraccarico.
-
Ricorda che non riusciremo mai completamente a prevenire i fallimenti. Concentrati sulla progettazione di software con il miglior isolamento possibile dei guasti che limiti la portata e l'entità dell'impatto, idealmente mantenendo tale impatto al di sotto delle soglie di «downtime» E investi in un rilevamento e una mitigazione molto rapidi e affidabili. I moderni sistemi distribuiti devono ancora considerare i guasti come inevitabili ed essere progettati a tutti i livelli per garantire un'elevata disponibilità.