No contexto de um Grupo de Disponibilidade do SQL Server, qual é a melhor maneira de monitorar uma testemunha de compartilhamento de arquivos para acessibilidade?
Quero garantir que a testemunha possa ser acessada pelas réplicas do Grupo de Disponibilidade, o que é algo diferente de apenas estar disponível. Por exemplo, a conta usada para executar o SQL Server precisa de direitos de acesso ao compartilhamento de arquivos.
Edit: Recentemente notei alguns eventos registrados pelo cluster dignos de serem monitorados.
Log Name: System
Source: Microsoft-Windows-FailoverClustering
Date: 6/1/2019 1:23:09 PM
Event ID: 1564
Task Category: File Share Witness Resource
Level: Critical
Keywords:
User: SYSTEM
Computer: node1.contoso.com
Description:
File share witness resource 'File Share Witness' failed to arbitrate for
the file share '\\servername\sharename'. Please ensure that file share
'\\servername\sharename' exists and is accessible by the cluster.
Log Name: System
Source: Microsoft-Windows-FailoverClustering
Date: 6/1/2019 1:23:08 PM
Event ID: 1562
Task Category: File Share Witness Resource
Level: Warning
Keywords:
User: SYSTEM
Computer: node1.contoso.com
Description:
File share witness resource 'File Share Witness' failed a periodic health
check on file share '\\servername\sharename'. Please ensure that file
share '\\servername\sharename' exists and is accessible by the cluster.
A testemunha de compartilhamento de arquivos não precisa ser acessível pela conta de serviço do SQL Server. O FSW é usado pelo cluster de cluster de failover do Windows Server para atingir um quorum e evitar cenários de divisão de cérebros. A conta da máquina do cluster é o principal do AD que precisa de acesso ao FSW e, se não tiver acesso, você não poderá configurá-lo como testemunha em seu cluster.
Do ponto de vista do Grupo de Disponibilidade, ele não se importa com o acesso ao FSW. O cluster se preocupa com isso e, quando falha (e o quorum é perdido), sinaliza ao AG para desligar para evitar o cérebro dividido. O AG se preocupa apenas com as verificações de integridade específicas do SQL Server (latência, conectividade com réplicas, etc.) e os sinais recebidos do cluster WSFC em relação à integridade do cluster.
Se o CNO do cluster perder os direitos ao compartilhamento do FSW, esse recurso ficará offline no cluster. Isso não acionará necessariamente nenhuma ação no cluster, mas deve registrar alertas e eventos no log de eventos do Windows para o qual você pode monitorar.