Compartilhar via


Migrar do Cache do Azure para Redis para o Azure Managed Redis (versão prévia)

Nesse artigo, você aprenderá a migrar de uma instância do Cache do Azure para Redis para uma instância do Azure Managed Redis (versão prévia).

Importante

O Azure Managed Redis está atualmente em PREVIEW. Veja os Termos de Uso Complementares para Versões Prévias do Microsoft Azure para obter termos legais que se aplicam aos recursos do Azure que estão em versão beta, versão prévia ou que, de outra forma, ainda não foram lançados em disponibilidade geral.

Pré-requisitos

Comparação de recursos entre o Cache do Azure para Redis e o Azure Managed Redis (versão prévia)

Descrição do recurso Basic Standard Premium Equilibrado (versão prévia) Otimizado para Memória (versão prévia) Computação Otimizada (versão prévia)
Disponibilidade N/D 99,9% 99,9% N/D N/D N/D
Criptografia de dados em trânsito Sim Sim Sim Sim Sim Sim
Isolamento da rede Sim Sim Sim Sim Sim Sim
Ampliação/escala Sim Sim Sim Sim Sim Sim
Reduzindo/reduzindo Sim Sim Sim Não No No
Clustering de OSS Não No Sim Sim Sim Sim
Persistência de dados Não No Sim Sim Sim Sim
Redundância de zona Não Sim (versão prévia) Sim Sim Sim Sim
Replicação geográfica Não No Sim (Passivo) Sim (Ativo) Sim (Ativo) Sim (Ativo)
Registros de auditoria da conexão Não No Sim Sim (com base em eventos) Sim (com base em eventos) Sim (com base em eventos)
Módulos do Redis Não No No Sim Sim Yes
Importar/exportar Não No Sim Sim Sim Sim
Reboot Sim Sim Sim Não No No
Atualizações agendadas Sim Sim Sim Não No No
Autenticação do Microsoft Entra ID Sim Sim Sim Sim Sim Sim
Microsoft Entra ID RBAC Sim Sim Sim Não No No
Notificação do Keyspace Sim Sim Sim Não No No
Não Alta Disponibilidade N/D Não No Sim Sim Sim

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

Descrição do recurso Cache do Azure para Redis Azure Managed Redis (versão prévia)
Sufixo DNS (somente para nuvem PROD) .redis.cache.windows.net <region>.redis.azure.net
Porta TLS 6380 10000
Porta não TLS 6379 Sem suporte
Portas TLS de nó individuais 130XX 85xx
Porta não TLS de nó individual 150XX Sem suporte
Suporte a clustering Modo de agrupamento OSS Modos de cluster OSS e Enterprise
Comandos não suportados Comandos não suportados Comandos de várias chaves
Disponibilidade regional Todas as regiões do Azure * Consulte a lista de regiões após esta seção.
Versão do Redis 6 7.4
Versões de TLS com suporte 1.2 e 1.3 1.2 e 1.3

Disponibilidade regional para o Redis Gerenciado do Azure

Atualmente, há suporte para o Redis Gerenciados do Azure nas regiões a seguir. Essa lista é atualizada regularmente. Eventualmente, o Redis Gerenciado do Azure terá suporte em todas as regiões do Azure. Trabalhe com seu contato de vendas para enviar solicitações nas regiões onde você precisa de suporte.

Américas Europa Oriente Médio África Pacífico Asiático
Brazil South Centro-Oeste da Alemanha Leste da Ásia
Centro-Oeste dos EUA Sul do Reino Unido Leste da Austrália
Centro-Norte dos EUA Europa Ocidental Leste do Japão
Oeste dos EUA 3 Suécia Central Sudeste da Ásia
Leste dos EUA 2 Índia Central
Centro-Sul dos Estados Unidos
Oeste dos EUA 2
Leste dos EUA
Oeste dos EUA
Centro dos EUA
Canadá Central

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

Observação

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 deseja mover do portal do Azure

Cache do Azure para Redis Básico / Padrão / Premium não clusterizado

Observação

Use a opção Não Alta Disponibilidade do Azure Managed Redis para Migrar SKUs Básico

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

Cache do Azure para Redis Premium em cluster

  • Para cluster fragmentado, escolha uma camada de otimizado para memória que tenha memória total equivalente.
  • Para clusters com mais de uma réplica de leitura, escolha uma camada de computação otimizada com memória total equivalente à 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 cluster e pontos de extremidade. O Cache do Azure para Redis e o Azure Managed Redis (versão prévia) 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 em:

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

Opção Vantagens Desvantagens
Criar um novo cache Mais simples de implementar. Precisa repopular os dados para o novo cache, o que pode não funcionar com muitos aplicativos.
Exportar e importar dados por meio de arquivo RDB Em geral, compatível com qualquer cache do Redis. Alguns dados podem ser perdidos se forem gravados no cache existente depois que o arquivo RDB é gerado.
Dados de gravação dupla em dois caches Nenhuma perda de dados ou tempo de inatividade Operações ininterruptas do cache existente. Teste mais fácil do novo cache. Precisa de dois caches para um longo período de tempo.
Migrar dados programaticamente Controle total sobre como os dados são movidos. É necessário código personalizado.

Criar um novo Cache do Azure para Redis

Tecnicamente, essa abordagem 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á recriar o cache do zero facilmente. As etapas gerais para implementar essa opção são:

  1. Crie uma nova instância do Redis Gerenciado do Azure.
  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

Essa opção é aplicável somente 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. O nível premium do Cache do Azure para Redis oferece 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 uma instância do Azure Managed Redis.

As etapas gerais para implementar essa 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 essas instruções de exportação ou o cmdlet PowerShell Export
  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 da 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 pelos seus valores específicos. O formato--file_ 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 os caches, você pode usar seu aplicativo para gravar dados em um cache existente e 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ê alterna o aplicativo para esse cache e desativa o antigo. Digamos que, por exemplo, 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. Desse ponto em diante, você pode confiar nele com segurança sem se preocupar com a perda de dados.

As etapas gerais para implementar essa 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 tanto nas instâncias novas quanto nas originais.
  3. Continue lendo os dados da instância original até que a nova instância esteja suficientemente populada com os dados.
  4. Atualize o código do aplicativo para ler e gravar somente na 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 Azure Cache para Redis e gravando-os na instância do Cache do Azure para Redis. Existem duas ferramentas de código aberto que você pode experimentar:

  • Redis-copiar
    • Essa ferramenta de código aberto pode ser usada para copiar os dados de uma instância do Cache do Azure para Redis 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 achar o código-fonte um guia útil para escrever sua própria ferramenta de migração.
  • RIOT
    • RIOT é outra ferramenta de migração popular testada pela comunidade Redis. É um utilitário de linha de comando projetado para ajudar você a inserir e retirar dados do Redis.

Observação

Essa ferramenta não tem suporte oficial da Microsoft.

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

  1. Crie uma VM na região em que o cache existente esteja localizado. Se o seu conjuntos de dados for grande, escolha uma VM relativamente poderosa para reduzir o tempo de cópia.
  2. Crie uma nova instância do Redis Gerenciado do Azure.
  3. Libere os dados do novo cache para garantir que estejam vazios. Essa etapa é necessária porque a ferramenta de cópia em si não substitui nenhuma chave existente no cache de destino. Importante: certifique-se de NOT limpar 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 de destino. Lembre-se de que o processo de cópia pode levar algum tempo para ser concluído, dependendo do tamanho do seu conjuntos de dados.