Configurar um grupo de failover para Banco de Dados SQL do Azure

Aplica-se a: Banco de Dados SQL do Azure

Este artigo ensina como configurar um grupo de failover para bancos de dados em pool ou individuais no Banco de Dados SQL do Azure ao usar o portal do Azure, o Azure PowerShell e a CLI do Azure.

Para scripts de ponta a ponta, examine como adicionar um único banco de dados a um grupo de failover com o Azure PowerShell ou a CLI do Azure.

Pré-requisitos

Considere os seguintes pré-requisitos para criar seu grupo de failover para um banco de dados individual:

  • Seu banco de dados primário já deve ter sido criado. Crie um banco de dados individual para começar.
  • Se o servidor secundário já existir em uma região diferente do servidor primário, as configurações de logon e firewall do servidor deverão corresponder às do servidor primário.

Criar grupo de failover

É possível criar o grupo de failover e adicionar um banco de dados individual a ele usando o portal do Azure, o PowerShell e a CLI do Azure.

Importante

Se for necessário excluir um banco de dados secundário depois que ele foi adicionado a um grupo de failover, remova-o do grupo de failover antes de excluir o banco de dados. A exclusão de um banco de dados secundário antes da remoção dele do grupo de failover pode causar um comportamento imprevisível.

Para criar o grupo de failover e adicionar o banco de dados individual a ele usando o portal do Azure, siga estas etapas:

  1. Se você souber o servidor lógico que hospeda seu banco de dados, vá diretamente a ele no portal do Azure. Se precisar localizar o servidor, siga estas etapas:

    1. Selecione SQL do Azure no menu de serviço. Se SQL do Azure não estiver na lista, selecione Todos os serviços e digite Azure SQL na caixa de pesquisa. (Opcional) Selecione a estrela ao lado de SQL do Azure para marcá-lo como favorito e adicioná-lo como um item no menu de serviço.
    2. Na página SQL do Azure, localize o banco de dados que você deseja adicionar a um grupo de failover e selecione-o para abrir o painel do banco de dados SQL.
    3. No painel Visão Geral do banco de dados SQL, escolha o nome do servidor em Nome do servidor para abrir o painel do SQL Server.

    Captura de tela para abrir o servidor para um banco de dados individual no portal do Azure.

  2. No menu de recursos do SQL Server, selecione Grupos de failover em Gerenciamento de dados. Selecione + Adicionar grupo para abrir a página Grupo de failover onde você pode criar um novo grupo de failover.

    Captura de tela realçando a opção Adicionar novo grupo de failover na página de grupos de failover no portal do Azure.

  3. Na página Grupo de failover:

    1. Forneça um Nome de grupo de Failover.
    2. Escolha um servidor secundário existente ou crie um novo servidor selecionando Criar novo em Servidor. O servidor secundário no grupo de failover precisa ser configurado em uma região diferente do servidor primário.
    3. Selecione Configurar banco de dados para abrir a página Bancos de dados para grupo de failover.

    Captura de tela do painel de grupo de failover no portal do Azure.

  4. Na página Bancos de dados para grupo de failover:

    1. Selecione os bancos de dados que você deseja adicionar ao grupo de failover (o primeiro na captura de tela).
    2. (Opcional) Escolha Sim se você pretende designar esses bancos de dados como réplicas em espera a serem usadas apenas para recuperação de desastres (o segundo na captura de tela). Marque a caixa para confirmar que você usará a réplica como em espera.
    3. Use Selecionar para salvar a seleção do banco de dados e voltar para a página Grupo de failover (não visível na captura de tela).

    Captura de tela dos bancos de dados para o painel de grupo de failover no portal do Azure.

  5. Use Criar na página Grupo de failover para criar seu grupo de failover.

Teste o failover planejado

Teste o failover do grupo de failover sem perda de dados usando o portal do Azure ou o PowerShell.

Para testar o failover do grupo de failover usando o portal do Azure, siga estas etapas:

  1. Se você souber o servidor lógico que hospeda seu banco de dados, vá diretamente a ele no portal do Azure. Se precisar localizar o servidor, siga estas etapas:

    1. Selecione SQL do Azure no menu de serviço. Se SQL do Azure não estiver na lista, selecione Todos os serviços e digite Azure SQL na caixa de pesquisa. (Opcional) Selecione a estrela ao lado de SQL do Azure para marcá-lo como favorito e adicioná-lo como um item no menu de serviço.
    2. Na página SQL do Azure, localize o banco de dados para o qual deseja testar o failover e selecione-o para abrir o painel do banco de dados SQL.
    3. No painel Visão Geral do banco de dados SQL, escolha o nome do servidor em Nome do servidor para abrir o painel do SQL Server.

    Captura de tela para abrir o servidor para um banco de dados individual no portal do Azure.

  2. No menu de recursos do SQL Server, selecione Grupos de failover em Gerenciamento de dados e escolha um grupo de failover existente para abrir a página Grupo de failover.

    A captura de tela mostra Grupos de failover onde você pode selecionar um grupo de failover para o seu SQL Server.

  3. Na página Grupo de failover:

    1. Examine qual servidor é primário e qual é secundário.
    2. Selecione Failover na barra de comando para fazer failover do grupo de failover que contém o banco de dados.
    3. Selecione Sim no aviso que notifica você de que as sessões do TDS serão desconectadas.

    Captura de tela da página do grupo de failover no portal do Azure com failover selecionado.

  4. Examine qual servidor agora é primário e qual é secundário. Quando o failover for bem-sucedido, os dois servidores trocarão de função, de modo que o antigo primário se torne o secundário.

  5. (Opcional) Selecione Failover novamente para faça failover os servidores às funções originais.

Para scripts de ponta a ponta, examine como adicionar um pool elástico a um grupo de failover com o Azure PowerShell ou a CLI do Azure.

Pré-requisitos

Considere os seguintes pré-requisitos para criar seu grupo de failover para um banco de dados em pool:

  • Seu pool elástico primário já deve existir. Crie um pool elástico para começar.
  • Se o servidor secundário já existir, as configurações de logon e firewall do servidor precisam corresponder àquelas do servidor primário.

Criar grupo de failover

Crie o grupo de failover para o pool elástico usando o portal do Azure, o PowerShell ou a CLI do Azure.

Importante

Se for necessário excluir um banco de dados secundário depois que ele foi adicionado a um grupo de failover, remova-o do grupo de failover antes de excluir o banco de dados. A exclusão de um banco de dados secundário antes da remoção dele do grupo de failover pode causar um comportamento imprevisível.

Para criar o grupo de failover e adicionar o pool elástico a ele usando o portal do Azure, siga estas etapas:

  1. Vá para a página Criar pool elástico do SQL no portal do Azure. Crie um pool elástico que:

    • Tenha o mesmo nome que o pool elástico no servidor primário.
    • Use um servidor secundário que você pretende usar para o grupo de failover. O servidor secundário deve estar em uma região diferente do servidor primário e as configurações de logon e firewall do servidor devem corresponder às do servidor primário. Crie um novo servidor se o servidor secundário ainda não existir.
  2. Se você souber o servidor lógico que hospeda seu pool elástico primário, vá diretamente para ele no portal do Azure. Se precisar localizar o servidor, siga estas etapas:

    1. Selecione SQL do Azure no menu de serviço. Se SQL do Azure não estiver na lista, selecione Todos os serviços e digite Azure SQL na caixa de pesquisa. (Opcional) Selecione a estrela ao lado de SQL do Azure para marcá-lo como favorito e adicioná-lo como um item no menu de serviço.
    2. Na página SQL do Azure, localize o pool elástico que você deseja adicionar ao grupo de failover e selecione-o para abrir o painel do pool elástico do SQL.
    3. No painel Visão Geral do pool elástico do SQL, escolha o nome do servidor em Nome do servidor para abrir o painel do SQL Server.

    Captura de tela da página selecionando o nome do servidor do pool elástico no portal do Azure.

  3. No menu de recursos do SQL Server, selecione Grupos de failover em Gerenciamento de dados. Selecione + Adicionar grupo para abrir a página Grupo de failover onde você pode criar um novo grupo de failover.

    Captura de tela da página de grupos de failover no portal do Azure.

  4. Na página Grupo de failover:

    1. Forneça um Nome de grupo de Failover.
    2. Escolha um servidor secundário existente. O servidor secundário no grupo de failover precisa ser configurado em uma região diferente do servidor primário e conter um pool elástico com o mesmo nome do servidor primário.
    3. Selecione Configurar banco de dados para abrir a página Bancos de dados para grupo de failover.

    Captura de tela para adicionar o pool elástico ao grupo de failover no portal do Azure.

  5. Na página Bancos de dados para grupo de failover, escolha os bancos de dados em pool que você deseja adicionar ao grupo de failover. Use Selecionar para salvar sua seleção de banco de dados e voltar para a página Grupo de failover.

    Captura de tela dos bancos de dados para o painel de grupo de failover no portal do Azure.

  6. Escolha Criar na página Grupo de failover para criar seu grupo de failover. A adição do pool elástico ao grupo de failover inicia automaticamente o processo de replicação geográfica.

Teste o failover planejado

Teste o failover do pool elástico sem perda de dados usando o portal do Azure, o PowerShell ou a CLI do Azure.

Faça failover do grupo de failover para o servidor secundário e faça failback dele usando o portal do Azure.

  1. Se você souber o servidor lógico que hospeda seu pool elástico primário, vá diretamente para ele no portal do Azure. Se precisar localizar o servidor, siga estas etapas:

    1. Selecione SQL do Azure no menu de serviço. Se SQL do Azure não estiver na lista, selecione Todos os serviços e digite Azure SQL na caixa de pesquisa. (Opcional) Selecione a estrela ao lado de SQL do Azure para marcá-lo como favorito e adicioná-lo como um item no menu de serviço.
    2. Na página SQL do Azure, localize o pool elástico que você deseja adicionar ao grupo de failover e selecione-o para abrir o painel do pool elástico do SQL.
    3. No painel Visão Geral do pool elástico do SQL, escolha o nome do servidor em Nome do servidor para abrir o painel do SQL Server.

    Captura de tela da página selecionando o nome do servidor do pool elástico no portal do Azure.

  2. No menu de recursos do SQL Server, selecione Grupos de failover em Gerenciamento de dados e escolha um grupo de failover existente para abrir a página Grupo de failover.

    A captura de tela mostra Grupos de failover onde você pode selecionar um grupo de failover para o seu SQL Server.

  3. Na página Grupo de failover:

    1. Examine qual servidor é primário e qual é secundário.
    2. Selecione Failover na barra de comando para fazer failover do grupo de failover que contém o banco de dados.
    3. Selecione Sim no aviso que notifica você de que as sessões do TDS serão desconectadas.

    Captura de tela da seleção de failover na página de Grupos de failover no portal do Azure.

  4. Examine qual servidor agora é primário e qual é secundário. Quando o failover for bem-sucedido, os dois servidores trocarão de função, de modo que o antigo primário se torne o secundário.

  5. (Opcional) Selecione Failover novamente para faça failover os servidores às funções originais.

Modificar grupo de failover existente

Você pode adicionar ou remover bancos de dados de um grupo de failover existente ou editar as definições de configuração do grupo de failover usando o portal do Azure, o PowerShell e a CLI do Azure.

Para fazer alterações em um grupo de failover existente usando o portal do Azure, siga estas etapas:

  1. Se você souber o servidor lógico que hospeda seu banco de dados ou pool elástico, vá diretamente a ele no portal do Azure. Se precisar localizar o servidor, siga estas etapas:

    1. Selecione SQL do Azure no menu de serviço. Se SQL do Azure não estiver na lista, selecione Todos os serviços e digite Azure SQL na caixa de pesquisa. (Opcional) Selecione a estrela ao lado de SQL do Azure para marcá-lo como favorito e adicioná-lo como um item no menu de serviço.
    2. Na página SQL do Azure, localize o banco de dados ou o pool elástico que você deseja modificar e selecione-o para abrir o banco de dados SQL ou o painel do pool elástico do SQL.
    3. No painel Visão geral do banco de dados SQL ou do pool elástico do SQL, selecione o nome do servidor em Nome do servidor para abrir o painel do SQL Server.
  2. No menu de recursos do SQL Server, selecione Grupos de failover em Gerenciamento de dados e escolha um grupo de failover existente para abrir a página Grupo de failover.

    A captura de tela mostra Grupos de failover onde você pode selecionar um grupo de failover para o seu SQL Server.

  3. Na página Grupo de failover, use a barra de comandos:

    1. Para adicionar um banco de dados, selecione Adicionar bancos de dados para abrir o painel Adicionar bancos de dados ao grupo de failover e expanda #Databases para exibir a lista de bancos de dados no servidor primário. Marque a caixa ao lado do(s) banco(s) de dados que você deseja adicionar ao grupo de failover e use Selecionar para salvar suas alterações e adicionar seu(s) banco(s) de dados.
    2. Para remover um banco de dados, selecione Remover bancos de dados para abrir o painel Remover bancos de dados do grupo de failover e expanda #Databases para listar os bancos de dados no grupo de failover. Marque a caixa ao lado do(s) banco(s) de dados que você deseja remover do grupo de failover e use Selecionar para salvar as alterações e remover o(s) banco(s) de dados.
    3. Para editar a política de failover ou configurar um período de carência, selecione Editar configuração para abrir o painel Editar grupos de failover de configurações e modificar suas configurações. Use Selecionar para salvar as alterações.

    Captura de tela da página do grupo de failover no portal do Azure com a barra de comandos realçada.

O uso de um link privado permite associar um servidor lógico a um endereço IP privado específico dentro da rede virtual e da sub-rede.

Para usar um link privado com o grupo de failover, faça o seguinte:

  1. Verifique se os servidores primários e secundários estão em uma região emparelhada.
  2. Crie a rede virtual e a sub-rede em cada região para hospedar pontos de extremidade privados para servidores primários e secundários, de forma que eles tenham espaços de endereço IP não sobrepostos. Por exemplo, o intervalo de endereços de rede virtual primária de 10.0.0.0/16 e o intervalo de endereços de rede virtual secundário de 10.0.0.1/16 se sobrepõem. Para saber mais sobre intervalos de endereços de rede virtual, confira o blog Projetar redes virtuais do Azure.
  3. Crie um ponto de extremidade privado e uma Zona DNS Privado do Azure para o servidor primário.
  4. Crie um ponto de extremidade privado para o servidor secundário também, mas, desta vez, escolha reutilizar a mesma zona DNS Privado que foi criada para o servidor primário.
  5. Depois que o link privado for estabelecido, você poderá criar o grupo de failover seguindo as etapas descritas anteriormente neste artigo.

Localizar ponto de extremidade do ouvinte

Após configurar o grupo de failover, faça a atualização da cadeia de conexão do seu aplicativo para direcionar para o ponto de extremidade de leitura/gravação do ouvinte, garantindo que o aplicativo continue em conexão com o banco de dados primário após um evento de failover. Ao usar o ponto de extremidade do ouvinte, você não precisa atualizar a cadeia de conexão de forma manual toda vez que o grupo de failover fizer failover, já que o tráfego é sempre encaminhado para o grupo primário atual. Além disso, é possível direcionar uma carga de trabalho somente leitura para o ponto de extremidade de somente leitura do ouvinte.

Para localizar o ponto de extremidade do ouvinte no portal do Azure, acesse o servidor lógico no portal do Azure e, em Gerenciamento de dados, selecione Grupos de failover. Escolha o grupo de failover que você tem interesse.

Role a página para baixo para encontrar os pontos de extremidade do ouvinte:

  • O ponto de extremidade de leitura/gravação do ouvinte, no formato fog-name.database.windows.net, encaminha o tráfego para o banco de dados primário.
  • O ponto de extremidade de somente leitura do ouvinte, no formato fog-name.secondary.database.windows.net, encaminha o tráfego para o banco de dados secundário.

Captura de tela mostrando a cadeia de conexão do grupo de failover na página Grupos de failover no portal do Azure.

Escalar bancos de dados a um grupo de failover

É possível escalar ou reduzir verticalmente o banco de dados primário para um tamanho de computação diferente (na mesma camada de serviço) sem desconectar nenhum banco de dados secundário. Ao escalar verticalmente, recomenda-se fazê-lo primeiro no secundário geográfico e, em seguida, no primário. Ao reduzir verticalmente, faça o oposto: primeiro reduza o primário e, em seguida, o secundário. Essa recomendação é aplicada quando o banco de dados é escalado para uma camada de serviço diferente.

Essa sequência é recomendada especificamente para evitar o problema de o banco de dados em área geográfica secundária com uma SKU inferior ter sobrecarga e precisar ser propagado novamente durante um processo de atualização ou de downgrade. Você também pode evitar o problema tornando o primário somente leitura, em detrimento de afetar todas as cargas de trabalho de leitura/gravação em relação ao primário.

Observação

Se você criou um secundário geográfico como parte da configuração do grupo de failover, não é recomendado reduzi-lo verticalmente. Isso garante que sua camada de dados tenha capacidade suficiente para processar sua carga de trabalho normal após o failover geográfico. Talvez você não consiga dimensionar uma área geográfica secundária após um failover não planejado quando a antiga área geográfica primária estiver indisponível devido à interrupção. Essa é uma limitação conhecida.

O banco de dados primário em um grupo de failover não pode ser dimensionado para uma camada de serviço superior (edição), a menos que o secundário seja dimensionado primeiro para ela. Por exemplo, para escalar verticalmente o primário de Uso Geral para Comercialmente Crítico, você precisa primeiro dimensionar o secundário geográfico para Comercialmente Crítico. Se você tentar dimensionar o primário ou o secundário geográfico de maneira que viole essa regra, receberá o seguinte erro:

The source database 'Primaryserver.DBName' cannot have higher edition than the target database 'Secondaryserver.DBName'. Upgrade the edition on the target before upgrading the source.

Evitar a perda de dados críticos

Devido à alta latência das redes de longa distância, a replicação geográfica usa um mecanismo de replicação assíncrona. Com a replicação assíncrona, é impossível evitar a perda de dados em caso de falha no primário. Para proteger as transações críticas contra a perda de dados, um desenvolvedor de aplicativos pode chamar o procedimento armazenado sp_wait_for_database_copy_sync imediatamente após a confirmação da transação. Chamar sp_wait_for_database_copy_sync bloqueia o thread de chamada até que a última transação confirmada seja transmitida e persistida no log de transações do banco de dados secundário. Contudo, a chamada não aguarda a reprodução (confirmação) das transações transmitidas no secundário. sp_wait_for_database_copy_sync tem escopo para um link de replicação geográfica específico. Qualquer usuário com os direitos de conexão para o banco de dados primário pode chamar este procedimento.

Observação

sp_wait_for_database_copy_sync impede a perda de dados após o failover geográfico para transações específicas, mas não garante a sincronização completa para acesso de leitura. A demora causada por uma chamada de procedimento sp_wait_for_database_copy_sync pode ser significativa e depende do tamanho, no momento da chamada, do log de transações ainda não transmitido no primário.

Alterar a região secundária

Para ilustrar a sequência de alteração, vamos pressupor que o servidor A é o servidor primário, o servidor B é o servidor secundário existente e o servidor C é o novo secundário na terceira região. Para fazer a transição, siga estas etapas:

  1. Crie secundários adicionais de cada banco de dados no servidor A para o servidor C usando a replicação geográfica ativa. Cada banco de dados no servidor A terá dois secundários, um no servidor B e outro no servidor C. Isso garante que os bancos de dados primários permaneçam protegidos durante a transição.
  2. Exclua o grupo de failover. Neste ponto, as tentativas de iniciar sessão usando pontos de extremidade do grupo de failover vão começar a falhar.
  3. Crie novamente o grupo de failover com o mesmo nome entre os servidores A e C.
  4. Adicione todos os bancos de dados primários do servidor A ao novo grupo de failover. Tentativas de iniciar sessão deixarão de falhar neste ponto.
  5. Exclua o servidor B. Todos os bancos de dados no B serão excluídos automaticamente.

Alterar a região primária

Para ilustrar a sequência de alteração, vamos pressupor que o servidor A é o servidor primário, o servidor B é o servidor secundário existente e o servidor C é o novo primário na terceira região. Para fazer a transição, siga estas etapas:

  1. Execute um failover geográfico planejado a fim de alternar o servidor primário para B. O servidor A se tornará o novo servidor secundário. O failover pode resultar em vários minutos de tempo de inatividade. O tempo real dependerá do tamanho do grupo de failover.
  2. Crie secundários adicionais de cada banco de dados no servidor B para o servidor C usando a replicação geográfica ativa. Cada banco de dados no servidor B terá dois secundários, um no servidor A e outro no servidor C. Isso garante que os bancos de dados primários permaneçam protegidos durante a transição.
  3. Exclua o grupo de failover. Neste ponto, as tentativas de iniciar sessão usando pontos de extremidade do grupo de failover vão começar a falhar.
  4. Crie novamente o grupo de failover com o mesmo nome entre os servidores B e C.
  5. Adicione todos os bancos de dados primários do B ao novo grupo de failover. Tentativas de logon deixarão de falhar neste ponto.
  6. Execute um failover geográfico planejado do grupo de failover para alternar de B para C. Agora, o servidor C se tornará o primário e B será o secundário. Todos os bancos de dados secundários no servidor A serão vinculados automaticamente aos primários em C. Como na etapa 1, o failover pode resultar em vários minutos de inatividade.
  7. Exclua o servidor A. Todos os bancos de dados em A serão excluídos automaticamente.

Importante

Quando o grupo de failover é excluído, os registros DNS dos pontos de extremidade do ouvinte também são excluídos. Nesse ponto, não existe probabilidade de outra pessoa criar um grupo de failover ou um alias de DNS do servidor com o mesmo nome. Como os nomes do grupo de failover e os aliases do DNS devem ser globalmente exclusivos, isso impedirá que você use o mesmo nome novamente. Para minimizar esse risco, não use nomes genéricos em grupos de failover.

Grupos de failover e a segurança de rede

Em alguns aplicativos, as regras de segurança exigem que o acesso da rede à camada de dados seja restrito a componentes específicos, como uma VM, um serviço Web etc. Esse requisito apresenta alguns desafios para o design de continuidade dos negócios e o uso de grupos de failover. Considere as opções a seguir ao implementar tal acesso restrito.

Usar grupos de failover e pontos de extremidade de serviço de rede virtual

Se você está usando Pontos de extremidade e regras de serviço de Rede Virtual para restringir o acesso ao seu banco de dados, lembre-se de que cada ponto de extremidade de serviço de Rede Virtual se aplica a apenas uma região do Azure. O ponto de extremidade não permite que outras regiões aceitem a comunicação da sub-rede. Portanto, apenas os aplicativos implantados na mesma região do cliente podem se conectar ao banco de dados primário. Como um failover geográfico resulta no redirecionamento de sessões de cliente do Banco de Dados SQL para um servidor em uma região diferente (secundária), essas sessões poderão falhar se forem originadas em um cliente fora dessa região. Por esse motivo, a política de failover gerenciada pela Microsoft não poderá ser habilitada se os servidores participantes estiverem incluídos nas regras da Rede Virtual. Para dar suporte à política de failover manual, siga estas etapas:

  1. Provisione as cópias redundantes dos componentes frontend do seu aplicativo (serviço Web, máquinas virtuais etc.) na região secundária.
  2. Configurar as regras da rede virtual individualmente para os servidores primário e secundário.
  3. Habilite o failover frontend usando uma Configuração do gerenciador de tráfego.
  4. Inicie um failover geográfico manual quando a interrupção for detectada. Essa opção é otimizada para os aplicativos que precisam de latência consistente entre o frontend e a camada de dados e oferece suporte à recuperação quando o frontend, a camada de dados ou ambos são afetados pela interrupção.

Observação

Se você estiver usando o ouvinte somente leitura para balanceamento de uma carga de trabalho somente leitura, essa carga de trabalho deverá ser executada em uma VM ou outro recurso na região secundária para que possa se conectar ao banco de dados secundário.

Usar grupos de failover e regras de firewall

Se o seu plano de continuidade dos negócios exigir failover usando grupos de failover, você poderá restringir o acesso ao seu banco de dados no Banco de Dados SQL usando as regras de firewall de IP público. Essa configuração garantirá que um failover geográfico não bloqueie conexões dos componentes de frontend e pressupõe que o aplicativo pode tolerar a latência mais longa entre o frontend e a camada de dados.

Para dar suporte a um failover do grupo de failover, siga estas etapas:

  1. Criar um IP público.
  2. Crie um balanceador de carga público e atribua o IP público a ele.
  3. Crie uma rede virtual e as máquinas virtuais para os componentes de front-end.
  4. Crie um grupo de segurança de rede e configure conexões de entrada.
  5. Verifique se as conexões de saída estão abertas para o Banco de Dados SQL do Azure em uma região usando uma Sql.<Region> marca de serviço.
  6. Crie uma regra de firewall de Banco de Dados SQL para permitir o tráfego de entrada do endereço IP público criado na etapa 1.

Para obter mais informações de como configurar o acesso de saída e qual IP usar nas regras de firewall, confira Conexões de saída do balanceador de carga.

Importante

Para garantir a continuidade dos negócios durante interrupções regionais, garanta redundância geográfica para bancos de dados e componentes de frontend.

Permissões

As permissões para um grupo de failover são gerenciadas por meio do RBAC (controle de acesso baseado em função) do Azure.

O acesso de gravação do RBAC do Azure é necessário para criar e gerenciar grupos de failover. A função de Colaborador do SQL Server tem todas as permissões necessárias para gerenciar grupos de failover.

A tabela a seguir lista escopos de permissão específicos para o Banco de Dados SQL do Azure:

Ação Permissão Escopo
Criar grupo de failover Acesso de gravação do RBAC do Azure Servidor primário
Servidor secundário
Todos os bancos de dados no grupo de failover
Atualizar grupo de failover Acesso de gravação do RBAC do Azure Grupo de failover
Todos os bancos de dados no servidor primário atual
Fazer failover de grupo de failover Acesso de gravação do RBAC do Azure Grupo de failover no novo servidor

Limitações

Esteja ciente das seguintes limitações:

  • Os grupos de failover não podem ser criados entre dois servidores na mesma região do Azure.
  • Os grupos de failover dão suporte à duplicação geográfica de todos os bancos de dados no grupo para apenas um servidor lógico secundário em uma região diferente.
  • Os grupos de failover não podem ser renomeados. Será necessário excluir o grupo e recriá-lo com outro nome.
  • Não há suporte para renomeação de banco de dados em banco de dados em um grupo de failover. Você precisará excluir temporariamente o grupo de failover para poder renomear um banco de dados ou remover o banco de dados do grupo de failover.
  • A remoção de um grupo de failover para um banco de dados único ou em pool não interrompe a replicação e não exclui o banco de dados replicado. Será necessário interromper manualmente a duplicação geográfica e excluir o banco de dados no servidor secundário, caso você queira adicionar um banco de dados individual ou em pool novamente a um grupo de failover após sua remoção. Deixar de fazer isso poderá resultar em um erro semelhante ao The operation cannot be performed due to multiple errors na tentativa de adicionar o banco de dados ao grupo de failover.
  • O nome do grupo de failover está sujeito a restrições de nomenclatura.
  • Ao criar um novo grupo de failover ou ao adicionar bancos de dados a um grupo de failover existente, você pode designar os bancos de dados como réplicas em espera ao usar o portal do Azure — o Azure PowerShell e a CLI do Azure não estão disponíveis no momento.

Gerenciar programaticamente grupos de failover

Os grupos de failover também podem ser gerenciados programaticamente usando o Azure PowerShell, a CLI do Azure e a API REST. As tabelas a seguir descrevem o conjunto de comandos disponíveis. Os grupos de failover incluem um conjunto de APIs do Azure Resource Manager para gerenciamento, incluindo a API REST do Banco de Dados SQL do Azure e cmdlets do Azure PowerShell. Essas APIs exigem o uso de grupos de recursos e dão suporte ao RBAC do Azure (controle de acesso baseado em função do Azure). Para obter mais informações sobre como implementar funções de acesso, confira RBAC (controle de acesso baseado em função) do Azure.

Cmdlet Descrição
New-AzSqlDatabaseFailoverGroup Esse comando cria um grupo de failover e registra-o nos servidores primário e secundário
Add-AzSqlDatabaseToFailoverGroup Adiciona um ou mais bancos de dados a um grupo de failover
Remove-AzSqlDatabaseFromFailoverGroup Remove um ou mais bancos de dados de um grupo de failover
Remove-AzSqlDatabaseFailoverGroup Remove o grupo de failover do servidor
Get-AzSqlDatabaseFailoverGroup Recupera a configuração de um grupo de failover
Set-AzSqlDatabaseFailoverGroup Modifica a configuração de um grupo de failover
Switch-AzSqlDatabaseFailoverGroup Dispara o failover de um grupo de failover para o servidor secundário

Observação

É possível implantar seu grupo de failover em assinaturas usando o parâmetro -PartnerSubscriptionId no Azure Powershell começando com Az.SQL 3.11.0. Para saber mais, revise o exemplo a seguir.