Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Importante
O Cache do Azure para Redis anunciou seu cronograma de desativação para todas as SKUs. Recomendamos mover as suas instâncias existentes do Azure Cache para Redis para Azure Managed Redis o mais rápido possível.
Para mais detalhes sobre a aposentadoria:
Este artigo descreve vários cenários de migração do Cache do Azure para Redis. Você pode migrar caches abertos do Redis em execução localmente ou em máquinas virtuais (VMs) na nuvem, ou caches hospedados de outras plataformas de nuvem, para o Azure Cache for Redis.
Você também pode migrar uma instância do Cache Redis do Azure para outra instância. Se você só precisar mover um cache Redis do Azure de uma região do Azure para outra, consulte Mover o Cache do Azure para instâncias Redis para regiões diferentes.
O Redis de código aberto pode ser executado em muitos ambientes de computação, como data centers privados locais ou VMs hospedadas na nuvem. Outras plataformas de hospedagem, como a Amazon Web Services (AWS), hospedam serviços de cache Redis, como o AWS ElastiCache. Normalmente, você pode migrar esses caches Redis para o Cache Redis do Azure com o mínimo de interrupção ou tempo de inatividade.
Opções de migração
Como você migra de um cache para outro depende de onde o cache existe e como seu aplicativo interage com ele. A tabela a seguir lista as estratégias de migração usadas com freqüência.
| Opção | Vantagens | Desvantagens |
|---|---|---|
| Criar um novo cache | Mais simples de implementar. | Deve preencher novamente os dados para o novo cache, que pode não funcionar com alguns aplicativos. |
| Exporte e importe dados via arquivo de banco de dados somente leitura (RDB). | Compatível com qualquer cache Redis. | Os dados gravados no cache existente após a geração do arquivo RDB podem ser perdidos. |
| Gravação dupla de dados em dois caches. | Sem perda de dados ou tempo de inatividade, sem operações de cache interrompidas e testes mais fáceis. | Precisa de duas caches por um longo período. |
| Migre dados programaticamente. | Controle total sobre como os dados são movidos. | Requer código personalizado. |
Criar um novo cache
Se operações ininterruptas e perda potencial de dados não forem preocupações, a maneira mais fácil de mover dados para o Cache Redis do Azure é criar uma instância de cache Redis do Azure e conectar seu aplicativo a ela. Por exemplo, se você usar o Redis como um cache look-aside para registros de banco de dados, poderá facilmente reconstruir o cache desde o início. Esta abordagem não é tecnicamente uma migração.
As etapas gerais para implementar esta opção são:
- Crie uma nova instância do Cache do Azure para Redis. Opcionalmente, experimente o Azure Managed Redis.
- Atualize seu aplicativo para usar a nova instância do Azure Redis.
- Exclua a instância antiga do Redis.
Exportar dados para um arquivo RDB e importá-los para o Cache Redis do Azure
O Redis de código aberto define um mecanismo padrão para tirar um instantâneo do conjunto de dados na memória de um cache e salvá-lo em um arquivo RDB que qualquer cache Redis possa ler. A camada Premium do Cache do Azure para Redis dá suporte à importação de dados para uma instância de cache por meio do arquivo RDB. Você pode usar o arquivo RDB para transferir dados de um cache existente para o Cache do Azure para Redis.
Importante
O formato de arquivo RDB pode mudar entre versões do Redis e pode não manter a compatibilidade com versões anteriores. A versão Redis do cache que você exporta deve ser igual ou inferior à versão fornecida pelo Cache Redis do Azure.
As etapas gerais para implementar esta opção são:
- Salve um instantâneo do cache Redis existente. Você pode configurar o Redis para salvar instantâneos periodicamente ou salvar um manualmente usando os comandos SAVE ou BGSAVE . O arquivo RDB é chamado dump.rdb por padrão e está localizado no caminho especificado no arquivo de configuração redis.conf .
- Crie uma nova instância do Cache do Azure para Redis de camada Premium que seja pelo menos tão grande quanto o cache existente.
- Copie o arquivo RDB para uma conta de armazenamento do Azure na região onde o novo cache está localizado. Você pode usar
AzCopypara esta tarefa. - Importe o arquivo RDB para o novo cache. Você também pode usar o cmdlet PowerShell Import-AzRedisCache .
- Atualize seu aplicativo para usar a nova instância de cache.
Nota
Para migrar dados de outra instância do Azure Redis, primeiro exporte o arquivo RDB dessa instância ou use o cmdlet PowerShell Export-AzRedisCache .
Escrever em dois caches Redis durante a migração
Em vez de mover dados entre caches, você pode definir temporariamente seu aplicativo para gravar dados em um cache existente e em um novo. O aplicativo lê dados do cache existente inicialmente. Quando o novo cache tiver dados suficientes, você poderá alternar o aplicativo para esse cache e desativar o antigo.
Por exemplo, suponha que você use o Redis como um armazenamento de sessão e as sessões do aplicativo expirem após sete dias. Depois de gravar em ambos os caches por sete dias, você sabe que o novo cache contém todas as informações de sessão não expiradas e pode confiar nele com segurança a partir desse ponto. Você pode então retirar o cache antigo.
As etapas gerais para implementar esta opção são:
- Crie uma nova instância do Cache do Azure para Redis de camada Premium que seja pelo menos tão grande quanto o cache existente.
- Modifique o código da aplicação para gravar nas instâncias nova e original.
- Continue usando dados da instância original até que a nova instância seja suficientemente preenchida com dados.
- Atualize o código do aplicativo para leitura e gravação somente a partir da nova instância.
- Exclua a instância original.
Migrar programaticamente
Você pode criar uma migração personalizada lendo programaticamente dados de um cache existente e gravando-os no Cache do Azure para Redis. Por exemplo, você pode usar a ferramenta de rediscópia de código aberto para copiar dados de uma instância do Azure Redis para outra.
O código-fonte pode ser um guia útil para escrever sua própria ferramenta de migração. Uma versão compilada também está disponível.
Nota
Esta ferramenta não é oficialmente suportada pela Microsoft.
As etapas gerais para implementar esta opção são:
- Crie uma máquina virtual (VM) do Azure na mesma região do cache existente. Se o conjunto de dados for grande, escolha uma VM poderosa para reduzir o tempo de cópia.
- Crie uma nova instância do Cache do Azure para Redis e verifique se ela está vazia. A
redis-copyferramenta não substitui nenhuma chave existente no cache de destino. - Use um aplicativo como
redis-copypara automatizar a cópia dos dados do cache de origem para o cache de destino. O processo de cópia pode demorar um pouco, dependendo do tamanho do seu conjunto de dados.