Raccomandazioni per la progettazione di una strategia di monitoraggio e avviso affidabile
Si applica a questa raccomandazione della checklist per l'affidabilità del framework Azure Well-Architected:
RE:10 | Misurare e modellare gli indicatori di salute della soluzione. Acquisire continuamente il tempo di attività e altri dati sull'affidabilità da tutto il carico di lavoro, oltre che 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à:
Identificare i flussi critici e non critici.
Eseguire l'analisi della modalità di errore (FMA) per i flussi.
Identificare gli obiettivi di affidabilità.
Progettare per garantire l'affidabilità implementando ridondanza, scalabilità, autoconservazione e autoriparazione.
Progettare una strategia di test affidabile.
Modellare la salute del carico di lavoro e dei relativi componenti.
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. Costruisci una strategia di monitoraggio robusta e affidabile creando un modello di salute per i tuoi flussi critici e i componenti che li comprendono. Il modello di integrità definisce stati integri, degradati e non integri. Progettare il comportamento operativo per intercettare immediatamente le modifiche in questi stati. Quando gli stati di integrità passano da integrità a degradati o non integri, 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.
Implementare una strategia di monitoraggio generale
Abilitare la registrazione per tutte le risorse cloud. Usare l'automazione e la governance nelle implementazioni per abilitare la registrazione diagnostica in tutto l'ambiente.
Inoltra tutti i log di diagnostica a un nodo di raccolta dati e piattaforma di analisi centralizzata, come un'area di lavoro Log Analytics. Se si dispone di requisiti di sovranità dei dati a livello di area, è necessario usare sink di dati locali nelle aree soggette a tali requisiti.
Compromesso: l'archiviazione e l'interrogazione dei log comportano conseguenze in termini di costi. 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 un criterio di conservazione dei log che incorpora 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 di un modello dello stato di salute, 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 sono un'opzione valida per la strategia di monitoraggio.
Prendere in considerazione l'uso degli 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.
Visualizza la salute in tempo reale del tuo ambiente.
Usare i dati raccolti durante gli incidenti per migliorare continuamente i modelli di salute e la strategia di monitoraggio e allerta.
Incorporare i servizi di monitoraggio e avviso della piattaforma cloud, tra cui:
Integrità a livello di piattaforma, ad esempio Integrità dei servizi di Azure.
Integrità delle risorse, come Azure Resource Health.
Incorporare funzionalità di monitoraggio e analisi avanzate predefinite offerte dal provider di servizi cloud, come gli strumenti di Azure Monitor per approfondimenti.
Implementare il monitoraggio di backup e ripristino per acquisire:
Stato della replica dei dati per garantire che il carico di lavoro raggiunga il ripristino all'interno dell'obiettivo del punto di ripristino prefissato (RPO).
Backup e ripristini riusciti e non riusciti.
Durata del ripristino per informare la pianificazione del recupero dai disastri.
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 ai confini del servizio. Includere un ID di correlazione che passi attraverso i limiti di servizio: Se una transazione passa attraverso più servizi e una di esse 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 interrompono il codice dell'applicazione, causando l'accumulo delle richieste mentre i log vengono scritti. 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 garantire che sia possibile 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, come la percentuale di utilizzo della CPU, rete in entrata, rete in uscita e operazioni su disco al secondo, dall'applicazione per definire un modello di integrità e rilevare e prevedere i problemi. Questo approccio consente di distinguere tra errori temporanei e nontransienti.
Usare il monitoraggio white box per strumentare l'applicazione con log semantici e metriche. Raccogliere metriche e 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 prevedere i problemi.
Usare il monitoraggio della scatola nera 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 a livello di servizio e i contratti di servizio.
Nota
Per ulteriori informazioni sul monitoraggio delle applicazioni, vedere il 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 è verificato 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
Pressione della memoria
Serrature
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).
Approfondimenti di Azure Monitor sono strumenti di analisi avanzati che consentono di monitorare i servizi di Azure, ad esempio macchine virtuali, servizi applicativi e contenitori. Le informazioni dettagliate si basano su Azure Monitor e Log Analytics.
Azure Monitor per le soluzioni SAP è un prodotto di monitoraggio nativo di Azure per ambienti SAP che operano in Azure.
Criteri di Azure aiuta a far rispettare gli standard organizzativi e a valutare la conformità su vasta scala.
Il Centro continuità aziendale di Azure offre informazioni dettagliate sul patrimonio di continuità aziendale. Quando si applicano gli approcci forniti per la continuità aziendale e il ripristino di emergenza,usare il Centro continuità aziendale di Azure per centralizzare la gestione della protezione della continuità aziendale tra carichi di lavoro di Azure e ibridi. Il Centro continuità aziendale di Azure individua le risorse che non dispongono di una protezione appropriata (tramite backup o ripristino di emergenza) e esegue azioni correttive. Lo strumento facilita il monitoraggio unificato e consente di stabilire la conformità rispetto alla governance e all'audit tramite Criteri di Azure, il tutto facilmente accessibile in un'unica posizione.
Per le procedure consigliate per più aree di lavoro, vedere Progettare un'architettura dell'area di lavoro Log Analytics.
Esempio
Per esempi di soluzioni di monitoraggio reali, vedere Monitoraggio delle applicazioni Web in Azure e Architettura di base per un cluster servizio Azure Kubernetes.
Collegamenti correlati
- Sistema di allerta per DevOps
- Avvisi per le operazioni
- Indicazioni per il monitoraggio e la diagnostica
- Monitoraggio delle applicazioni Web in Azure
Collegamenti della community
- Gli avvisi di base di Monitoraggio di Azure (AMBA) sono un repository centrale di 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 per l'affidabilità
Fare riferimento al set completo di raccomandazioni.