Partilhar via


Mover do Cache Redis do Azure para o Redis Gerenciado do Azure (visualização)

Neste artigo, você aprenderá a migrar da instância do Cache do Azure para Redis para uma instância do Azure Managed Redis (visualização).

Importante

O Azure Managed Redis está atualmente em pré-visualização. Veja Termos de Utilização Complementares da Pré-visualizações do Microsoft Azure para obter os termos legais que se aplicam às funcionalidades do Azure que estão na versão beta, na pré-visualização ou que ainda não foram lançadas para disponibilidade geral.

Pré-requisitos

Comparação de recursos entre o Cache Redis do Azure e o Azure Managed Redis (visualização)

Descrição da Funcionalidade Básica Standard Premium Equilibrado (pré-visualização) Memória otimizada (visualização) Computação otimizada (visualização)
Disponibilidade N/A 99,9% 99,9% N/A N/D N/A
Encriptação de dados em trânsito Sim Sim Sim Sim Sim Sim
Isolamento da rede Sim Sim Sim Sim Sim Sim
Expansão/redução Sim Sim Sim Sim Sim Sim
Redução de escala/entrada Sim Sim Sim No No Não
Clustering OSS No No Sim Sim Sim Sim
Persistência de dados No No Sim Sim Sim Sim
Redundância entre zonas Não Sim (pré-visualização) Sim Sim Sim Sim
Georreplicação No Não Sim (Passivo) Sim (Ativo) Sim (Ativo) Sim (Ativo)
Logs de auditoria de conexão No No Sim Sim (baseado em eventos) Sim (baseado em eventos) Sim (baseado em eventos)
Módulos Redis No No No Sim Sim Sim
Importação/Exportação No No Sim Sim Sim Sim
Reiniciar Sim Sim Sim No No Não
Atualizações agendadas Sim Sim Sim No No Não
Autenticação do Microsoft Entra ID Sim Sim Sim Sim Sim Sim
Microsoft Entra ID RBAC Sim Sim Sim No No Não
Notificação do Keyspace Sim Sim Sim No No Não
Não alta disponibilidade N/A Não No Sim Sim Sim

Aqui estão algumas outras diferenças que não são cobertas pelo mapeamento anterior. Considere estas alterações no aplicativo cliente:

Descrição da Funcionalidade Cache do Azure para Redis Azure Managed Redis (visualização)
Sufixo DNS (apenas para a nuvem PROD) .redis.cache.windows.net <region>.redis.azure.net
Porta TLS 6380 10000
Porta não-TLS 6379 Não suportado
Portas TLS de nó individual 130XX 85xx
Porta não-TLS de nó individual 150XX Não suportado
Suporte de clustering Modo de cluster OSS Modos de cluster OSS e Enterprise
Comandos não suportados Comandos não suportados Comandos multi-teclas
Disponibilidade regional Todas as regiões do Azure * Consulte a lista de regiões após esta secção.
Versão Redis 6 7.4
Versões TLS suportadas 1.2 e 1.3 1.2 e 1.3

Disponibilidade regional para o Azure Managed Redis

O Azure Managed Redis tem suporte atual nas seguintes regiões. Esta lista é atualizada regularmente. Eventualmente, o Azure Managed Redis terá suporte para todas as regiões no Azure. Trabalhe com seu contato de vendas para levantar solicitações em regiões onde você precisa de suporte.

Américas Europa Médio Oriente África Ásia-Pacífico
Sul do Brasil Alemanha Centro-Oeste Ásia Leste
E.U.A. Centro-Oeste Sul do Reino Unido Leste da Austrália
E.U.A. Centro-Norte Europa Ocidental Leste do Japão
EUA Oeste 3 Suécia Central Ásia Sudeste
E.U.A. Leste 2 Índia Central
E.U.A. Centro-Sul
E.U.A. Oeste 2
E.U.A. Leste
E.U.A. Oeste
E.U.A. Central
Canadá Central

Migrar sua instância do Cache do Azure para Redis para o Azure Managed Redis

Nota

Certifique-se de atualizar o restante do seu aplicativo e os recursos relacionados do Azure conforme necessário para usar o cache.

Selecione o cache que você deseja mover do portal do Azure

Cache do Azure para Redis Basic / Standard / Premium não clusterizado

Nota

Usar a opção não Alta Disponibilidade do Azure Managed Redis para migrar SKUs básicas

Cache do Azure para Redis Azure Managed Redis Memória adicional (%)
Básico/Padrão - C0 Equilibrado - B0 50
Básico/Padrão - C1 Equilibrado - B1 0
Básico/Padrão - C2 Equilibrado - B3 17
Básico/Padrão - C3 Equilibrado - B5 0
Básico/Padrão - C4 Memória otimizada – M10* -8
Básico/Padrão – C4 Memória otimizada – M20** 46
Básico/Padrão - C5 Memória otimizada – M20* -8
Básico/Padrão – C5 Memória otimizada – M50** 57
Básico/Padrão - C6 Memória otimizada - M50 12
Premium - P1 Equilibrado - B5 0
Premium - P2 Equilibrado - B10* -8
Premium - P2 Equilibrado - B20** 46
Premium - P3 Equilibrado - B20* -8
Premium - P3 Equilibrado - B50** 57
Premium - P4 Equilibrado - B50 12
Premium - P5 Equilibrado - B100 0
  • *Esta opção é para eficiência de custos. Verifique se o pico de memória total usada no mês passado é menor do que a memória Redis gerenciada do Azure sugerida para escolher essa opção.
  • ** Esta opção é para consumo de memória abundante.

Cache do Azure para Redis Premium em cluster

  • Para cluster fragmentado, escolha uma camada otimizada para memória que tenha memória total equivalente.
  • Para clusters com mais de uma réplica de leitura, escolha uma camada otimizada para computação com memória total equivalente como réplica primária.

Opções de migração

Os aplicativos cliente devem ser capazes de usar uma instância do Azure Managed Redis que tenha diferentes modos de clustering e pontos de extremidade. O Cache do Azure para Redis e o Azure Managed Redis (visualização) são compatíveis, portanto, nenhuma alteração no código do aplicativo além das configurações de conexão é necessária para a maioria dos cenários.

Saiba mais nas secções:

Opções para migrar o Cache Redis do Azure para o Redis Gerenciado do Azure

Opção Vantagens Desvantagens
Criar um novo cache Mais simples de implementar. Necessidade de preencher novamente os dados para o novo cache, que pode não funcionar com muitos aplicativos.
Exportar e importar dados via arquivo RDB Compatível com qualquer cache Redis em geral. Alguns dados podem ser perdidos se forem gravados no cache existente após a geração do arquivo RDB.
Dados de gravação dupla em dois caches Sem perda de dados ou tempo de inatividade. Operações ininterruptas do cache existente. Teste mais fácil do novo cache. Precisa de dois caches por um longo período de tempo.
Migrar dados programaticamente Controle total sobre como os dados são movidos. Requer código personalizado.

Criar um novo Cache do Azure para Redis

Esta abordagem tecnicamente não é uma migração. Se a perda de dados não for uma preocupação, a maneira mais fácil de migrar para a camada Redis Gerenciada do Azure é criar uma nova instância de cache e conectar seu aplicativo a ela. Por exemplo, se você usar o Redis como um cache look-aside de registros de banco de dados, poderá facilmente reconstruir o cache do zero. As etapas gerais para implementar esta opção são:

  1. Crie uma nova instância do Azure Managed Redis.
  2. Atualize seu aplicativo para usar a nova instância.
  3. Exclua a instância antiga do Cache do Azure para Redis.

Exportar dados para um arquivo RDB e importá-los para o Azure Managed Redis

Esta opção é aplicável apenas a caches de nível premium. 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. Outro cache Redis pode ler o arquivo RDB que foi exportado. A camada premium do Cache do Azure para Redis dá suporte à exportação de dados de uma instância de cache por meio de arquivos RDB. Você pode usar um arquivo RDB para transferir dados de uma instância existente do Cache do Azure para Redis para a instância do Azure Managed Redis.

As etapas gerais para implementar esta opção são:

  1. Crie uma nova instância do Azure Managed Redis que seja do mesmo tamanho (ou maior que) a instância existente do Cache do Azure para Redis.
  2. Exporte o arquivo RDB da instância existente do Cache do Azure para Redis usando estas instruções de exportação ou o cmdlet de Exportação do PowerShell
  3. Importe o arquivo RDB para a nova instância do Azure Managed Redis usando estas instruções de importação ou o cmdlet PowerShell Import
  4. Atualize seu aplicativo para usar a nova cadeia de conexão de instância do Azure Managed Redis.

Exportar dados:

az redis export --resource-group <ResourceGroupName> --name <Azure Cache for Redis instance name> --prefix <BlobPrefix> --container <ContainerName> --file-format <FileFormat>

Importar dados:

az redis import --resource-group <ResourceGroupName> --name <Azure Managed Redis instance name> --files <BlobUris>

Substitua ResourceGroupName, CacheName, BlobPrefix, ContainerName e FileFormat por seus valores específicos. O--file-format_ pode ser RDB ou AOF.

Gravar em dois caches Redis simultaneamente durante o período de migração

Em vez de mover dados diretamente entre caches, você pode usar seu aplicativo para gravar dados em um cache existente e em um novo que você está configurando. O aplicativo ainda lê dados do cache existente inicialmente. Quando o novo cache tiver os dados necessários, você alterne o aplicativo para esse cache e aposente o antigo. Digamos, por exemplo, que você use o Redis como um armazenamento de sessão e as sessões de aplicativo sejam válidas por sete dias. Depois de gravar nos dois caches por uma semana, você terá certeza de que o novo cache contém todas as informações de sessão não expiradas. Você pode confiar nele com segurança a partir desse ponto sem se preocupar com a perda de dados.

As etapas gerais para implementar esta opção são:

  1. Crie uma nova instância do Azure Managed Redis que seja do mesmo tamanho (ou maior que) a instância existente do Cache do Azure para Redis.
  2. Modifique o código do aplicativo para gravar nas instâncias nova e original.
  3. Continue lendo os dados da instância original até que a nova instância seja suficientemente preenchida com dados.
  4. Atualize o código do aplicativo para leitura e gravação somente a partir da nova instância.
  5. Exclua a instância original.

Migrar programaticamente

Crie um processo de migração personalizado lendo programaticamente dados de uma instância existente do Cache do Azure para Redis e gravando-os na instância do Azure Managed Redis. Existem duas ferramentas de código aberto que você pode experimentar:

  • Rediscópia
    • Essa ferramenta de código aberto pode ser usada para copiar dados de uma instância do Cache Redis do Azure para outra. Essa ferramenta é útil para mover dados entre instâncias de cache em diferentes regiões do Cache do Azure. Uma versão compilada também está disponível. Você também pode encontrar o código-fonte para ser um guia útil para escrever sua própria ferramenta de migração.
  • TUMULTO
    • A RIOT é outra ferramenta de migração popular testada pela comunidade Redis. É um utilitário de linha de comando projetado para ajudá-lo a obter dados dentro e fora do Redis.

Nota

Esta ferramenta não é oficialmente suportada pela Microsoft.

As etapas gerais para implementar esta opção são:

  1. Crie uma VM na região onde o cache existente está localizado. Se o conjunto de dados for grande, escolha uma VM relativamente poderosa para reduzir o tempo de cópia.
  2. Crie uma nova instância do Azure Managed Redis.
  3. Libere os dados do novo cache para garantir que ele esteja vazio. Esta etapa é necessária porque a própria ferramenta de cópia não substitui nenhuma chave existente no cache de destino. Importante: Certifique-se de NÃO liberar do cache de origem.
  4. Use um aplicativo como a ferramenta de código aberto mencionada anteriormente para automatizar a cópia de dados do cache de origem para o destino. Lembre-se de que o processo de cópia pode demorar um pouco para ser concluído, dependendo do tamanho do seu conjunto de dados.