Compartilhar via


Mover recursos para a nova região – Instância Gerenciada de SQL do Azure

Aplica-se a: Instância Gerenciada de SQL do Azure

Este artigo ensina um fluxo de trabalho genérico sobre como mover sua Instância Gerenciada de SQL do Azure para uma nova região.

Observação

Este artigo se aplica a migrações na nuvem pública do Azure ou na mesma nuvem soberana.

Visão geral

Há vários cenários em que é possível mover sua instância gerenciada existente de uma região para outra. Por exemplo, você está expandindo sua empresa para uma nova região e deseja otimizá-la para a nova base de clientes. Ou você precisa mover as operações para uma região diferente por motivos de conformidade. Ou o Azure lançou uma nova região que fornece uma proximidade melhor e aprimora a experiência do cliente.

O fluxo de trabalho geral para mover recursos para uma região diferente consiste nas seguintes etapas:

  1. Verifique os pré-requisitos para a movimentação.
  2. Prepare-se para mover os recursos no escopo.
  3. Monitore o processo de preparação.
  4. Teste o processo de movimentação.
  5. Inicie a movimentação propriamente dita.
  6. Remova os recursos da região de origem.

Verificar os pré-requisitos

  1. Para cada instância gerenciada de origem, crie uma instância do mesmo tamanho na região de destino.
  2. Configure a rede para uma instância gerenciada. Para obter mais informações, confira configuração de rede.
  3. Configure o banco de dados master de destino com os logons corretos. Se você não for o administrador da assinatura ou o administrador da Instância Gerenciada de SQL, trabalhe com o administrador para atribuir as permissões necessárias.
  4. Se os bancos de dados forem criptografados com Transparent Data Encryption (TDE) e chave de criptografia Bring Your Own Key (BYOK ou chave gerenciada pelo cliente) Azure Key Vault, verifique se o material de criptografia correto está provisionado nas regiões de destino.
    • A maneira mais simples de fazer isso é adicionar a chave de criptografia do cofre de chaves existente (em uso como um protetor de TDE na instância de origem) à instância de destino e, em seguida, definir a chave como o protetor de TDE na instância de destino, já que agora uma instância em uma região pode se conectar a um cofre de chaves em qualquer outra região.
    • Como prática recomendada para garantir que a instância de destino tenha acesso às chaves de criptografia mais antigas (necessárias para restaurar backups de banco de dados), execute o cmdlet Get-AzSqlServerKeyVaultKey na instância de origem ou o cmdlet Get-AzSqlInstanceKeyVaultKey na instância gerenciada de origem para retornar a lista de chaves disponíveis e adicionar essas chaves à instância de destino.
    • Para obter mais informações e práticas recomendadas sobre a configuração de TDE gerenciadas pelo cliente na instância de destino, consulte Transparent Data Encryption do SQL do Azure com chaves gerenciadas pelo cliente no Azure Key Vault.
  5. Se a auditoria estiver habilitada para a instância gerenciada, verifique se:
    • O contêiner de armazenamento ou o hub de eventos com os logs de auditoria existentes é movido para a região de destino.
    • A auditoria está configurada na instância de destino. Para obter mais informações, confira Auditoria com a Instância Gerenciada de SQL.
  6. Se sua instância tiver uma LTR (política de retenção de longo prazo), os backups de LTR existentes permanecerão associados à instância atual. Como a instância de destino será diferente, você poderá acessar os backups de LTR mais antigos na região de origem usando a instância de origem, mesmo se a instância for excluída.

Observação

Não há suporte à migração de instâncias com backups LTR existentes entre regiões soberanas e públicas, pois isso requer a movimentação de backups LTR para a instância de destino, o que não é possível no momento.

Preparar os recursos

Crie um grupo de failover entre cada instância gerenciada de origem e a instância de destino correspondente da Instância Gerenciada de SQL.

A replicação de todos os bancos de dados em cada instância é iniciada automaticamente. Para obter mais informações, confira Grupos de failover.

Monitorar o processo de preparação

Você pode chamar Get-AzSqlDatabaseInstanceFailoverGroup periodicamente para monitorar a replicação dos bancos de dados da origem para a instância de destino. O objeto de saída de Get-AzSqlDatabaseInstanceFailoverGroup inclui uma propriedade para o Get-AzSqlDatabaseInstanceFailoverGroup:

  • ReplicationState = CATCH_UP indica que o banco de dados está sincronizado e o failover dele pode ser realizado com segurança.
  • ReplicationState = SEEDING indica que o banco de dados ainda não foi propagado e uma eventual tentativa de failover falhará.

Testar sincronização

Quando ReplicationState for CATCH_UP, conecte-se ao secundário da área geográfica usando o ponto de extremidade secundário <fog-name>.secondary.<zone_id>.database.windows.net e execute qualquer consulta nos bancos de dados para garantir a conectividade, a configuração de segurança adequada e a replicação de dados.

Inicie a movimentação

  1. Conecte-se à instância gerenciada de destino usando o ponto de extremidade secundário <fog-name>.secondary.<zone_id>.database.windows.net.
  2. Use Switch-AzSqlDatabaseInstanceFailoverGroup para mudar a instância gerenciada secundária para ser a primária com sincronização completa. Essa operação terá êxito ou será revertida.
  3. Verifique se o comando foi concluído com êxito usando nslook up <fog-name>.secondary.<zone_id>.database.windows.net para verificar se a entrada DNS CNAME aponta para o endereço IP da região de destino. Se o comando switch falhar, o CNAME não será atualizado.

Remover as instâncias gerenciadas de origem

Quando a movimentação for concluída, remova os recursos na região de origem para evitar encargos desnecessários.

  1. Exclua o grupo de failover usando Remove-AzSqlDatabaseInstanceFailoverGroup. Isso descartará a configuração do grupo de failover e encerrará os links de replicação geográfica entre as duas instâncias.
  2. Exclua a instância gerenciada de origem usando Remove-AzSqlInstance.
  3. Remova todos os recursos adicionais no grupo de recursos, como a rede virtual, a rede virtual e o grupo de segurança.