Simple Science

Scienza all'avanguardia spiegata semplicemente

# Informatica# Ingegneria del software

Migliorare la gestione delle interruzioni nei servizi cloud

Un nuovo sistema migliora la diagnosi dei guasti nei servizi cloud usando dati.

― 5 leggere min


Innovazione nellaInnovazione nellagestione delleinterruzioniguasti per i servizi cloud.Nuovo sistema trasforma la diagnosi dei
Indice

Nel mondo digitale di oggi, i servizi cloud stanno diventando fondamentali per le aziende. Però, questi servizi possono avere dei problemi o dei guasti, che possono portare a gravi problemi per le aziende e i loro clienti. Capire le cause di questi guasti è fondamentale. Qui entra in gioco il lavoro degli Site Reliability Engineers (SRE). Loro investigano e diagnosticano i problemi quando i sistemi vanno giù, ma questo lavoro può richiedere tempo e non è semplice.

Perché Succedono i Guasti

I servizi cloud sono composti da molte parti collegate tra loro, chiamate microservizi. Quando una parte fallisce, può influenzare le altre. Ogni servizio genera degli alert, che sono notifiche che segnalano problemi. Questi alert possono variare in importanza, ma sono cruciali per diagnosticare i problemi. Quando si verifica un guasto, gli SRE raccolgono alert e log di errore per capire cosa è andato storto.

Il processo comprende più passaggi, come rilevare un problema, capire chi deve risolverlo, trovare la causa principale, risolverlo e documentare tutto per future referenze. Questo metodo tradizionale può richiedere molto tempo e richiede molta esperienza.

La Sfida della Diagnosi

Diagnosticare un guasto non è semplice. Poiché molti alert potrebbero non essere direttamente correlati al problema, gli SRE devono spesso setacciare enormi quantità di dati. Dipendono fortemente dalle loro esperienze passate e dai rapporti documentati di guasti precedenti. Tuttavia, questi rapporti sono spesso lunghi e scritti in un modo che non è sempre facile da interpretare rapidamente.

Innovazioni nella Gestione dei Guasti

Per affrontare questi problemi, è stato sviluppato un nuovo sistema. Questo sistema mira a fornire raccomandazioni per le cause principali e le soluzioni durante i guasti. Sfrutta sia Dati Strutturati, come gli alert, sia Dati semi-strutturati, come i rapporti di guasto, per formare un processo di diagnosi più efficiente.

I Due Tipi di Dati

  • Dati Strutturati: Questi sono alert generati dal sistema, come quando un servizio è lento o si è fermato. Questi dati forniscono un'istantanea in tempo reale delle prestazioni del servizio.

  • Dati Semi-Strutturati: Questi includono rapporti dettagliati che gli SRE scrivono dopo aver risolto i problemi. Questi rapporti contengono informazioni preziose su cosa non andava, come è stato risolto e altri dettagli pertinenti.

Combinando questi due tipi di dati, il nuovo sistema può fornire previsioni e suggerimenti più accurati.

Creazione di un Modello Basato su Grafi

Un aspetto chiave del nuovo sistema implica la creazione di grafi. Un grafo causale è formato usando dati strutturati come gli alert, mentre un grafo di conoscenza è creato usando i dati semi-strutturati dai rapporti di guasto. Unendo questi due grafi, il sistema può comprendere le relazioni tra alert e i sintomi notati nei guasti passati.

Come Funziona

Quando si verifica un guasto, il sistema valuta rapidamente gli alert che corrispondono ai sintomi di guasti precedenti. Classifica le potenziali cause principali e suggerisce soluzioni basate sui dati storici. Fondamentalmente, impara dalle esperienze passate per migliorare le risposte attuali.

Test del Sistema

Il nuovo sistema è stato testato per due anni su vari guasti reali di produzione da un grande fornitore di servizi. I risultati mostrano un netto miglioramento nella previsione delle cause principali e nella suggerimento di rimedi rispetto ai metodi esistenti. Ad esempio, ha raggiunto un'accuratezza del 27% migliore nell'identificare le cause principali rispetto ai metodi tradizionali.

Applicazioni nel Mondo Reale

  1. Esempio di Guasto del Servizio Email: Un servizio email ha subito un guasto durato quattro ore a causa di un'errata implementazione. Il sistema è stato in grado di richiamare un incidente simile passato dove un problema di implementazione ha causato un difetto, permettendo al team di agire rapidamente.

  2. Problema di Connettività del Database: Un altro incidente ha coinvolto un database che non riusciva a gestire il carico, causando l'inaccessibilità dei servizi. Il nuovo sistema ha identificato un problema precedente simile con il database, aiutando il team a risolvere il guasto attuale più rapidamente.

  3. Caso di Incompatibilità di Versione: Un servizio è diventato irraggiungibile a causa di versioni software incompatibili dopo un aggiornamento. Il sistema ha fatto riferimento a un incidente precedente con lo stesso problema, guidando il team verso una soluzione di rollback che ha risolto rapidamente il guasto.

Conclusione

Lo sviluppo di questo sistema segna un miglioramento significativo nella gestione dei guasti all'interno dei servizi cloud. Combinando efficacemente i dati degli alert e i rapporti storici sui guasti, fornisce raccomandazioni tempestive e accurate per diagnosticare e risolvere i problemi. Questo può ridurre notevolmente i tempi di inattività e i costi associati ai guasti, beneficiando sia le aziende che i loro clienti.

Direzioni Future

Guardando avanti, ci sono piani per confrontare questo sistema con altre tecniche all'avanguardia per ulteriori miglioramenti. Inoltre, esplorare modelli avanzati per una migliore accuratezza delle previsioni e integrare nuove tecnologie per approfondimenti migliorati sono in programma per lo sviluppo futuro.

L'evoluzione continua dei servizi cloud e la loro crescente complessità rendono le soluzioni robuste per la gestione dei guasti fondamentali. La combinazione di esperienze passate e dati in tempo reale può aiutare le organizzazioni a mantenere operazioni più fluide e clienti più soddisfatti.

Fonte originale

Titolo: ESRO: Experience Assisted Service Reliability against Outages

Estratto: Modern cloud services are prone to failures due to their complex architecture, making diagnosis a critical process. Site Reliability Engineers (SREs) spend hours leveraging multiple sources of data, including the alerts, error logs, and domain expertise through past experiences to locate the root cause(s). These experiences are documented as natural language text in outage reports for previous outages. However, utilizing the raw yet rich semi-structured information in the reports systematically is time-consuming. Structured information, on the other hand, such as alerts that are often used during fault diagnosis, is voluminous and requires expert knowledge to discern. Several strategies have been proposed to use each source of data separately for root cause analysis. In this work, we build a diagnostic service called ESRO that recommends root causes and remediation for failures by utilizing structured as well as semi-structured sources of data systematically. ESRO constructs a causal graph using alerts and a knowledge graph using outage reports, and merges them in a novel way to form a unified graph during training. A retrieval-based mechanism is then used to search the unified graph and rank the likely root causes and remediation techniques based on the alerts fired during an outage at inference time. Not only the individual alerts, but their respective importance in predicting an outage group is taken into account during recommendation. We evaluated our model on several cloud service outages of a large SaaS enterprise over the course of ~2 years, and obtained an average improvement of 27% in rouge scores after comparing the likely root causes against the ground truth over state-of-the-art baselines. We further establish the effectiveness of ESRO through qualitative analysis on multiple real outage examples.

Autori: Sarthak Chakraborty, Shubham Agarwal, Shaddy Garg, Abhimanyu Sethia, Udit Narayan Pandey, Videh Aggarwal, Shiv Saini

Ultimo aggiornamento: 2023-09-13 00:00:00

Lingua: English

URL di origine: https://arxiv.org/abs/2309.07230

Fonte PDF: https://arxiv.org/pdf/2309.07230

Licenza: https://creativecommons.org/licenses/by/4.0/

Modifiche: Questa sintesi è stata creata con l'assistenza di AI e potrebbe presentare delle imprecisioni. Per informazioni accurate, consultare i documenti originali collegati qui.

Si ringrazia arxiv per l'utilizzo della sua interoperabilità ad accesso aperto.

Altro dagli autori

Articoli simili