可用性组自动故障转移
此监视器检查可用性组是否至少具有一个故障转移就绪的辅助副本。当主副本的故障转移模式为自动但是可用性组中没有任何辅助副本处于自动故障转移就绪状态时,此监视器处于不正常状态并引发警报。当至少一个辅助副本处于自动故障转移就绪状态时,此监视器处于正常状态。
可用性组未准备好进行自动故障转移。将主副本配置为自动故障转移,但是辅助副本未准备好进行自动故障转移。为自动故障转移配置的辅助副本可能不可用或其数据同步状态当前不是 SYNCHRONIZED。
检查是否至少将一个辅助副本配置为自动故障转移。否则,将辅助副本的配置更新为具有同步提交的自动故障转移目标。
通过其监视器检查自动故障转移目标副本的数据同步状态是否为 SYNCHRONIZED,然后解决可用性副本的问题。
名称 | 说明 | 默认值 |
已启用 | 启用或禁用工作流。 | 是 |
生成警报 | 定义工作流是否生成警报。 | 否 |
间隔(秒) | 要运行工作流的重复时间间隔(秒)。 | 900 |
策略名称 |
| $Target/Property[Type="AlwaysOnDisc!Microsoft.SQLServer.2012.AlwaysOn.AvailabilityGroupHealth"]/AvailabilityGroupName$-AlwaysOnAgAutomaticFailoverHealthPolicy |
超时(秒) | 指定允许工作流在被关闭并标记为失败之前运行的时间。 | 300 |
Target | Microsoft.SQLServer.2012.AlwaysOn.AvailabilityGroupHealth |
Parent Monitor | System.Health.AvailabilityState |
Category | AvailabilityHealth |
Enabled | True |
Alert Generate | False |
Alert Auto Resolve | False |
Monitor Type | Microsoft.SQLServer.2012.AlwaysOn.SystemPolicyScriptMonitorType |
Remotable | True |
Accessibility | Public |
RunAs | Microsoft.SQLServer.2012.AlwaysOn.MonitoringAccount |
<UnitMonitor ID="Microsoft.SQLServer.2012.AlwaysOn.AutomaticFailoverReadiness" 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$-AlwaysOnAgAutomaticFailoverHealthPolicy</PolicyName>
<InstanceName>$Target/Property[Type="AlwaysOnDisc!Microsoft.SQLServer.2012.AlwaysOn.AvailabilityGroupHealth"]/InstanceName$</InstanceName>
</Configuration>
</UnitMonitor>