Questo documento spiega come automatizzare la migrazione dei workload Redis e Valkey autogestiti in Memorystore for Valkey. La migrazione a un ambiente completamente gestito elimina l'onere operativo della gestione della tua infrastruttura, quindi non devi occuparti dell'applicazione manuale di patch al sistema operativo, della configurazione della replica o degli script di backup personalizzati. Questa funzionalità ti consente di sfruttare il failover automatico integrato, la connettività VPC sicura e la scalabilità senza tempi di inattività.
Eseguendo la migrazione dei workload autogestiti in Memorystore for Valkey, puoi usufruire dei seguenti vantaggi che eliminano il lavoro manuale operativo e modernizzano l'infrastruttura del database:
- Elimina l'overhead operativo: trasferisci a Google Cloudle attività manuali e dispendiose in termini di tempo, come l'applicazione di patch al sistema operativo, il monitoraggio dell'infrastruttura, gli script di backup e la gestione della replica. Di conseguenza, puoi concentrarti sullo sviluppo delle applicazioni anziché sulla manutenzione del database.
- Ottieni un'alta affidabilità di livello enterprise: approfitta di uno SLA del 99,99% completamente gestito. Memorystore for Valkey offre il failover automatico e funzionalità integrate di backup e ripristino. In questo modo, le tue applicazioni sono protette da errori imprevisti dei nodi e il ripristino di emergenza è rapido.
- Scalabilità con tempi di inattività quasi nulli: scala le istanze in modo dinamico per far fronte a picchi di traffico imprevedibili. Puoi espandere fino a centinaia di nodi (fino a 250 shard) senza mettere offline le tue applicazioni.
- Migliora la sicurezza: sostituisci le regole di rete complesse e configurate manualmente con una connettività VPC integrata e sicura e controlli dell'accesso granulari basati su Identity and Access Management (IAM). In questo modo, i tuoi dati sono protetti dai rigidi limiti di sicurezza diGoogle Cloud.
- Consolida ed esegui l'upgrade delle tue istanze: unisci le tue istanze sparse, isolate e autogestite in un unico deployment ad alte prestazioni in Memorystore for Valkey. Nell'ambito di questa migrazione, puoi anche eseguire l'upgrade automatico delle versioni di Redis o Valkey obsolete alle ultime release supportate.
- Sblocca l'analisi avanzata in tempo reale e l'AI generativa: passa a un ambiente ottimizzato che offre latenze di microsecondi per la memorizzazione nella cache e la gestione delle sessioni. Per potenziare le tue applicazioni di AI generativa (GenAI), ottieni un accesso immediato e gestito a funzionalità avanzate come Vector Search.
Supporto delle versioni
La tabella in questa sezione elenca le seguenti informazioni sulle istanze Redis e Valkey autogestite di origine e sulle istanze target in Memorystore for Valkey:
- I tipi e le versioni delle istanze di origine supportate dalla migrazione
- Le versioni delle istanze Memorystore for Valkey di destinazione di cui puoi eseguire la migrazione dei workload
| Tipo di istanza di origine | Versione dell'istanza di origine | Versione dell'istanza target |
|---|---|---|
| Redis | 3.2.x - 7.2.x | Valkey 7.2, 8.0, 9.0 e 9.1 |
| Valkey | 7.x, 8.x e 9.x | Valkey 7.2, 8.0, 9.0 e 9.1 |
Prima di iniziare
Prima di iniziare a eseguire la migrazione dei workload, completa i prerequisiti in questa sezione.
Utilizza la console Google Cloud , gcloud CLI e le API
Per utilizzare la console Google Cloud , Google Cloud CLI (gcloud CLI) e le API, segui questi passaggi:
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Installa e inizializza Google Cloud CLI.
Se hai già installato gcloud CLI, assicurati di avere l'ultima versione eseguendo
gcloud components update. Per accedere ai comandi gcloud CLI di Memorystore for Valkey, devi disporre almeno della versione489.0.0di gcloud CLI.-
Abilita l'API Memorystore for Valkey.
API Memorystore for Valkey -
Abilita l'API Network Connectivity.
API Network Connectivity -
Abilita l'API Service Consumer Management.
API Service Consumer Management -
Abilita l'API Compute Engine
API Compute Engine
Assegna ruoli e autorizzazioni
Per eseguire la migrazione dei workload Redis e Valkey autogestiti in Memorystore for Valkey, chiedi all'amministratore di concederti il ruolo IAM Memorystore Admin (roles/memorystore.admin) nel tuo progetto Google Cloud . Per saperne di più su questo ruolo, consulta Ruoli predefiniti.
Per creare e visualizzare i collegamenti di rete, chiedi all'amministratore di concederti il ruolo IAM Compute Network Admin (roles/compute.networkAdmin) nel tuo progetto Google Cloud . Per saperne di più su questo ruolo, consulta Ruoli di Compute Engine.
Workflow per eseguire la migrazione dei workload
Per eseguire la migrazione dei workload Redis e Valkey autogestiti in Memorystore for Valkey, segui questi passaggi:
- Prepara l'istanza di origine: configura l'istanza Redis o Valkey autogestita per consentire connessioni sicure e la replica in uscita in Memorystore for Valkey.
- Prepara l'istanza di destinazione: determina le specifiche dell'istanza richieste, come il numero di shard e il tipo di nodo.
- Crea l'istanza target: esegui il provisioning dell'istanza Memorystore for Valkey che riceve i dati migrati.
- Configura un collegamento di rete: configura un collegamento di rete. Questo collegamento consente all'istanza target (che si trova in una rete VPC gestita da Google) di avviare connessioni all'istanza di origine (che si trova nella tua rete VPC). Di conseguenza, viene stabilita la replica.
- Avvia la migrazione: avvia il processo di sincronizzazione. L'istanza di destinazione si connette automaticamente all'istanza di origine e replica continuamente i dati come replica di lettura.
- Monitora la migrazione: verifica che la migrazione proceda senza problemi e che lo stato della migrazione sia INTEGRO.
- Completa la migrazione: esegui il cutover del traffico dell'applicazione all'istanza target.
Prepara l'istanza di origine
Devi preparare l'istanza Redis o Valkey autogestita in modo da poter eseguire la migrazione dei workload in un'istanza Memorystore for Valkey di destinazione.
Per consentire le connessioni dai nodi dell'istanza target ai nodi dell'istanza di origine, segui questi passaggi:
- Se hai attivato la modalità protetta sui nodi di origine, disattivala.
- Se hai configurato i nodi di origine utilizzando un'istruzione
bindesplicita, aggiorna i nodi per consentire le connessioni in entrata dai nodi di destinazione. I nodi di destinazione avviano le connessioni dagli indirizzi IP nella subnet del collegamento di rete. - Aggiorna le regole firewall che potrebbero bloccare le connessioni in entrata dai nodi di destinazione.
- Se hai attivato l'autenticazione e Transport Layer Security (TLS) sui nodi di origine, disattivali.
Per consentire ai nodi di destinazione di stabilire la replica con i nodi di origine, segui questi passaggi:
- Non rinominare i comandi Valkey o Redis che eseguono la modifica dei dati o che vengono utilizzati per la replica (ad esempio
PING,PSYNCeHSET). - Se utilizzi gli elenchi di controllo dell'accesso (ACL) per la tua istanza, consenti i seguenti comandi per l'utente
defaultin modo che l'istanza target possa stabilire la replica:REPLCONFSYNCPSYNCPINGINFOCLUSTER|NODES
- Assicurati che l'istanza di origine disponga di memoria e capacità della CPU sufficienti per gestire il carico di replica aggiuntivo dei nodi di destinazione.
Prepara l'istanza target
Per garantire un processo di replica fluido, devi dimensionare l'istanza Memorystore per Valkey di destinazione in modo appropriato per gestire il workload in entrata dall'istanza di origine. Per farlo, determina le specifiche esatte per l'istanza target. Queste specifiche includono la compatibilità con l'istanza di origine, la modalità cluster, il numero di database, il numero di shard, la versione dell'istanza e il tipo di nodo.
Per preparare l'istanza target, segui queste linee guida:
- Compatibilità con l'istanza di origine: le istanze di origine e l'istanza target devono trovarsi nello stesso progetto e nella stessa regione Google Cloud .
- Modalità cluster: la modalità cluster dell'istanza target deve corrispondere alla modalità cluster dell'istanza di origine. Se l'istanza di origine è in modalità cluster disabilitata, anche l'istanza target deve essere in modalità cluster disabilitata. In caso contrario, l'istanza target deve avere la modalità cluster abilitata.
- Numero di database: se l'istanza target è in modalità cluster disabilitata, il numero di database logici nell'istanza deve essere uguale o superiore al numero di database nell'istanza di origine.
- Numero di shard: se l'istanza target è in modalità cluster abilitata, il numero di shard nell'istanza deve corrispondere al numero di shard nell'istanza di origine. Tuttavia, il numero di repliche nelle istanze di origine e istanze target può essere diverso.
- Versione dell'istanza: la versione dell'istanza target deve essere compatibile con la versione dell'istanza di origine. Per ulteriori informazioni, consulta Supporto delle versioni.
- Versione di manutenzione: la versione di manutenzione dell'istanza target deve essere
MEMORYSTORE_20260313_01_00o successiva. Per saperne di più, consulta Informazioni sulla manutenzione. - Tipo di nodo: il tipo di nodo dell'istanza target deve essere abbastanza grande da gestire i dati che riceve dai nodi di origine. Per saperne di più sui tipi di nodi che puoi selezionare per l'istanza target e sulla capacità del keyspace corrispondente per ogni tipo di nodo, consulta Specifica del tipo di nodo.
Crea l'istanza target
Se non hai un'istanza target che soddisfa i requisiti per ricevere i dati di cui Memorystore for Valkey esegue la migrazione dall'istanza di origine, devi creare l'istanza.
Per creare questa istanza, utilizza la console Google Cloud , gcloud CLI o l'API REST. Per saperne di più sulla creazione dell'istanza, consulta Crea istanze.
Configura un collegamento di rete
Per eseguire la migrazione dei workload di un'istanza di origine in un'istanza target, i nodi di destinazione devono connettersi ai nodi di origine. Per abilitare questa connessione, devi utilizzare un collegamento di rete. I nodi di destinazione avviano le connessioni dalla subnet nella rete VPC dell'istanza di origine collegata al collegamento di rete.
Puoi utilizzare un collegamento di rete che soddisfi i seguenti requisiti:
- Deve trovarsi nello stesso progetto e nella stessa regione Google Cloud dell'istanza target.
- La subnet deve trovarsi nella stessa rete VPC dell'istanza di origine.
- La subnet per l'istanza di origine deve avere un intervallo CIDR IP adeguato che supporti un minimo di
N+1indirizzi IP utilizzabili (doveNè il numero di nodi nell'istanza target). Ad esempio, se un'istanza target ha tre shard e una replica, ha sei nodi: tre nodi per l'istanza principale e tre nodi per la replica. Pertanto, sono necessari almeno sette indirizzi IP. - L'intervallo di subnet non può sovrapporsi a
10.0.0.0/23perché Memorystore for Valkey riserva questo intervallo.
Se il collegamento di rete non soddisfa questi requisiti o se non ne hai uno, devi crearne uno. Per saperne di più, consulta Crea collegamenti di rete.
Avvia la migrazione
Quando avvii la migrazione, l'istanza di destinazione stabilisce la replica con l'istanza di origine. L'istanza target replica automaticamente tutti i dati che l'applicazione scrive nell'istanza di origine. L'istanza target diventa una replica di lettura dell'istanza di origine.
Per avviare la migrazione, utilizza la console Google Cloud , gcloud CLI o l'API REST.
Console
Nella console Google Cloud , vai alla pagina Memorystore for Valkey.
Fai clic sull'ID dell'istanza target.
Nella pagina Riepilogo istanza, fai clic su Avvia migrazione.
Nella finestra Esegui la migrazione delle istanze Redis e Valkey autogestite, segui questi passaggi:
Nella scheda Prepara, leggi le informazioni sui prerequisiti per l'istanza di origine e le linee guida per il collegamento di rete. Poi, fai clic su Continua.
Nella scheda Connetti, segui questi passaggi:
- Inserisci l'indirizzo IP e la porta dell'istanza di origine. Hai annotato queste informazioni in Prepara l'istanza di origine.
- Seleziona il collegamento di rete che vuoi utilizzare per eseguire la migrazione dei dati.
- Fai clic su Continua.
Nella scheda Rivedi, esamina le informazioni associate al processo di migrazione. Queste informazioni includono l'ID dell'istanza target, l'indirizzo IP e la porta dell'istanza di origine e il nome del collegamento di rete. Dopo aver esaminato queste informazioni, fai clic su Avvia migrazione.
Nella pagina Riepilogo istanza, verifica che venga visualizzato lo stato Migrazione in corso.
Se i nodi target non riescono a connettersi ai nodi di origine o se l'istanza di origine non riesce a replicare i dati nell'istanza target, la migrazione non va a buon fine.
In questo caso, Memorystore for Valkey esegue il rollback dell'istanza target allo stato precedente all'avvio del processo di migrazione. Lo stato dell'istanza target torna a essere Pronta e l'istanza ha di nuovo funzionalità di lettura e scrittura.
Dopo aver risolto i problemi che hanno causato l'errore, puoi avviare nuovamente la migrazione.
gcloud
Utilizza il comando gcloud memorystore instances start-migration come segue:
gcloud memorystore instances start-migration INSTANCE_ID \ --project=PROJECT_ID \ --location=REGION_ID \ --source-ip=SOURCE_IP_ADDRESS \ --source-port=SOURCE_PORT \ --network-attachment=projects/PROJECT_ID/locations/REGION_ID/networkAttachments/NETWORK_ATTACHMENT_ID
Effettua le seguenti sostituzioni:
- INSTANCE_ID: l'ID dell'istanza target.
- PROJECT_ID: l'ID o il numero del progettoGoogle Cloud che contiene questa istanza.
- REGION_ID: l'ID della regione in cui si trova l'istanza.
- SOURCE_IP_ADDRESS: l'indirizzo IP dell'istanza di origine. Hai annotato questo indirizzo IP in Prepara l'istanza di origine.
- SOURCE_PORT: il numero di porta dell'istanza di origine. Hai annotato questa porta in Prepara l'istanza di origine.
- NETWORK_ATTACHMENT_ID: l'ID del collegamento di rete.
Per verificare che la migrazione sia stata avviata correttamente, utilizza il comando gcloud memorystore instances describe come segue:
gcloud memorystore instances describe INSTANCE_ID \ --project=PROJECT_ID \ --location=REGION_ID
Verifica che accanto al parametro state venga visualizzato lo stato MIGRATING.
Se i nodi target non riescono a connettersi ai nodi di origine o se l'istanza di origine non riesce a replicare i dati nell'istanza target, la migrazione non va a buon fine.
In questo caso, Memorystore for Valkey esegue il rollback dell'istanza target allo stato precedente all'avvio del processo di migrazione. Lo stato dell'istanza target torna a ACTIVE e l'istanza ha di nuovo funzionalità di lettura e scrittura.
Dopo aver risolto i problemi che hanno causato l'errore, puoi avviare nuovamente la migrazione.
REST
Per avviare la migrazione, utilizza il seguente comando dell'API REST.
Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:
- PROJECT_ID: l'ID o il numero di progetto Google Cloud che contiene l'istanza target.
- REGION_ID: l'ID della regione in cui si trova l'istanza.
- INSTANCE_ID: l'ID dell'istanza.
- SOURCE_IP_ADDRESS: l'indirizzo IP dell'istanza di origine. Hai annotato questo indirizzo IP in Prepara l'istanza di origine.
- SOURCE_PORT: il numero di porta dell'istanza di origine. Hai annotato questa porta in Prepara l'istanza di origine.
- NETWORK_ATTACHMENT_ID: l'ID del collegamento di rete.
Metodo HTTP e URL:
POST https://memorystore.googleapis.com/v1/projects/PROJECT_ID/locations/REGION_ID/instances/INSTANCE_ID:startMigration
Corpo JSON della richiesta:
{
"selfManagedSource": {
"ipAddress": "SOURCE_IP_ADDRESS",
"port": SOURCE_PORT,
"networkAttachment": "projects/PROJECT_ID/regions/REGION_ID/networkAttachments/NETWORK_ATTACHMENT_ID"
}
}
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{
"name": "projects/PROJECT_ID/locations/REGION_ID/operations/OPERATION_ID",
"metadata": {
"@type": "type.googleapis.com/google.cloud.memorystore.v1.OperationMetadata",
"createTime": "2026-10-26T20:00:00.000000000Z",
"target": "projects/PROJECT_ID/locations/REGION_ID/instances/INSTANCE_ID",
"verb": "startMigration",
"requestedCancellation": false,
"apiVersion": "v1"
},
"done": false
}
Monitoraggio della migrazione
Per assicurarti che la migrazione proceda senza problemi, monitora sia l'istanza di origine sia l'istanza target.
Monitora l'istanza di origine
Nell'istanza di origine, verifica che l'utilizzo del buffer di output del client rimanga basso sui nodi di origine. Per controllare l'utilizzo del buffer, esegui una delle seguenti operazioni:
- Utilizza le dashboard di monitoraggio esistenti
- Connettiti all'istanza di origine con il client Redis o Valkey, quindi esegui il comando
INFO CLIENTSper controllare le metriche del buffer di output
Un utilizzo ridotto e costante indica un ritardo minimo e una sincronizzazione riuscita dei dati dall'istanza di origine all'istanza target.
Monitora l'istanza target
Puoi monitorare l'integrità della migrazione dall'istanza di origine a Memorystore for Valkey. Per farlo, controlla la metrica Stato della migrazione
(/instance/migration_status) per l'istanza
target per verificare che lo stato attuale dell'istanza sia HEALTHY. Questo stato indica che i link di replica tra gli shard delle istanze di origine e le istanze target sono attivi e funzionano correttamente durante il processo di migrazione.
Per controllare la metrica Stato della migrazione per l'istanza utilizzando la consoleGoogle Cloud , segui questi passaggi:
Nella console Google Cloud , vai alla pagina Esplora metriche.
Dal menu Metrica, seleziona la metrica Stato della migrazione. Per farlo, seleziona Istanza Memorystore > Istanza > Stato della migrazione, quindi fai clic su Applica.
Nel campo Filtro, aggiungi il seguente filtro:
instance_id = (equals) INSTANCE_ID.Sostituisci INSTANCE_ID con l'ID dell'istanza target.
Nella sezione Risultati, controlla lo stato attuale dell'istanza. Se viene visualizzato lo stato HEALTHY, l'istanza è in funzione e puoi completare la migrazione.
Se lo stato HEALTHY non viene visualizzato, puoi utilizzare la metrica Stato della migrazione per i nodi principali dell'istanza target. Monitorando questi nodi, puoi determinare se un nodo specifico non è integro.
Per utilizzare la metrica Stato della migrazione per i nodi dell'istanza, segui questi passaggi:
Dal menu Metrica, seleziona la metrica Stato della migrazione. Per farlo, seleziona Nodo istanza Memorystore > Istanza > Stato migrazione, quindi fai clic su Applica.
Nel campo Filtro, aggiungi il seguente filtro:
role = (equals) primary.Nella sezione Risultati, verifica che lo stato attuale di tutti i nodi principali sia INTEGRO. Se lo stato è HEALTHY, i nodi funzionano e puoi completare la migrazione.
Completa la migrazione
Per completare la migrazione, utilizza la console Google Cloud , gcloud CLI o l'API REST.
Console
Nella console Google Cloud , vai alla pagina Memorystore for Valkey.
Fai clic sull'ID dell'istanza target.
Nella pagina Riepilogo istanza, fai clic su Completa migrazione.
Nella finestra di dialogo Completa la migrazione, procedi nel seguente modo:
Se vuoi assicurarti che l'istanza target replichi tutti i dati dall'istanza di origine, seleziona Standard.
Nel campo di testo ID istanza, inserisci l'ID dell'istanza target.
Fai clic su Completa migrazione.
Nella pagina Panoramica dell'istanza, verifica che venga visualizzato lo stato Eseguita la migrazione.
gcloud
Utilizza il comando gcloud memorystore instances finish-migration come segue:
gcloud memorystore instances finish-migration INSTANCE_ID \ --project=PROJECT_ID \ --location=REGION_ID
Effettua le seguenti sostituzioni:
- INSTANCE_ID: l'ID dell'istanza target
- PROJECT_ID: l'ID o il numero del progettoGoogle Cloud che contiene questa istanza
- REGION_ID: l'ID della regione in cui si trova l'istanza
Per verificare che la migrazione sia stata completata correttamente, utilizza il comando gcloud memorystore instances describe come segue:
gcloud memorystore instances describe INSTANCE_ID \ --project=PROJECT_ID \ --location=REGION_ID
Verifica che accanto al parametro state venga visualizzato lo stato MIGRATED.
REST
Per completare la migrazione, utilizza il seguente comando dell'API REST.
Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:
- PROJECT_ID: l'ID del progetto Google Cloud che contiene l'istanza target.
- REGION_ID: l'ID della regione in cui si trova l'istanza.
- INSTANCE_ID: l'ID dell'istanza.
FORCE_BOOLEAN: facoltativo. Questo parametro determina se Memorystore for Valkey forza il completamento immediato della migrazione.
- Se imposti questo parametro su
true, Memorystore for Valkey termina immediatamente la migrazione in modo da poter eseguire il cutover del traffico dell'applicazione all'istanza di destinazione. Tuttavia, Memorystore for Valkey potrebbe non essere in grado di replicare tutti i dati dall'istanza di origine nell'istanza target. - Se imposti questo parametro su
false, Memorystore for Valkey replica tutti i dati dall'istanza di origine all'istanza target fino al momento in cui completi la migrazione.
- Se imposti questo parametro su
Metodo HTTP e URL:
POST https://memorystore.googleapis.com/v1/projects/PROJECT_ID/locations/REGION_ID/instances/INSTANCE_ID:finishMigration
Corpo JSON della richiesta:
{
"force": FORCE_BOOLEAN
}
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{
"name": "projects/PROJECT_ID/locations/REGION_ID/operations/OPERATION_ID",
"metadata": {
"@type": "type.googleapis.com/google.cloud.memorystore.v1.OperationMetadata",
"createTime": "2026-10-26T20:00:00.000000000Z",
"target": "projects/PROJECT_ID/locations/REGION_ID/instances/INSTANCE_ID",
"verb": "finishMigration",
"requestedCancellation": false,
"apiVersion": "v1"
},
"done": false
}