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
Premium 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. Per creare una cache, accedere al portale di Azure. Nel menu del portale selezionare Crea una risorsa.

    Screenshot che mostra l'opzione Crea una risorsa evidenziata nel riquadro di spostamento a sinistra nel portale di Azure.

  2. Nel riquadro Attività iniziali immettere Cache di Azure per Redis nella barra di ricerca. Nei risultati della ricerca trovare Cache di Azure per Redis e quindi selezionare Crea.

    Screenshot che mostra Azure Marketplace con Cache di Azure per Redis nella casella di ricerca e il pulsante Crea evidenziato.

  3. Nel riquadro Nuova cache Redis, nella scheda Informazioni di base configurare le impostazioni seguenti per la cache:

    Impostazione Azione Descrizione
    Abbonamento Seleziona la tua sottoscrizione di Azure. Sottoscrizione da usare per creare la nuova istanza della cache di Azure per Redis.
    Gruppo di risorse Selezionare un gruppo di risorse oppure selezionare Crea nuovo e immettere un nuovo nome del gruppo di risorse. Nome del gruppo di risorse in cui creare la cache e altre risorse. L'inserimento di tutte le risorse di un'app in un unico gruppo di risorse ne semplifica la gestione o l'eliminazione.
    Nome DNS Immettere un nome univoco. Il nome della cache deve essere una stringa compresa tra 1 e 63 caratteri contenente solo numeri, lettere o trattini. Il nome deve iniziare e terminare con un numero o una lettera e non può contenere trattini consecutivi. Il nome host dell'istanza della cache è \<DNS name>.redis.cache.windows.net.
    Location Selezionare una località. Un'area di Azure vicina ad altri servizi che usano la cache.
    SKU della cache Selezionare uno SKU. Lo SKU determina le dimensioni, le prestazioni e i parametri delle funzionalità disponibili per la cache. Per altre informazioni, vedere la panoramica su Cache Redis di Azure.
    Dimensioni della cache Selezionare le dimensioni della cache. Per altre informazioni, vedere la panoramica su Cache Redis di Azure.
  4. Selezionare la scheda Rete oppure selezionare Avanti: Rete.

  5. Nella scheda Rete selezionare un metodo di connettività da usare per la cache.

  6. Selezionare la scheda Avanzate o Avanti: Avanzate.

  7. Nel riquadro Avanzate verificare o selezionare un metodo di autenticazione in base alle informazioni seguenti:

    Screenshot che mostra il riquadro Avanzate e le opzioni disponibili per la selezione.

    • Per impostazione predefinita, per una nuova cache Basic, Standard o Premium, l'Autenticazione di Microsoft Entra è abilitata e l'Autenticazione delle chiavi di accesso è disabilitata.
    • Per le cache Basic o Standard, è possibile scegliere la selezione di una porta non TLS.
    • Per le cache Standard e Premium, è possibile scegliere di abilitare le zone di disponibilità. Non è possibile disabilitare le zone di disponibilità dopo la creazione della cache.
    • Per una cache Premium, configurare le impostazioni per la porta non TLS, il clustering, l'identità gestita e la persistenza dei dati.

    Importante

    Per una protezione ottimale, è consigliabile usare Microsoft Entra ID con identità gestite per autorizzare le richieste nella cache ogni volta che è possibile. L'autorizzazione tramite Microsoft Entra ID e le identità gestite offre sicurezza e facilità d'uso superiori rispetto all'autorizzazione con 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. (Facoltativo) Selezionare la scheda Tag o selezionare Avanti: Tag.

  9. (Facoltativo) Nella scheda Tag immettere un nome e un valore di tag per classificare la risorsa della cache.

  10. Selezionare il pulsante Rivedi e crea.

    Nella scheda Rivedi e crea Azure convalida automaticamente la configurazione.

  11. Quando viene visualizzato il messaggio verde di Convalida superata, selezionare Crea.

Una nuova distribuzione della cache richiede diversi minuti. È possibile monitorare lo stato di avanzamento della distribuzione nel riquadro Panoramica di Cache di Azure per Redis. Quando Stato mostra 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.