Partilhar via


Mover o Azure SQL Managed Instance entre sub-redes

Aplica-se a:Azure SQL Managed Instance

Este artigo explica como mover uma Instância Gerida Azure SQL de uma sub-rede para outra na mesma rede virtual ou numa rede virtual diferente. A operação é semelhante ao dimensionamento de vCores ou à alteração da camada de serviço da instância. Durante a mudança, a Instância Gerenciada SQL permanece disponível, exceto por um curto tempo de inatividade quando o failover acontece - normalmente com duração de até 10 segundos, mesmo que as transações de longa execução sejam interrompidas.

Mover a instância para outra sub-rede aciona as seguintes operações do cluster virtual:

  • O cluster virtual cria ou redimensiona a infraestrutura subjacente na sub-rede de destino.
  • O cluster virtual é removido ou desfragmentado na sub-rede de origem.

Requisitos e limitações

Deve implementar uma Instância Gerida SQL dentro de uma sub-rede dedicada dentro de uma rede virtual Azure. O tamanho da sub-rede (intervalo de sub-rede) determina quantas instâncias SQL geridas podes implementar dentro da sub-rede. Para implementar uma instância gerida SQL ou movê-la para outra sub-rede, a sub-rede de destino deve cumprir certos requisitos de rede.

Antes de mover sua instância para outra sub-rede, considere familiarizar-se com os seguintes conceitos:

Preparação da sub-rede

Antes de mover sua instância gerenciada SQL, confirme se a sub-rede está marcada como Pronto para Instância Gerenciada.

Na interface do usuário da rede virtual do portal do Azure, as redes virtuais que atendem aos pré-requisitos para uma instância gerenciada do SQL são categorizadas como Pronto para Instância Gerenciada. As redes virtuais que têm sub-redes com instâncias gerenciadas SQL já implantadas nelas exibem um ícone de Instância Gerenciada SQL antes do nome da rede virtual. As sub-redes vazias que estão prontas para uma instância gerenciada pelo SQL exibem um ícone de sub-rede de rede virtual.

As sub-redes marcadas como Não prontas não atendem a todos os requisitos para a implantação da Instância Gerenciada SQL. Para saber porque é que a sub-rede não está pronta e se ela cumpre os requisitos da rede, use o ícone de informação à direita do nome da subrede. Estes requisitos incluem:

  • delegar ao Microsoft.Sql/managedInstances provedor de recursos
  • anexando uma tabela de rotas
  • Anexando um grupo de segurança de rede

Se a sub-rede fizer parte de outra rede virtual, precisa de:

  • Emparelhamento bidirecional entre a rede virtual atual e a rede virtual de destino.
  • As sub-redes atual e de destino usam tabelas de rotas separadas e grupos de segurança de rede.

Depois de satisfazer estes requisitos, a sub-rede passa de Não Pronto para a categoria Pronto para Instância Gerida e pode ser usada para uma instância gerida SQL.

Sub-redes que já estão em uso (sub-redes usadas para implantações de exemplo não podem conter outros recursos) ou sub-redes que têm uma zona DNS diferente (uma limitação de movimentação de instância entre sub-redes) sempre fazem parte da categoria Não pronto .

Captura de ecrã das opções da subnet Azure SQL Managed Instance.

Dependendo do estado e da designação da sub-rede, os seguintes ajustes podem ser feitos na sub-rede de destino:

  • Pronto para Instância Gerida (contém uma Instância SQL Gerida existente)

    Não são feitos ajustes. Essas sub-redes já contêm instâncias gerenciadas pelo SQL, e fazer qualquer alteração na sub-rede pode afetar as instâncias existentes.

  • Pronto para a Instância Gerida (vazia)

    O fluxo de trabalho valida todas as regras necessárias no grupo de segurança de rede e na tabela de rotas, e adiciona quaisquer regras que sejam necessárias mas em falta. Regras personalizadas que adicionas à configuração da sub-rede de origem não são copiadas para a sub-rede de destino. Deve replicar manualmente qualquer personalização da configuração da sub-rede de origem para a sub-rede de destino. Uma forma de conseguir esta replicação é usando a mesma tabela de rotas e grupo de segurança de rede para a sub-rede de origem e destino.

Limitações da sub-rede de destino

Considere as seguintes limitações ao escolher uma sub-rede de destino para uma instância existente:

  • Pode mover uma Instância Gerida SQL para uma sub-rede que seja:

    • Na mesma rede virtual da rede atualmente utilizada, ou
    • Em uma rede virtual emparelhada, se estiver movendo para uma sub-rede em outra rede virtual.
  • A zona DNS das instâncias na sub-rede de destino deve corresponder à zona DNS da instância que está sendo movida. Essa limitação se aplica se você planeja mover para uma sub-rede não vazia.

    Podes preparar especialmente a sub-rede de destino para manter a zona DNS da instância gerida SQL que estás a mover. Prepare a sub-rede criando uma nova instância gerida SQL numa sub-rede vazia e fornecendo o dnsZonePartner parâmetro no pedido de criação. Este parâmetro, enquanto valor, aceita o ID da Instância Gerida SQL e, neste caso, pode usar a instância que mais tarde seria movida para a nova subrede.

    Para além desta abordagem, não há outra forma de ditar a zona DNS da Instância Gerida SQL, já que é gerada aleatoriamente. Atualmente, não há forma de atualizar a zona DNS de uma instância SQL gerida existente.

Se quiser migrar uma Instância Gerida SQL com um grupo de failover, aplicam-se os seguintes pré-requisitos:

  • A sub-rede de destino precisa ter as mesmas regras de segurança necessárias para a replicação do grupo de failover que a sub-rede de origem:

    Abra ambas as portas de entrada e saída 5022 e o intervalo 11000-11999 no Grupo de Segurança de Rede (NSG) para ligações a partir da outra sub-rede de instância gerida SQL (aquela que contém a réplica do grupo de failover) para permitir o tráfego de replicação entre as duas instâncias.

  • A sub-rede de destino não pode ter um intervalo de endereços em sobreposição com a sub-rede que contém a réplica da instância secundária do grupo de failover.

    Por exemplo, se MI1 estiver na sub-rede S1, a instância secundária no grupo de failover será MI2 na sub-rede S2. Queres mover o MI1 para a sub-rede S3. A sub-rede S3 não pode ter um intervalo de endereços sobreposto com a sub-rede S2.

Para saber mais sobre como configurar a rede para grupos de failover, consulte Habilitar replicação geográfica entre instâncias gerenciadas pelo SQL.

Etapas de operação

Mover uma instância de uma sub-rede para outra envolve muitos passos. Dependendo de como a sua instância gerida SQL está configurada, a operação de transferência pode demorar entre 30 minutos e 6 horas.

A tabela a seguir detalha as etapas de operação que ocorrem durante a operação de movimentação de instância:

Nome do passo Descrição do passo
Validação do pedido Valida os parâmetros enviados. Se uma configuração incorreta for detetada, a operação falhará com um erro.
Redimensionamento ou criação de clusters virtuais Dependendo do estado da sub-rede de destino, o cluster virtual é criado ou redimensionado.
Inicialização de nova instância O processo SQL é iniciado no cluster virtual implantado na sub-rede de destino.
Semear ficheiros de base de dados ou anexar ficheiros de base de dados Dependendo da camada de serviço, o banco de dados é inicializado ou os arquivos de banco de dados são anexados.
Preparando o failover e recuperação Depois que os dados são propagados ou os arquivos de banco de dados são reanexados, o sistema se prepara para failover. Quando tudo está pronto, o sistema executa um failover com um curto tempo de inatividade, que normalmente é inferior a 10 segundos.
Limpeza de instância SQL antiga Remove o processo SQL antigo do cluster virtual de origem.
Exclusão de cluster virtual Se for a última instância dentro da sub-rede de origem, a etapa final excluirá o cluster virtual de forma síncrona. Caso contrário, o cluster virtual será desfragmentado de forma assíncrona.

Para uma explicação detalhada dos passos operacionais, veja Duração das operações de gestão no Azure SQL Managed Instance.

Mover a instância

Uma movimentação de instância entre sub-redes faz parte da operação de atualização da instância. A API de atualização de instância existente, o Azure PowerShell e os comandos da CLI do Azure são aprimorados com uma propriedade de ID de sub-rede.

No portal do Azure, use o campo sub-rede no painel Rede para mover a instância para a sub-rede de destino. Ao usar o Azure PowerShell ou a CLI do Azure, forneça uma ID de sub-rede diferente no comando update para mover a instância de uma sub-rede existente para a sub-rede de destino.

Para uma referência completa dos comandos de gestão de instâncias, consulte Managed API reference for Azure SQL Managed Instance.

Pode escolher a sub-rede de instâncias no painel de Rede do portal Azure. Depois de selecionares uma sub-rede e guardares as alterações, começa a operação de mudança de instância.

A operação de transferência prepara primeiro a sub-rede de destino para a implantação, o que pode demorar vários minutos. Depois de a sub-rede estar pronta, a operação de gestão de movimentos de instância começa e aparece no portal Azure.

Captura de ecrã de Como selecionar a sub-rede no painel de rede da Instância Gerida SQL.

Pode monitorizar as operações de movimentação de instâncias a partir do painel de Visão Geral do portal Azure. Selecione a notificação para abrir outro painel que contenha informações sobre o passo atual, o total de passos e um botão para cancelar a operação.

A captura de tela mostra a página Visão geral onde você pode monitorar a operação de movimentação e cancelá-la.