Tenho um cenário em que desejo criar um Grupo de Disponibilidade Distribuída (DAG) do SQL Server que se estende por dois Grupos de Disponibilidade (AGs) existentes que residem no mesmo conjunto de instâncias do SQL Server. Aqui está a configuração:
- Tenho um Grupo de Disponibilidade chamado "ag1" com duas réplicas: "instance1" e "instance2".
- Também tenho outro Grupo de Disponibilidade chamado "ag2" com as mesmas duas réplicas: "instance1" e "instance2".
Meu objetivo é criar um Grupo de Disponibilidade Distribuída chamado "distag1" que englobe "ag1" e "ag2". Segui a documentação e tentei criar "distag1" no primário global (a réplica primária de "ag1"). Foi criado com sucesso. No entanto, quando tentei ingressar na outra extremidade de "distag1" (a instância para a qual o ouvinte de ag2 aponta), encontrei o seguinte erro:
ALTER AVAILABILITY GROUP distag1
JOIN AVAILABILITY GROUP ON
N'ag1' WITH (
LISTENER_URL = N'TCP://ag1lsnr:5022',
FAILOVER_MODE = MANUAL,
AVAILABILITY_MODE = ASYNCHRONOUS_COMMIT,
SEEDING_MODE = MANUAL
),
N'ag2' WITH (
LISTENER_URL = N'TCP://ag2lsnr:5022',
FAILOVER_MODE = MANUAL,
AVAILABILITY_MODE = ASYNCHRONOUS_COMMIT,
SEEDING_MODE = MANUAL
);
Msg 19509, Level 16, State 0, Line 38
Cannot create a distributed availability group 'distag1'. An availability group with the same name already exists.
Minha pergunta é:
- Há suporte para criar um Grupo de Disponibilidade Distribuído em dois Grupos de Disponibilidade que residem no mesmo conjunto de instâncias do SQL Server?
- Se for compatível, o que pode estar causando a mensagem de erro que encontrei? Há algum requisito ou consideração específica que preciso levar em consideração ao criar um DAG neste cenário?
Eu apreciaria muito qualquer informação, esclarecimento ou orientação sobre este assunto. Agradeço antecipadamente por sua ajuda!
Não não é. Os Grupos de Disponibilidade Distribuídos foram criados para estender o uso de um Grupo de Disponibilidade além do limite de réplica e em espaços de Grupo de Disponibilidade desarticulados (por exemplo, em um cluster do Windows Server 2016 e um cluster do Windows Server 2022, o que normalmente não seria possível).
A tentativa de criar o AG Distribuído deve resultar no erro que você recebeu, pois tentará criar o AG Distribuído em todas as réplicas duas vezes (uma vez que são a origem e o destino), o que falhará porque já existe essa Disponibilidade Distribuída Grupo.