Eseguire la migrazione di Azure Cosmos DB per NoSQL al supporto della zona di disponibilità
Questa guida descrive come eseguire la migrazione di Azure Cosmos DB per NoSQL dal supporto della zona non di disponibilità al supporto della disponibilità.
L'uso delle zone di disponibilità in Azure Cosmos DB non influisce sulle prestazioni o sulla latenza. Non richiede alcuna modifica alla modalità di coerenza selezionata e non richiede alcuna modifica al codice dell'applicazione.
Quando le zone di disponibilità sono abilitate, Azure Cosmos DB distribuisce in modo intelligente le quattro repliche dei dati in tutte le zone disponibili. In questo modo, in caso di interruzione in un'unica zona di disponibilità, l'account rimane completamente operativo. Al contrario, senza zone di disponibilità, tutte le repliche si trovano in una singola zona di disponibilità (non viene esposta), causando potenziali tempi di inattività se si verifica un problema in tale zona specifica.
L'abilitazione delle zone di disponibilità è un ottimo modo per aumentare la resilienza del database Cosmos DB senza introdurre ulteriori complessità dell'applicazione, influire sulle prestazioni o persino sostenere costi aggiuntivi, se viene usata anche la scalabilità automatica.
Prerequisiti
Gli account serverless possono usare zone di disponibilità, ma questa scelta è disponibile solo durante la creazione dell'account. Gli account esistenti senza zone di disponibilità non possono essere convertiti in una configurazione della zona di disponibilità. Per i carichi di lavoro cruciali, la velocità effettiva con provisioning è la scelta consigliata.
Comprendere che l'abilitazione delle zone di disponibilità non è una scelta a livello di account. Un singolo account Cosmos DB può estendersi su un numero arbitrario di aree di Azure, ognuna delle quali può essere configurata in modo indipendente per sfruttare le zone di disponibilità e alcune coppie di aree potrebbero non avere il supporto della zona di disponibilità. Questo aspetto è importante, poiché alcune aree non supportano ancora le zone di disponibilità, ma l'aggiunta a un account Cosmos DB non impedisce l'abilitazione delle zone di disponibilità in altre aree configurate per tale account. Il modello di fatturazione riflette anche questa possibilità. Per altre informazioni sul contratto di servizio per Cosmos DB, vedere Affidabilità in Cosmos DB per NoSQL. Per informazioni su quali aree supportano le zone di disponibilità, vedere Aree di Azure con supporto della zona di disponibilità
Requisiti del tempo di inattività
Quando si esegue la migrazione al supporto della zona di disponibilità, si verifica una piccola quantità di indisponibilità di scrittura (alcuni secondi) durante l'aggiunta e la rimozione dell'area secondaria, perché il sistema interrompe deliberatamente le scritture per verificare la coerenza tra le aree.
Migrazione
Poiché non è possibile abilitare le zone di disponibilità in un'area già aggiunta all'account, sarà necessario rimuoverla e aggiungerla di nuovo con le zone di disponibilità abilitate. Per evitare interruzioni del servizio, si aggiungerà e si esegue il failover in un'area temporanea fino al completamento della configurazione della zona di disponibilità.
Seguire questa procedura per abilitare le zone di disponibilità per l'account in aree selezionate.
Aggiungere un'area temporanea all'account del database seguendo la procedura descritta in Aggiungere un'area all'account del database.
Se l'account Azure Cosmos DB è configurato con scritture in più aree, passare al passaggio successivo. In caso contrario, eseguire il failover manuale nell'area temporanea seguendo la procedura descritta in Eseguire il failover manuale in un account Azure Cosmos DB.
Rimuovere l'area per cui si desidera abilitare le zone di disponibilità seguendo la procedura descritta in Rimuovere l'area nell'account del database.
Aggiungere di nuovo l'area da abilitare con le zone di disponibilità:
- Aggiungere un'area all'account del database.
- Trovare l'area appena aggiunta nella colonna Area di scrittura e abilitare la zona di disponibilità per tale area.
- Seleziona Salva.
Eseguire il failback nell'area abilitata per la zona di disponibilità seguendo la procedura descritta in Eseguire il failover manuale in un account Azure Cosmos DB.
Rimuovere l'area temporanea seguendo la procedura descritta in Rimuovere l'area nell'account del database.