Suggerimenti per la progettazione di una strategia di monitoraggio e avviso affidabile

Si applica a questa raccomandazione per l'affidabilità di Azure Well-Architected Framework:

RE:10 Misurare e pubblicare gli indicatori di integrità della soluzione. Acquisire continuamente il tempo di attività e altri dati di affidabilità da tutto il carico di lavoro e anche da singoli componenti e flussi chiave.

Questa guida descrive le raccomandazioni per la progettazione di una strategia di monitoraggio e avviso affidabile. Implementare questa strategia per mantenere informati i team operativi sullo stato di integrità dell'ambiente e assicurarsi di soddisfare gli obiettivi di affidabilità stabiliti per il carico di lavoro.

Definizioni

Termine Definizione
Metriche Valori numerici raccolti a intervalli regolari. Le metriche descrivono alcuni aspetti di un sistema in un determinato momento.
Log risorse Dati generati da un sistema. Fornisce informazioni sullo stato del sistema.
Tracce Dati che forniscono informazioni sul percorso che una richiesta attraversa i servizi e i componenti.

Strategie di progettazione chiave

Prima di creare una strategia di monitoraggio e avviso, eseguire le attività seguenti per il carico di lavoro come parte della pianificazione dell'affidabilità:

Creare una strategia di monitoraggio e avviso per garantire che il carico di lavoro funzioni in modo affidabile. Una strategia di monitoraggio e avviso fornisce consapevolezza ai team operativi in modo che vengano notificate le modifiche nella condizione del carico di lavoro e possano risolvere rapidamente i problemi. Creare una strategia di monitoraggio affidabile e affidabile creando un modello di integrità per i flussi critici e i componenti che questi flussi critici comprendono. Il modello di integrità definisce stati integri, degradati e non integri. Progettare la postura operativa per intercettare immediatamente le modifiche in questi stati. Quando gli stati di integrità passano da integrità a danneggiato o non integro, i meccanismi di avviso attivano le misure correttive automatiche e notificano ai team appropriati.

Implementare le raccomandazioni seguenti per progettare una strategia di monitoraggio e avviso che soddisfi i requisiti dell'azienda.

Indicazioni generali

  • Comprendere la differenza tra metriche, log e tracce.

  • Abilitare la registrazione per tutte le risorse cloud. Usare l'automazione e la governance nelle distribuzioni per abilitare la registrazione diagnostica in tutto l'ambiente.

  • Inoltrare tutti i log di diagnostica a una piattaforma di analisi e sink di dati centralizzata, ad esempio un'area di lavoro Log Analytics. Se si hanno requisiti di sovranità dei dati a livello di area, è necessario usare sink di dati locali nelle aree soggette a tali requisiti.

Compromesso: esistono implicazioni sui costi per l'archiviazione e l'esecuzione di query sui log. Si noti che l'analisi e la conservazione dei log influiscono sul budget e determinano il miglior equilibrio di utilizzo per soddisfare i requisiti. Per altre informazioni, vedere Procedure consigliate per l'ottimizzazione dei costi.

  • Se i carichi di lavoro sono soggetti a uno o più framework di conformità, alcuni dei log dei componenti che gestiscono le informazioni riservate sono soggetti anche a tali framework. Inviare i log dei componenti pertinenti a un sistema SIEM (Security Information and Event Management), ad esempio Microsoft Sentinel.

  • Creare criteri di conservazione dei log che incorporano i requisiti di conservazione a lungo termine che i framework di conformità impongono al carico di lavoro.

  • Usare la registrazione strutturata per tutti i messaggi di log per ottimizzare l'esecuzione di query sui dati di log.

  • Configurare gli avvisi da attivare quando i valori superano le soglie critiche correlate a una modifica dello stato del modello di integrità, ad esempio da verde a giallo o rosso.

    La configurazione della soglia è una pratica di miglioramento continuo. Man mano che il carico di lavoro si evolve, le soglie definite potrebbero cambiare. In alcuni casi, le soglie dinamiche rappresentano un'ottima opzione per la strategia di monitoraggio.

  • È consigliabile usare gli avvisi quando gli stati migliorano, ad esempio da rosso a giallo o rosso a verde, in modo che i team operativi possano tenere traccia di questi eventi per riferimento futuro.

  • Visualizzare l'integrità in tempo reale dell'ambiente.

  • Usare i dati raccolti durante gli eventi imprevisti per migliorare continuamente i modelli di integrità e la strategia di monitoraggio e avviso.

  • Incorporare servizi di monitoraggio e avvisi della piattaforma cloud, tra cui:

  • Incorporare funzionalità di monitoraggio e analisi avanzate predefinite offerte dal provider di servizi cloud, ad esempio gli strumenti di informazioni dettagliate di Monitoraggio di Azure.

  • Implementare il monitoraggio del backup e del ripristino per l'acquisizione:

    • Lo stato della replica dei dati per garantire che il carico di lavoro raggiunga il ripristino all'interno dell'obiettivo del punto di ripristino di destinazione (RPO).

    • Backup e ripristini riusciti e non riusciti.

    • Durata del ripristino per informare la pianificazione del ripristino di emergenza.

Monitorare le applicazioni

  • Creare probe di integrità o controllare le funzioni ed eseguirle regolarmente dall'esterno dell'applicazione. Assicurarsi di eseguire il test da più località geograficamente vicine ai clienti.

  • Dati di log durante l'esecuzione dell'applicazione nell'ambiente di produzione. Sono necessarie informazioni sufficienti per diagnosticare la causa dei problemi nello stato di produzione.

  • Registrare gli eventi in base ai limiti del servizio. Includere un ID di correlazione che passi attraverso i limiti di servizio: Se una transazione passa attraverso più servizi e uno di essi ha esito negativo, l'ID di correlazione consente di tenere traccia delle richieste nell'applicazione e di individuare il motivo per cui la transazione non è riuscita.

  • Usare la registrazione asincrona: Le operazioni di registrazione sincrone talvolta bloccano il codice dell'applicazione, causando la scrittura delle richieste di backup durante la scrittura dei log. Usare la registrazione asincrona per mantenere la disponibilità durante la registrazione dell'applicazione.

  • Separare la registrazione dell'applicazione dal controllo. I record di controllo vengono in genere conservati per requisiti di conformità o normativi e devono essere completi. Per evitare transazioni eliminate, mantenere i log di controllo separati dai log di diagnostica.

  • Usare la correlazione dei dati di telemetria per assicurarsi di poter eseguire il mapping delle transazioni tramite l'applicazione end-to-end e i flussi critici del sistema. Questo processo è fondamentale per eseguire l'analisi della causa radice (RCA) per gli errori. Raccogliere metriche e log a livello di piattaforma, ad esempio percentuale CPU, rete in, rete in uscita e disco al secondo, dall'applicazione per informare un modello di integrità e per rilevare e stimare i problemi. Questo approccio consente di distinguere tra errori temporanei e non transazioni.

  • Usare il monitoraggio white box per instrumentare l'applicazione con log semantici e metriche. Raccogliere le metriche e i log a livello di applicazione, ad esempio il consumo di memoria o la latenza delle richieste, dall'applicazione per informare un modello di integrità e per rilevare e stimare i problemi.

  • Usare il monitoraggio black box per misurare i servizi della piattaforma e l'esperienza del cliente risultante. Il monitoraggio black box testa il comportamento dell'applicazione visibile all'esterno, senza conoscenza degli aspetti interni del sistema. Questo approccio è comune per misurare gli indicatori a livello di servizio (SLI) incentrati sui clienti, gli obiettivi del livello di servizio e i contratti di servizio.

Nota

Per altre informazioni sul monitoraggio delle applicazioni, vedere Modello di monitoraggio degli endpoint di integrità.

Monitorare i dati e l'archiviazione

  • Monitorare le metriche di disponibilità dei contenitori di archiviazione. Quando questa metrica scende al di sotto del 100%, indica errori di scrittura. L'eliminazione temporanea della disponibilità può verificarsi quando il provider di servizi cloud gestisce il carico. Tenere traccia delle tendenze di disponibilità per determinare se si verifica un problema con il carico di lavoro.

    In alcuni casi, un calo delle metriche di disponibilità per un contenitore di archiviazione indica un collo di bottiglia nel livello di calcolo associato al contenitore di archiviazione.

  • Esistono molte metriche da monitorare per i database. Nel contesto dell'affidabilità, le metriche importanti da monitorare includono:

    • Durata delle query

    • Timeout

    • Tempi di attesa

    • Utilizzo elevato della memoria

    • Blocchi

Facilitazione di Azure

  • Monitoraggio di Azure è una soluzione di monitoraggio completa usata per raccogliere, analizzare e rispondere ai dati di monitoraggio dagli ambienti cloud e locali.

  • Log Analytics è uno strumento nel portale di Azure usato per modificare ed eseguire query di log sui dati nell'area di lavoro Log Analytics.

  • Application Insights è un'estensione di Monitoraggio di Azure. Fornisce funzionalità di monitoraggio delle prestazioni dell'applicazione (APM).

  • Le informazioni dettagliate di Monitoraggio di Azure sono strumenti di analisi avanzati che consentono di monitorare i servizi di Azure, ad esempio macchine virtuali, servizi applicazioni e contenitori. Le informazioni dettagliate sono basate su Monitoraggio di Azure e Log Analytics.

  • Monitoraggio di Azure per le soluzioni SAP è un prodotto di monitoraggio nativo di Azure per i paesaggi SAP eseguiti in Azure.

  • Criteri di Azure consente di applicare gli standard aziendali e di valutare la conformità su larga scala.

  • Centro operativo continuo di Azure offre informazioni dettagliate sulla continuità aziendale. Quando si applicano gli approcci forniti per la continuità aziendale e il ripristino di emergenza (BCDR), usare Centro operativo continuo di Azure per centralizzare la gestione della protezione della continuità aziendale tra carichi di lavoro di Azure e ibridi. Centro operativo continuo di Azure individuare le risorse che non dispongono di protezione appropriata (tramite backup o ripristino di emergenza) e intraprendere azioni correttive. Lo strumento facilita il monitoraggio unificato e consente di stabilire la conformità alla governance e al controllo tramite Criteri di Azure, tutti accessibili in modo pratico in una posizione.

  • Per più procedure consigliate per l'area di lavoro, vedere Progettare un'architettura dell'area di lavoro Log Analytics.

Esempio

Per esempi di soluzioni di monitoraggio reali, vedere Monitoraggio applicazioni Web in Azure e Architettura baseline per un cluster di servizio Azure Kubernetes.

  • Avvisi di base di Monitoraggio di Azure (AMBA) è un repository centrale delle definizioni di avviso che i clienti e i partner possono usare per migliorare l'esperienza di osservabilità tramite l'adozione di Monitoraggio di Azure.

Elenco di controllo affidabilità

Fare riferimento al set completo di raccomandazioni.