Condividi tramite


Spostare istanze di cache di Azure per Redis in aree diverse

Questo articolo illustra come spostare le istanze di cache di Azure per Redis in un'area di Azure diversa. Si possono spostare le risorse in un'altra area per molti motivi:

  • Per sfruttare i vantaggi di una nuova area di Azure.
  • Per distribuire funzionalità o servizi disponibili solo in aree specifiche.
  • Per soddisfare i requisiti di governance e criteri interni.
  • Per rispondere ai requisiti di pianificazione della capacità.

Se si vuole eseguire la migrazione a cache di Azure per Redis da macchine virtuali locali basate su cloud o da un altro servizio di hosting, è consigliabile vedere Eseguire la migrazione a cache di Azure per Redis.

Il livello di cache di Azure per Redis usato determina l'opzione più adatta.

Livello cache Opzioni
Di alta qualità Replica geografica, creare una nuova cache, eseguire la doppia scrittura in due cache, esportare e importare dati tramite file RDB o eseguire la migrazione a livello di programmazione
Basic o Standard Creare una nuova cache, eseguire la doppia scrittura in due cache o eseguire la migrazione a livello di programmazione
Enterprise o Enterprise Flash Creare una nuova cache o esportare e importare dati con un file RDB oppure eseguire la migrazione a livello di programmazione

Replica geografica passiva (Premium)

Prerequisiti

Per configurare la replica geografica tra due cache, devono essere soddisfatti i prerequisiti seguenti:

  • Entrambe le cache sono cache di livello Premium.
  • Entrambe le cache si trovano nella stessa sottoscrizione di Azure.
  • La cache collegata secondaria è la stessa dimensione della cache o una dimensione della cache maggiore rispetto alla cache collegata primaria.
  • Entrambe le cache esistono già e sono in esecuzione.

Preparazione

Per spostare l'istanza della cache in un'altra area, è necessario creare una seconda istanza della cache Premium nell'area desiderata. Una volta che entrambe le cache sono in esecuzione, è possibile configurare la replica geografica tra le due istanze della cache.

Nota

Il trasferimento dei dati tra aree di Azure viene addebitato a velocità di larghezza di banda standard.

Alcune funzionalità non sono supportate con la replica geografica:

  • La ridondanza della zona non è supportata con la replica geografica.
  • La persistenza non è supportata con la replica geografica.

Condizioni per il supporto delle repliche geografiche:

Dopo aver configurato la replica geografica, si applicano le restrizioni seguenti alla coppia di cache collegate:

  • La cache collegata secondaria è di sola lettura. È possibile leggerla, ma non è possibile scrivervi dati.
    • Se si sceglie di leggere dall'istanza geografica secondaria quando si verifica una sincronizzazione completa dei dati tra la replica geografica primaria e quella geografica secondaria, ad esempio quando viene aggiornata la replica geografica primaria oppure la geografica secondaria, così come in alcuni scenari di riavvio, l'istanza geografica secondaria genera errori su qualsiasi operazione Redis su di essa fino al completamento della sincronizzazione completa dei dati tra la replica geografica primaria e quella secondaria.
    • Le applicazioni che leggono dall’istanza geografica secondaria devono essere compilate per eseguire il fallback all'area geografica primaria ogni volta che il database geografico secondario genera tali errori.
  • Tutti i dati presenti nella cache collegata secondaria prima dell'aggiunta del collegamento vengono rimossi. Se la replica geografica viene rimossa in un secondo momento, i dati replicati rimangono nella cache collegata secondaria.
  • Non è possibile ridimensionare nessuna delle due cache mentre le cache sono collegate.
  • Non è possibile modificare il numero di partizioni se è abilitato il clustering della cache.
  • Non è possibile abilitare la persistenza in nessuna delle cache.
  • È possibile Esportare da entrambe le cache.
  • Non è possibile Importare nella cache collegata secondaria.
  • Non è possibile eliminare la cache collegata o il gruppo di risorse che le contiene fino a quando non si scollegano le cache. Per altre informazioni, vedere Perché, quando si è tentato di eliminare la cache collegata, l'operazione non è riuscita?
  • Se le cache si trovano in aree diverse, i costi di uscita di rete si applicano ai dati spostati tra aree. Per altre informazioni, vedere Quanto costa replicare i dati nelle aree di Azure?
  • Il failover non è automatico. È necessario avviare il failover dalla cache primaria alla cache collegata secondaria. Per altre informazioni su come eseguire il failover di un'applicazione client, vedere Avviare un failover dalla replica geografica primaria a quella geografica secondaria.

Sposta

  1. Per collegare due cache per la replica geografica, selezionare prima Replica geografica dal menu Risorsa della cache che si intende utilizzare come cache collegata primaria. Selezionare quindi Aggiungi collegamento di replica della cache da Replica geografica a sinistra.

    Screenshot che mostra il menu Replica geografica della cache.

  2. Selezionare il nome della cache secondaria desiderata dall'elenco Cache compatibili. Se la cache secondaria non viene visualizzata nell'elenco, verificare che vengano soddisfatti i prerequisiti di replica geografica per la cache secondaria. Per filtrare le cache in base all'area, selezionare l'area nella mappa per visualizzare solo le cache nell'elenco Cache compatibili.

    Screenshot che mostra le cache compatibili per il collegamento con la replica geografica.

    È anche possibile avviare il processo di collegamento o visualizzare i dettagli sulla cache secondaria usando il menu di scelta rapida.

    Screenshot che mostra il menu di scelta rapida Replica geografica.

  3. Selezionare Collega per collegare le due cache e iniziare il processo di replica.

    Screenshot che mostra come collegare le cache per la replica geografica.

Verificare

  1. È possibile visualizzare lo stato di avanzamento del processo di replica tramite Replica geografica a sinistra.

    Screenshot che mostra lo stato del collegamento corrente.

    È anche possibile visualizzare lo stato del collegamento sulla sinistra, tramite Informazioni generali, per le cache primaria e secondaria.

    Screenshot che evidenzia come visualizzare lo stato del collegamento per le cache primaria e secondaria.

    Dopo aver completato il processo di replica, Link status (Stato collegamento) visualizza Riuscito.

    Screenshot che mostra lo stato di collegamento della cache come Operazione completata.

    La cache collegata primaria rimane disponibile per l'uso durante il processo di collegamento. La cache collegata secondaria non è disponibile fino al completamento del processo di collegamento.

Pulire le risorse di origine

Dopo aver popolato la nuova cache nell'area di destinazione con tutti i dati necessari, rimuovere il collegamento tra le due cache ed eliminare l'istanza originale.

  1. Per rimuovere il collegamento tra due cache e arrestare la replica geografica, selezionare Scollega cache dalla replica geografica a sinistra.

    Screenshot che mostra come scollegare le cache.

    Al termine del processo di scollegamento, la cache secondaria è disponibile per le operazioni di lettura e scrittura.

Nota

Quando viene rimosso il collegamento di replica geografica, i dati replicati dalla cache collegata primaria restano nella cache secondaria.

  1. Eliminare l'istanza originale.

Creare una nuova cache (tutti i livelli)

Prerequisiti

Preparazione

Se non è necessario gestire i dati durante lo spostamento, il modo più semplice per spostare le aree consiste nel creare una nuova istanza della cache nell'area di destinazione e collegarvi l’applicazione. Ad esempio, se si usa Redis come cache look-aside dei record di database, è possibile ricompilare facilmente la cache da zero.

Sposta

  1. Nel portale di Azure, cerca e seleziona Azure Cache per Redis.

  2. Nella pagina Cache Redis di Azure selezionare Crea>Cache Redis di Azure.

    Screenshot che mostra l'opzione Crea Cache per Redis di Azure.

  3. Nella scheda Informazioni di base della pagina Nuova cache Redis configurare le impostazioni seguenti:

    • Sottoscrizione: selezionare la sottoscrizione da usare.
    • Gruppo di risorse: selezionare un gruppo di risorse oppure selezionare Crea nuovo e immettere un nuovo nome del gruppo di risorse. L'inserimento di tutte le risorse dell'app nello stesso gruppo di risorse consente di gestirle o eliminarle facilmente.
    • Nome: immettere un nome di cache univoco nell'area. Il nome deve:
      • Essere una stringa da 1 a 63 caratteri.
      • Contengono solo numeri, lettere e trattini.
      • Iniziare e terminare con un numero o una lettera.
      • Non contenere trattini consecutivi.
    • Area: selezionare un'area di Azure vicino ad altri servizi che usano la cache.
    • SKU cache: selezionare uno SKU per determinare le dimensioni, le prestazioni e le funzionalità disponibili per la cache.
    • Dimensioni cache: selezionare una dimensione della cache. Per altre informazioni, vedere la panoramica su Cache Redis di Azure.

    Screenshot che mostra la scheda Informazioni di base della pagina Nuova cache Redis.

  4. Selezionare la scheda Rete oppure Avanti: Rete.

  5. Nella scheda Rete selezionare un metodo di connettività da usare per la cache. L'endpoint privato è consigliato per la sicurezza. Se si seleziona Endpoint privato, selezionare Aggiungi endpoint privato e creare l'endpoint privato.

  6. Selezionare la scheda Avanzate oppure Avanti: Avanzate.

  7. Nel riquadro Avanzate configurare le opzioni seguenti:

    • Selezionare Autenticazione di Microsoft Entra o Autenticazione delle chiavi di accesso. L'autenticazione di Microsoft Entra è abilitata per impostazione predefinita.
    • Scegliere se abilitare la porta non TLS.
    • Per una cache Premium, è possibile configurare o disabilitare le zone di disponibilità. Non è possibile disabilitare le zone di disponibilità dopo la creazione della cache. Per una cache Standard, le zone di disponibilità vengono allocate automaticamente. Le zone di disponibilità non sono disponibili per lo SKU Basic.
    • Per una cache Premium, configurare le impostazioni per il numero di repliche, la funzionalità di clustering, il numero di partizioni, l'identità gestita assegnata dal sistema e la persistenza dei dati.

    L'immagine seguente mostra la scheda Avanzate per lo SKU Standard.

    Screenshot che mostra il riquadro Avanzate per una cache SKU Standard.

    Importante

    Usare Microsoft Entra ID con identità gestite per autorizzare le richieste nella cache, se possibile. L'autorizzazione con l'ID e l'identità gestita di Microsoft Entra garantisce una maggiore sicurezza ed è più facile da usare rispetto all'autorizzazione della chiave di accesso condiviso. Per altre informazioni sull'uso delle identità gestite con le cache, vedere Usare Microsoft Entra ID per l'autenticazione della cache.

  8. Facoltativamente, selezionare la scheda Tag o selezionare Avanti: Tag e immettere i nomi e i valori dei tag per classificare le risorse della cache.

  9. Selezionare Rivedi e crea e una volta superata la convalida selezionare Crea.

La nuova distribuzione della cache richiede alcuni minuti. È possibile monitorare lo stato di avanzamento della distribuzione nella pagina Cache Redis di Azure del portale. Quando lo stato della cache viene visualizzato In esecuzione, la cache è pronta per l'uso.

Aggiornare infine l'applicazione per usare le nuove istanze.

Pulire le risorse di origine

Quando la nuova cache nell'area di destinazione è in esecuzione, eliminare l'istanza originale.

Esportare e importare dati con un file RDB (Premium, Enterprise, Enterprise, Enterprise Flash)

Redis open source definisce un meccanismo standard per la creazione di uno snapshot del set di dati in memoria di una cache e salvarlo in un file. Questo file, denominato RDB, può essere letto da un'altra cache Redis. Cache di Azure per Redis Premium ed Enterprise supporta l'importazione di dati in un'istanza della cache con file RDB. È possibile usare un file RDB per trasferire i dati da una cache esistente a una cache di Azure per Redis.

Importante

Il formato del file RDB può cambiare a seconda delle versioni di Redis e potrebbe non mantenere la compatibilità con le versioni precedenti. La versione Redis della cache da cui si esporta deve essere uguale o precedente alla versione della nuova istanza della cache.

Prerequisiti

  • Entrambe le cache sono cache di livello Premium o Enterprise.
  • La seconda cache ha le stesse dimensioni cache o dimensioni cache maggiori rispetto alla cache originale.
  • La versione Redis della cache da cui si esporta deve essere uguale o precedente alla versione della nuova istanza della cache.

Preparazione

Per spostare l'istanza della cache in un'altra area, è necessario creare una seconda istanza della cache Premium o una seconda istanza della cache Enterprise nell'area desiderata.

Sposta

  1. Per altre informazioni su come importare ed esportare dati nella cache di Azure per Redis vedere Importare ed esportare dati in cache di Azure per Redis.

  2. Aggiornare l'applicazione per usare la nuova istanza della cache.

Verificare

È possibile controllare lo stato dell'operazione di importazione tramite le notifiche del portale di Azure oppure visualizzando gli eventi nel log di controllo.

Pulire le risorse di origine

Quando la nuova cache nell'area di destinazione è in esecuzione, eliminare l'istanza originale.

Doppia scrittura in due cache (Basic, Standard e Premium)

Invece di spostare direttamente i dati tra le cache, è possibile usare l'applicazione per scrivere dati sia in una cache esistente che in una nuova che si sta configurando. L'applicazione legge inizialmente i dati dalla cache esistente. Quando la nuova cache contiene i dati necessari, si passa l'applicazione su tale cache e si ritira quella precedente. Si supponga, ad esempio, di usare Redis come archivio sessioni e che le sessioni dell'applicazione siano valide per sette giorni. Dopo aver scritto nelle due cache per una settimana, si sarà certi che la nuova cache contiene tutte le informazioni di sessione non scadute. Da questo momento in poi vi si può fare affidamento senza preoccuparsi della perdita di dati.

Prerequisiti

  • La seconda cache ha le stesse dimensioni cache o dimensioni cache maggiori rispetto alla cache originale.

Preparazione

Per spostare l'istanza della cache in un'altra area, sarà necessario creare una seconda istanza della cache nell'area desiderata.

Sposta

I passaggi generali per implementare questa opzione sono:

  1. Modificare il codice dell'applicazione per scrivere sia nell’istanza nuova che in quella originale.

  2. Continuare a leggere i dati dall'istanza originale fino a quando la nuova istanza non viene sufficientemente popolata con i dati.

  3. Aggiornare il codice dell'applicazione per leggere e scrivere solo dalla nuova istanza.

Pulire le risorse di origine

Quando la nuova cache nell'area di destinazione è in esecuzione, eliminare l'istanza originale.

Eseguire la migrazione a livello di programmazione (tutti i livelli)

È possibile creare un processo di migrazione personalizzato leggendo i dati da una cache esistente a livello di programmazione e scrivendoli in cache di Azure per Redis. Questo strumento open source può essere usato per copiare dati da un'istanza di cache di Azure per Redis a un'altra istanza in un'area Cache di Azure diversa. È disponibile anche una versione compilata. Il codice sorgente può essere una guida utile per la scrittura di uno strumento di migrazione personalizzato.

Nota

Questo strumento non è ufficialmente supportato da Microsoft.

Prerequisiti

  • La seconda cache ha le stesse dimensioni cache o dimensioni cache maggiori rispetto alla cache originale.

Preparazione

  • Creare una macchina virtuale nell'area in cui si trova la cache esistente. Se il set di dati è di grandi dimensioni, scegliere una macchina virtuale relativamente potente per ridurre il tempo necessario per copiarlo.
  • Per spostare l'istanza della cache in un'altra area, sarà necessario creare una seconda istanza della cache nell'area desiderata.

Sposta

Dopo aver creato una macchina virtuale nell'area in cui si trova la cache esistente e aver creato una nuova cache nell'area desiderata, i passaggi generali per implementare questa opzione sono:

  1. Scaricare i dati dalla nuova cache per assicurarsi che sia vuota. Questo passaggio è obbligatorio perché lo strumento di copia stesso non sovrascrive alcuna chiave esistente nella cache di destinazione.

    Importante

    Assicurarsi di NON scaricare dalla cache di origine.

  2. Usare un'applicazione come lo strumento open source sopra menzionato per automatizzare la copia dei dati dalla cache di origine a quella di destinazione. Tenere presente che il processo di copia potrebbe richiedere del tempo a seconda delle dimensioni del set di dati.

Pulire le risorse di origine

Quando la nuova cache nell'area di destinazione è in esecuzione, eliminare l'istanza originale.

Passaggi successivi

Altre informazioni sulle funzionalità della cache di Azure per Redis.