Монитор WSFC-кластера

Microsoft.SQLServer.2012.AlwaysOn.ClusterStateMonitor (UnitMonitor)

Knowledge Base article:

Сводка

Этот монитор проверяет состояние службы WSFC. Монитор принимает неисправное состояние и выдает предупреждение, когда кластер WSFC отключается от сети или находится в состоянии "принудительный кворум". Все группы доступности, размещенные на этом кластере, находятся в режиме "вне сети", либо требуется выполнить процедуру аварийного восстановления. Монитор имеет исправное состояние, если состояние кластера — "нормальный кворум".

Причины

Кластер WSFC находится вне сети, или служба запущена в состоянии принудительного кворума. Эта группа доступности недоступна для клиентских приложений.

Решения

Чтобы устранить проблему, необходимо выполнить процедуры принудительного кворума или аварийного восстановления рабочего процесса с помощью средства администрирования кластеров или связаться с администратором кластера. Дополнительные сведения см. в руководстве по приведению к принудительному кворуму и аварийному восстановлению в электронной документации по SQL Server 2012.

Переопределяемые параметры

Имя

Описание

Значение по умолчанию

Вкл.

Включает или отключает рабочий процесс.

Да

Создает предупреждения

Определяет, создает ли рабочий процесс предупреждения.

Нет

Интервал (с)

Интервал перед повторным запуском рабочего процесса (в секундах).

900

Имя политики

 

$Target/Property[Type="AlwaysOnDisc!Microsoft.SQLServer.2012.AlwaysOn.AvailabilityGroupHealth"]/AvailabilityGroupName$-AlwaysOnAgWSFClusterHealthPolicy

Время ожидания (секунды)

Задает допустимое время выполнения рабочего процесса, перед тем как он будет закрыт и отмечен как сбойный.

300

Element properties:

TargetMicrosoft.SQLServer.2012.AlwaysOn.AvailabilityGroupHealth
Parent MonitorSystem.Health.AvailabilityState
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateFalse
Alert Auto ResolveFalse
Monitor TypeMicrosoft.SQLServer.2012.AlwaysOn.SystemPolicyScriptMonitorType
RemotableTrue
AccessibilityPublic
RunAsMicrosoft.SQLServer.2012.AlwaysOn.MonitoringAccount

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.2012.AlwaysOn.ClusterStateMonitor" RunAs="Microsoft.SQLServer.2012.AlwaysOn.MonitoringAccount" TypeID="Microsoft.SQLServer.2012.AlwaysOn.SystemPolicyScriptMonitorType" Accessibility="Public" Enabled="true" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Target="AlwaysOnDisc!Microsoft.SQLServer.2012.AlwaysOn.AvailabilityGroupHealth" Priority="Normal">
<Category>AvailabilityHealth</Category>
<OperationalStates>
<OperationalState ID="Success" MonitorTypeStateID="HealthState" HealthState="Success"/>
<OperationalState ID="Critical" MonitorTypeStateID="ErrorState" HealthState="Error"/>
</OperationalStates>
<Configuration>
<Interval>900</Interval>
<TimeoutSeconds>300</TimeoutSeconds>
<PolicyName>$Target/Property[Type="AlwaysOnDisc!Microsoft.SQLServer.2012.AlwaysOn.AvailabilityGroupHealth"]/AvailabilityGroupName$-AlwaysOnAgWSFClusterHealthPolicy</PolicyName>
<InstanceName>$Target/Property[Type="AlwaysOnDisc!Microsoft.SQLServer.2012.AlwaysOn.AvailabilityGroupHealth"]/InstanceName$</InstanceName>
</Configuration>
</UnitMonitor>