Progettare per il ripristino

Completato
Il carico di lavoro deve essere in grado di prevedere e recuperare dalla maggior parte degli errori, di tutte le dimensioni, con un'interruzione minima dell'esperienza utente e degli obiettivi aziendali.

Anche i sistemi altamente resilienti necessitano di approcci di preparazione alle emergenze, sia nella progettazione dell'architettura che nelle operazioni del carico di lavoro. Nel livello dati è necessario avere strategie che possono ripristinare lo stato del carico di lavoro in caso di danneggiamento.

Scenario di esempio

Contoso ospita attualmente una grande quantità di dati in un database di SQL Server locale e ha recentemente modernizzato la soluzione di analisi per i dati con i servizi di Azure.

La nuova soluzione di analisi usa Azure Analysis Services, Azure Data Factory, Azure Synapse Analytics, Power BI e Azure Macchine virtuali. Tutti gli utenti della soluzione sono interni. Dopo aver considerato i requisiti di disponibilità della soluzione, il team decide di implementare la soluzione in una singola area.

I dati vengono inseriti usando Azure Data Factory ed elaborati prima di essere salvati nell'archiviazione di Analysis Services. Parte del processo richiede un processo windows legacy, distribuito in una macchina virtuale nel cloud.

Prepararsi per le emergenze

I piani di ripristino strutturati, testati e documentati sono allineati agli obiettivi di ripristino negoziati. I piani devono coprire tutti i componenti oltre al sistema nel suo complesso.

Un processo ben definito comporta un rapido ripristino che può impedire un impatto negativo sulle finanze e sulla reputazione dell'azienda. L'esecuzione di esercitazioni di ripristino regolari verifica il processo di ripristino dei componenti di sistema, dei dati e dei passaggi di failover e failback per evitare confusione quando il tempo e l'integrità dei dati sono misure chiave di successo.

Sfida di Contoso

  • La soluzione viene usata solo internamente e non è considerata mission-critical. Pertanto, il team del carico di lavoro e gli stakeholder aziendali accettano che la ricompilazione della soluzione in un'area secondaria sia un modello di recupero sufficiente nel caso improbabile che l'area di Azure in cui viene distribuita venga persa o che l'intera soluzione non sia disponibile per altri motivi.
  • Il team del carico di lavoro descrive come creare la soluzione in un'altra area del piano di ripristino di emergenza, ma non ha ancora avuto la possibilità di eseguire un'esercitazione completa sul ripristino di emergenza.

Applicazione dell'approccio e dei risultati

  • Dopo aver riscontrato un'interruzione a livello di area, il team di risposta del ripristino di emergenza è in grado di seguire le istruzioni del piano di ripristino di emergenza per ridistribuire la soluzione di analisi in un'altra area.
  • Il team individua lacune nei piani di ripristino di emergenza per alcune delle operazioni necessarie per distribuire la soluzione e il piano viene aggiornato per rendere il ripristino più efficiente in futuro.
  • Il team del carico di lavoro e gli stakeholder accettano di accelerare i test di ripristino di emergenza pianificati per garantire che il piano aggiornato consenta un ripristino più efficiente.

Indirizzi dati con stato

Assicurarsi di poter ripristinare i dati di tutti i componenti con stato all'interno delle destinazioni di ripristino.

I backup sono essenziali per ripristinare lo stato di funzionamento del sistema usando un punto di ripristino attendibile, ad esempio l'ultimo stato valido noto.

I backup non modificabili e coerenti in modo transazionale assicurano che i dati non possano essere modificati e che i dati ripristinati non siano danneggiati.

Sfida di Contoso

  • Il team del carico di lavoro decide di spostare i database SQL in Azure per ridurre i tempi di elaborazione dell'analisi. Uno dei database viene usato pesantemente durante il processo di analisi delle macchine virtuali, pertanto il team deve assicurarsi che lo stato del database possa essere recuperato con il valore RPO più basso possibile.

Applicazione dell'approccio e dei risultati

  • Poiché i database hanno dimensioni superiori a 4 TB, la migrazione a database SQL di Azure non è raggiungibile a breve termine. Il team esegue quindi la migrazione alle macchine virtuali di Azure che eseguono SQL Server 2022.
  • Il team decide di usare la funzione di backup automatico per tutti i database, inclusi quelli critici, come quello usato dalle macchine virtuali.
  • Per i database critici, il team prevede di usare la funzione backup automatico insieme alla funzione di collegamento Istanza gestita per replicare attivamente i database in un Istanza gestita di SQL di Azure.

Implementare funzionalità di riparazione automatica nella progettazione

Le funzionalità di riparazione automatica sono meccanismi che consentono ai componenti del carico di lavoro di risolvere automaticamente i problemi ripristinando i componenti interessati e, se necessario, eseguendo il failover dell'infrastruttura ridondante. Usare i modelli di progettazione per aggiungere resilienza al carico di lavoro tramite meccanismi di riparazione automatica.

L'automazione di riparazione automatica aiuta a ridurre i rischi derivanti da fattori esterni come l'intervento umano e riduce il ciclo di correzione delle interruzioni.

Sfida di Contoso

  • Il processo di Windows richiamato da Azure Data Factory durante l'inserimento dei dati è stato inizialmente distribuito in più macchine virtuali per una maggiore disponibilità.
  • Esistono alcuni casi in cui il processo Windows legacy si è arrestato in modo anomalo, richiedendo un riavvio della macchina virtuale. Anche se il tempo di elaborazione complessivo è stato interessato in modo minimo (a causa del livello di ridondanza), il team vuole implementare una soluzione che automatizza il rilevamento dell'errore e il ripristino.

Applicazione dell'approccio e dei risultati

  • Il team decide di implementare una soluzione del set di scalabilità di macchine virtuali di Azure, configurata per distribuire l'estensione integrità dell'applicazione per monitorare continuamente l'integrità del processo di macchina virtuale.
  • Con il ripristino automatico dell'istanza abilitato, il set di scalabilità è ora in grado di ripristinare il componente riavviando la macchina virtuale o creando una nuova istanza basata sulla stessa immagine.

Verificare le conoscenze

1.

Quale dei seguenti è un esempio di metriche che consentono di guidare i piani di ripristino di emergenza?

2.

Quale degli scenari seguenti è un esempio di come gestire i dati con stato a scopo di ripristino?

3.

Contoso ha un'applicazione line-of-business cruciale in Azure. Qual è un modo per implementare la riparazione automatica per migliorare l'affidabilità dell'applicazione?