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
- Subscrição do Azure - crie uma gratuitamente
- Uma instância de qualquer Cache Redis do Azure
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:
- Crie uma nova instância do Azure Managed Redis.
- Atualize seu aplicativo para usar a nova instância.
- 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:
- 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.
- 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
- 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
- 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:
- 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.
- Modifique o código do aplicativo para gravar nas instâncias nova e original.
- Continue lendo os 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
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:
- 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.
- Crie uma nova instância do Azure Managed Redis.
- 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.
- 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.