가용성 그룹 온라인 모니터

Microsoft.SQLServer.2014.AlwaysOn.AvailabilityGroupOnline (UnitMonitor)

가용성 그룹 온라인

Knowledge Base article:

요약

이 모니터는 가용성 그룹의 온라인 또는 오프라인 상태를 확인합니다. 가용성 그룹의 클러스터 리소스가 오프라인 상태이거나 가용성 그룹에 주 복제본이 없는 경우 모니터가 비정상 상태이며 알림이 발생합니다. 가용성 그룹의 클러스터 리소스가 온라인 상태이고 가용성 그룹에 주 복제본이 있는 경우 모니터 상태가 정상입니다.

원인

가용성 그룹이 오프라인 상태이고 가용성 그룹을 사용할 수 없습니다. 이 문제는 주 복제본을 호스팅하는 서버 인스턴스의 오류로 인해 발생하거나 WSFC 가용성 그룹 리소스가 오프라인으로 설정되어 발생할 수 있습니다.

해결 방법

재정의 가능한 매개 변수

이름

설명

기본값

사용

워크플로를 사용하거나 사용하지 않도록 설정합니다.

알림 생성

워크플로가 알림을 생성하는지를 정의합니다.

아니요

간격(초)

워크플로를 실행하는 반복 시간 간격(초)입니다.

900

제한 시간(초)

워크플로를 닫고 실패로 표시하기 전에 워크플로를 실행할 수 있는 시간을 지정합니다.

300

Element properties:

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

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.2014.AlwaysOn.AvailabilityGroupOnline" RunAs="Microsoft.SQLServer.2014.AlwaysOn.MonitoringAccount" TypeID="Microsoft.SQLServer.2014.AlwaysOn.SystemPolicyScriptMonitorType" Accessibility="Public" Enabled="true" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Target="AlwaysOnDisc!Microsoft.SQLServer.2014.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.2014.AlwaysOn.AvailabilityGroupHealth"]/AvailabilityGroupName$-AlwaysOnAgOnlineStateHealthPolicy</PolicyName>
<InstanceName>$Target/Property[Type="AlwaysOnDisc!Microsoft.SQLServer.2014.AlwaysOn.AvailabilityGroupHealth"]/InstanceName$</InstanceName>
</Configuration>
</UnitMonitor>