Estou migrando do espelhamento para AGs no SQL Server 2014/Windows 2012 R2. Eu vou ter um cluster de 2 nós. Eu preciso que este cluster esteja online o tempo todo para um ambiente de produção.
Estou lendo a documentação da Microsoft para grupos de disponibilidade, mas não consigo encontrar nada ao longo das linhas de "Práticas recomendadas" para ter um AG/WSFC de 2 nós, exceto que não ter uma testemunha NÃO é "Prática recomendada". Estou simplesmente explodindo de perguntas.
Se eu implementar uma testemunha de compartilhamento de arquivos
Qual é o melhor lugar para colocar minha testemunha (compartilhamento de arquivos)? Colocá-lo em um DC é uma boa ideia ou um risco de segurança?
Por que tem que ser o Windows Server em vez de (digamos) um linux/NAS?
Como faço para impedir que alguém simplesmente exclua o compartilhamento de arquivos porque não sabe o que é ou para que serve, sem bloquear a mim mesmo/todos os administradores de sistema?
Se eu não implementar uma testemunha de compartilhamento de arquivos
Eu poderia apenas remover o quorum dinâmico e excluir completamente a testemunha? É mesmo possível?
É melhor apenas adicionar outro nó SQL ao meu cluster, se eu tiver um, para atuar como terceiro votante, mas não incluir nenhum de seus bancos de dados? É talvez mais durável?
Em um Grupo de Disponibilidade de 2 nós (ou espelho), um 3º nó é importante se você quiser HA automático. Se o seu secundário não puder se conectar ao primário, o secundário precisa descobrir se pode ficar online como o primário ou se o erro está realmente no secundário. Sem um terceiro, isso é impossível.
A Testemunha de Compartilhamento de Arquivos será mais simples do que adicionar outro nó do Windows apenas para funcionar como testemunha. Pode ser em qualquer lugar, o importante é que ambos os nós poderão ver a testemunha se o outro nó ficar offline. Você pode precisar pensar muito se tiver um ambiente virtual, você precisa considerar se o nó físico ficar offline, seu compartilhamento de arquivos ainda estará disponível.
Considerações adicionais para vários data centers
Se os 2 nós estiverem em datacenters diferentes (você mencionou DR, suponho), ter um compartilhamento de arquivos na nuvem pode ser útil (você pode usar o Armazenamento de Blobs do Azure como testemunha). Isso significa que, se um de seus datacenters primários ficar offline, o SQL fará failover automaticamente para o secundário. Se você hospedar o compartilhamento de arquivos em seu secundário e o secundário ficar offline, seu servidor primário também ficará offline (não é possível entrar em contato com o secundário ou o compartilhamento de arquivos, portanto, suponha que não seja mais primário).