Mover as instâncias da Cache do Azure para Redis para regiões diferentes

Neste artigo, você aprenderá a mover instâncias do Cache Redis do Azure para uma região diferente do Azure. Você pode mover seus recursos para outra região por vários motivos:

  • Para tirar partido de uma nova região do Azure.
  • Para implantar recursos ou serviços disponíveis apenas em regiões específicas.
  • Atender aos requisitos internos de política e governança.
  • Para responder aos requisitos de planejamento de capacidade.

Se você deseja migrar para o Cache Redis do Azure a partir de VMs locais, baseadas em nuvem ou outro serviço de hospedagem, recomendamos que você veja Migrar para o Cache do Azure para Redis.

A camada do Cache Redis do Azure que você usa determina a opção melhor para você.

Camada de cache Opções
Premium Replicação geográfica, criação de um novo cache, gravação dupla em dois caches, exportação e importação de dados via arquivo RDB ou migração programática
Básico ou Standard Crie um novo cache, gravação dupla em dois caches ou migre programaticamente
Enterprise ou Enterprise Flash Criar um novo cache ou exportar e importar dados com um arquivo RDB ou migrar programaticamente

Replicação geográfica passiva (Premium)

Pré-requisitos

Para configurar a replicação geográfica entre dois caches, os seguintes pré-requisitos devem ser atendidos:

  • Ambos os caches são caches de camada Premium.
  • Ambos os caches estão na mesma assinatura do Azure.
  • O cache vinculado secundário tem o mesmo tamanho de cache ou um tamanho de cache maior do que o cache vinculado primário.
  • Ambos os caches já existem e estão em execução.

Preparação

Para mover sua instância de cache para outra região, você precisa criar uma segunda instância de cache premium na região desejada. Quando ambos os caches estiverem em execução, você poderá configurar a replicação geográfica entre as duas instâncias de cache.

Nota

A transferência de dados entre regiões do Azure é cobrada de acordo com taxas de largura de banda padrão.

Alguns recursos não são compatíveis com a replicação geográfica:

  • A redundância de zona não é suportada com a replicação geográfica.
  • A persistência não é suportada com a replicação geográfica.

Condições para suporte a replicações geográficas:

Depois que a replicação geográfica for configurada, as seguintes restrições se aplicam ao seu par de cache vinculado:

  • O cache vinculado secundário é somente leitura. Você pode ler a partir dele, mas não pode gravar nenhum dado nele.
    • Se você optar por ler a partir da instância Geo-Secondary quando uma sincronização de dados completa estiver acontecendo entre o Geo-Primary e o Geo-Secundário, como quando Geo-Primary ou Geo-Secondary é atualizado e em alguns cenários de reinicialização também, a instância Geo-Secondary lançará erros em qualquer operação Redis contra ela até que a sincronização completa de dados entre Geo-Primary e Geo-Secondary seja concluída.
    • As aplicações de leitura do Geo-Secundário devem ser construídas para voltar ao Geo-Primário sempre que o Geo-Secundário estiver lançando tais erros.
  • Todos os dados que estavam no cache vinculado secundário antes do link ser adicionado são removidos. No entanto, se a replicação geográfica for removida posteriormente, os dados replicados permanecerão no cache vinculado secundário.
  • Não é possível dimensionar nenhum dos caches enquanto os caches estiverem vinculados.
  • Não é possível alterar o número de fragmentos se o cache tiver clustering habilitado.
  • Não é possível habilitar a persistência em nenhum dos caches.
  • Você pode exportar de qualquer cache.
  • Não é possível Importar para o cache vinculado secundário.
  • Não é possível excluir o cache vinculado ou o grupo de recursos que os contém até desvincular os caches. Para obter mais informações, consulte Por que a operação falhou quando tentei excluir meu cache vinculado?
  • Se os caches estiverem em regiões diferentes, os custos de saída da rede se aplicarão aos dados movidos entre regiões. Para obter mais informações, consulte Quanto custa replicar meus dados entre regiões do Azure?
  • O failover não é automático. Você deve iniciar o failover do cache tintado primário para o secundário. Para obter mais informações sobre como fazer failover de um aplicativo cliente, consulte Iniciar um failover de geoprimário para geosecundário.

Mover

  1. Para vincular dois caches juntos para replicação geográfica, primeiro selecione Replicação geográfica no menu Recurso do cache que você pretende que seja o cache vinculado primário. Em seguida, selecione Adicionar link de replicação de cache em Replicação geográfica à esquerda.

    Captura de tela mostrando o menu de replicação geográfica do cache.

  2. Selecione o nome do cache secundário pretendido na lista Caches compatíveis. Se o cache secundário não for exibido na lista, verifique se os pré-requisitos de replicação geográfica para o cache secundário foram atendidos. Para filtrar os caches por região, selecione a região no mapa para exibir apenas esses caches na lista Caches compatíveis.

    Captura de tela mostrando caches compatíveis para vinculação com replicação geográfica.

    Você também pode iniciar o processo de vinculação ou exibir detalhes sobre o cache secundário usando o menu de contexto.

    Captura de tela mostrando o menu de contexto de replicação geográfica.

  3. Selecione Link para vincular os dois caches e iniciar o processo de replicação.

    Captura de tela mostrando como vincular caches para replicação geográfica.

Verificar

  1. Você pode visualizar o progresso do processo de replicação usando a replicação geográfica à esquerda.

    Captura de ecrã a mostrar o estado atual da Ligação.

    Você também pode exibir o status da vinculação à esquerda, usando Visão geral, para os caches primário e secundário.

    Captura de tela que destaca como exibir o status de vinculação para os caches primário e secundário.

    Quando o processo de replicação estiver concluído, o status do link será alterado para Succeeded.

    Captura de tela mostrando o status de vinculação de cache como Succeeded.

    O cache vinculado primário permanece disponível para uso durante o processo de vinculação. O cache vinculado secundário não estará disponível até que o processo de vinculação seja concluído.

Limpar recursos de origem

Quando o novo cache na região de destino for preenchido com todos os dados necessários, remova o link entre os dois caches e exclua a instância original.

  1. Para remover o link entre dois caches e interromper a replicação geográfica, selecione Desvincular caches na replicação geográfica à esquerda.

    Captura de tela mostrando como desvincular caches.

    Quando o processo de desvinculação for concluído, o cache secundário estará disponível para leituras e gravações.

Nota

Quando o link de replicação geográfica é removido, os dados replicados do cache vinculado primário permanecem no cache secundário.

  1. Exclua a instância original.

Criar um novo cache (Todas as camadas)

Pré-requisitos

Preparação

Se você não precisar manter seus dados durante a mudança, a maneira mais fácil de mover regiões é criar uma nova instância de cache na região de destino 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.

Mover

  1. Para criar um cache, entre no portal do Azure. No menu do portal, selecione Criar um recurso.

    Sceenshot que mostra a opção Criar um recurso realçada no painel de navegação esquerdo no portal do Azure.

  2. No painel Introdução, insira Cache Redis do Azure na barra de pesquisa. Nos resultados da pesquisa, localize o Cache do Azure para Redis e selecione Criar.

    Captura de ecrã que mostra o Azure Marketplace com o Cache Redis do Azure na caixa de pesquisa e o botão Criar está realçado.

  3. No painel Novo Cache Redis, na guia Noções básicas, defina as seguintes configurações para o cache:

    Definição Ação Descrição
    Subscrição Selecione a subscrição do Azure. A assinatura a ser usada para criar a nova instância do Cache do Azure para Redis.
    Grupo de recursos Selecione um grupo de recursos ou selecione Criar novo e insira um novo nome de grupo de recursos. Um nome para o grupo de recursos no qual criar seu cache e outros recursos. Ao colocar todos os recursos do seu aplicativo em um grupo de recursos, você pode facilmente gerenciá-los ou excluí-los juntos.
    Nome DNS Introduza um nome exclusivo. O nome do cache deve ser uma cadeia de caracteres de 1 a 63 caracteres que contenha apenas números, letras e hífenes. O nome deve começar e terminar com um número ou letra, e não pode conter hífenes consecutivas. O nome de host da instância de cache é \<DNS name>.redis.cache.windows.net.
    Location Selecione uma localização. Uma região do Azure que está perto de outros serviços que usam seu cache.
    Cache SKU Selecione uma SKU. A SKU determina o tamanho, o desempenho e os parâmetros de recurso disponíveis para o cache. Para obter mais informações, consulte Visão geral do Cache do Azure para Redis.
    Tamanho do cache Selecione um tamanho de cache. Para obter mais informações, consulte Visão geral do Cache do Azure para Redis.
  4. Selecione a guia Rede ou selecione Avançar: Rede.

  5. Na guia Rede, selecione um método de conectividade a ser usado para o cache.

  6. Selecione a guia Avançado ou selecione Avançar: Avançado.

  7. No painel Avançado, verifique ou selecione um método de autenticação com base nas seguintes informações:

    Captura de ecrã a mostrar o painel Avançado e as opções disponíveis para selecionar.

    • Por padrão, para um novo cache Básico, Standard ou Premium, a Autenticação do Microsoft Entra está habilitada e a Autenticação de Chaves de Acesso está desabilitada.
    • Para caches Basic ou Standard, você pode escolher a seleção para uma porta não-TLS.
    • Para caches Standard e Premium, você pode optar por habilitar zonas de disponibilidade. Não é possível desativar as zonas de disponibilidade após a criação do cache.
    • Para um cache Premium, defina as configurações para porta não-TLS, clustering, identidade gerenciada e persistência de dados.

    Importante

    Para uma segurança ideal, recomendamos que você use o Microsoft Entra ID com identidades gerenciadas para autorizar solicitações em seu cache, se possível. A autorização usando o ID do Microsoft Entra e identidades gerenciadas oferece segurança superior e facilidade de uso em relação à autorização de chave de acesso compartilhado. Para obter mais informações sobre como usar identidades gerenciadas com seu cache, consulte Usar a ID do Microsoft Entra para autenticação de cache.

  8. (Opcional) Selecione a guia Tags ou selecione Next: Tags.

  9. (Opcional) Na guia Marcas , insira um nome e um valor de tag se quiser categorizar seu recurso de cache.

  10. Selecione o botão Rever + criar.

    Na guia Revisão + criação, o Azure valida automaticamente sua configuração.

  11. Depois que a mensagem verde Validação passada for exibida, selecione Criar.

Uma nova implantação de cache ocorre ao longo de vários minutos. Você pode monitorar o progresso da implantação no painel Visão Geral do Cache do Azure para Redis. Quando Status exibe Em execução, o cache está pronto para uso.

Por fim, atualize seu aplicativo para usar as novas instâncias.

Limpar recursos de origem

Quando o novo cache na região de destino estiver em execução, exclua a instância original.

Exportar e importar dados com um arquivo RDB (Premium, Enterprise, Enterprise Flash)

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. Esse arquivo, chamado RDB, pode ser lido por outro cache Redis. O Cache do Azure para Redis Premium e Enterprise dá suporte à importação de dados para uma instância de cache com arquivos RDB. Você pode usar um 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 do qual você está exportando deve ser igual ou inferior à versão da nova instância de cache.

Pré-requisitos

  • Ambos os caches são caches de camada Premium ou de nível Enterprise.
  • O segundo cache tem o mesmo tamanho de cache ou um tamanho de cache maior do que o cache original.
  • A versão Redis do cache do qual você está exportando deve ser igual ou inferior à versão da nova instância de cache.

Preparação

Para mover sua instância de cache para outra região, você precisará criar uma segunda instância de cache premium ou uma segunda instância de cache corporativo na região desejada.

Mover

  1. Para obter mais informações sobre como importar e exportar dados no Cache do Azure para Redis. consulte Importar e exportar dados no Cache do Azure para Redis.

  2. Atualize seu aplicativo para usar a nova instância de cache.

Verificar

Você pode monitorar o progresso da operação de importação seguindo as notificações do portal do Azure ou exibindo os eventos no log de auditoria.

Limpar recursos de origem

Quando o novo cache na região de destino estiver em execução, exclua a instância original.

Gravação dupla em dois caches (Basic, Standard e Premium)

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 inicialmente 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.

Pré-requisitos

  • O segundo cache tem o mesmo tamanho de cache ou um tamanho de cache maior do que o cache original.

Preparação

Para mover sua instância de cache para outra região, você precisará criar uma segunda instância de cache na região desejada.

Mover

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

  1. Modifique o código do aplicativo para gravar nas instâncias nova e original.

  2. Continue lendo os dados da instância original até que a nova instância seja suficientemente preenchida com dados.

  3. Atualize o código do aplicativo para leitura e gravação somente a partir da nova instância.

Limpar recursos de origem

Quando o novo cache na região de destino estiver em execução, exclua a instância original.

Migrar programaticamente (todos os níveis)

Você pode criar um processo de migração personalizado lendo programaticamente dados de um cache existente e gravando-os no Cache do Azure para Redis. Essa ferramenta de código aberto pode ser usada para copiar dados de uma instância do Cache do Azure para Redis para outra instância em uma região diferente 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.

Nota

Esta ferramenta não é oficialmente suportada pela Microsoft.

Pré-requisitos

  • O segundo cache tem o mesmo tamanho de cache ou um tamanho de cache maior do que o cache original.

Preparaçã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.
  • Para mover sua instância de cache para outra região, você precisará criar uma segunda instância de cache na região desejada.

Mover

Depois de criar uma VM na região onde o cache existente está localizado e criar um novo cache na região desejada, as etapas gerais para implementar essa opção são:

  1. 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.

  2. Use um aplicativo como a ferramenta de código aberto acima 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.

Limpar recursos de origem

Quando o novo cache na região de destino estiver em execução, exclua a instância original.

Próximos passos

Saiba mais sobre os recursos do Cache do Azure para Redis.