可用性グループ自動フェールオーバー (ロールアップ)

Microsoft.SQLServer.2016.AlwaysOn.AutomaticFailoverReadinessRollup (DependencyMonitor)

このモニターは、可用性グループの中にフェールオーバーの準備ができたセカンダリ レプリカが 1 つ以上あるかどうかを調べます。モニターが異常となって警告が登録されるのは、プライマリ レプリカのフェールオーバー モードが自動であるにもかかわらず、可用性グループの中に自動フェールオーバーの準備ができたセカンダリ レプリカが 1 つもないときです。モニターが正常となるのは、自動フェールオーバーの準備ができているセカンダリ レプリカが 1 つ以上あるときです。このモニターは依存関係 (ロールアップ) モニターです。

Knowledge Base article:

概要

このモニターは、可用性グループの中にフェールオーバーの準備ができたセカンダリ レプリカが 1 つ以上あるかどうかを調べます。モニターが異常となって警告が登録されるのは、プライマリ レプリカのフェールオーバー モードが自動であるにもかかわらず、可用性グループの中に自動フェールオーバーの準備ができたセカンダリ レプリカが 1 つもないときです。モニターが正常となるのは、自動フェールオーバーの準備ができているセカンダリ レプリカが 1 つ以上あるときです。

原因

可用性グループの自動フェールオーバーの準備ができていません。プライマリ レプリカは自動フェールオーバー用に構成されていますが、セカンダリ レプリカは自動フェールオーバーの準備ができていません。自動フェールオーバー用に構成されているセカンダリ レプリカが使用できないか、そのデータ同期状態が現在 SYNCHRONIZED になっていない可能性があります。

解決方法

上書き可能なパラメーター

名前

説明

既定値

アラートの優先度

アラートの優先順位を定義します。

アラートの重要度

アラートの重大度を定義します。

エラー

有効

ワークフローを有効または無効にします。

はい

アラートを生成する

ワークフローがアラートを生成するかどうかを定義します。

はい

Element properties:

TargetMicrosoft.SQLServer.2016.AlwaysOn.AvailabilityGroup
Parent MonitorSystem.Health.AvailabilityState
AlgorithmWorstOf
Source MonitorMicrosoft.SQLServer.2016.AlwaysOn.AutomaticFailoverReadiness
RelationshipMicrosoft.SQLServer.2016.AlwaysOn.AvailabilityGroupReferencesAvailabilityGroupHealth
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
RemotableTrue
AccessibilityPublic
Alert Message
MSSQL 2016: 可用性グループは自動フェールオーバーできる状態ではありません
可用性グループ {0} は自動フェールオーバーできる状態ではありませんが、自動的にフェールオーバーするように構成されています

Source Code:

<DependencyMonitor ID="Microsoft.SQLServer.2016.AlwaysOn.AutomaticFailoverReadinessRollup" Accessibility="Public" Enabled="true" Target="AlwaysOnDisc!Microsoft.SQLServer.2016.AlwaysOn.AvailabilityGroup" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Priority="Normal" RelationshipType="AlwaysOnDisc!Microsoft.SQLServer.2016.AlwaysOn.AvailabilityGroupReferencesAvailabilityGroupHealth" MemberMonitor="Microsoft.SQLServer.2016.AlwaysOn.AutomaticFailoverReadiness">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2016.AlwaysOn.AutomaticFailoverReadinessAlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="System!System.Entity"]/DisplayName$</AlertParameter1>
<AlertParameter2>$Target/Property[Type="AlwaysOnDisc!Microsoft.SQLServer.2016.AlwaysOn.AvailabilityGroup"]/ClusterName$</AlertParameter2>
<AlertParameter3>$Target/Property[Type="AlwaysOnDisc!Microsoft.SQLServer.2016.AlwaysOn.AvailabilityGroup"]/PrimaryReplicaServerName$</AlertParameter3>
</AlertParameters>
</AlertSettings>
<Algorithm>WorstOf</Algorithm>
<MemberUnAvailable>Warning</MemberUnAvailable>
</DependencyMonitor>