DFS-R: Replicated Folder Cluster Resource Creation and Updates

Microsoft.Windows.FileServer.DFSR.6.2.Cluster.ResourceCreateUpdateFailedMonitor (UnitMonitor)

This object monitors the creation and updating of replicated folder cluster resources, and creates a Critical alert if DFS Replication cannot create or update the cluster resource for a replicated folder.

Knowledge Base article:

Summary

This object monitors the creation and updating of replicated folder cluster resources, and creates a Critical alert if DFS Replication cannot create or update the cluster resource for a replicated folder. It does so by looking for the presence of DFS Replication Event 9001.

Causes

An unhealthy state of this monitor indicates that DFS Replication couldn’t create or update a cluster resource for a replicated folder. This can occur if the clustered file server instance isn’t online or if storage resources are unavailable.

Resolutions

Confirm that the failover cluster resource is online

If the server is a member of a failover cluster, confirm that the DFS Replication resource is online.

To confirm that a cluster resource is online using the Windows interface

Open Failover Cluster Manager on the affected server and confirm that the status of the appropriate clustered file server instance is Online. If it isn’t, select the appropriate resource and then click Bring this service or application online.

To confirm that a cluster resource is online using Windows PowerShell

Open a Windows PowerShell™ command prompt window while logged on with an account that is a member of the local Administrators group on the failover cluster, and then type the following command, where <replicatedfolder_rootpath> is the root path of the replicated folder hosted by the clustered file server instance:

get-wmiobject -namespace root\mscluster -class MSCluster_Resource -Filter "name='DFSR <replicatedfolder_rootpath>'"

If the resource is online, the value of the State field should be 2.

Important: Add a second backslash (\) before any backslashes in the replicated folder root path. For example d:\shares\public would be written as d:\\shares\\public.

Confirm that the storage resource is online

Confirm that the appropriate storage resource is online. To do so, open Failover Cluster Manager on the affected server and confirm that the status of the appropriate disk is Online. If it isn’t, select the disk and then click Bring this resource online.

Verification

This monitor automatically resets to the healthy state after this issue is resolved.

Additional

DFS Replication Event 9001 (http://go.microsoft.com/fwlink/?LinkId=187169)

Element properties:

TargetMicrosoft.Windows.FileServer.DFSR.6.2.ClusteredReplicatedFolder
Parent MonitorMicrosoft.Windows.FileServer.DFSR.6.2.Cluster.ResourceCreateUpdateFailed
CategoryCustom
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.2SingleEventLog2StateMonitorType
RemotableTrue
AccessibilityPublic
Alert Message
DFS-R: Cannot Create or Update a Cluster Resource for a Clustered Replicated Folder
{0}
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.Windows.FileServer.DFSR.6.2.Cluster.ResourceCreateUpdateFailedMonitor" Accessibility="Public" Enabled="true" Target="Microsoft.Windows.FileServer.DFSR.6.2.ClusteredReplicatedFolder" ParentMonitorID="Microsoft.Windows.FileServer.DFSR.6.2.Cluster.ResourceCreateUpdateFailed" Remotable="true" Priority="Normal" TypeID="Windows!Microsoft.Windows.2SingleEventLog2StateMonitorType" ConfirmDelivery="true">
<Category>Custom</Category>
<AlertSettings AlertMessage="Microsoft.Windows.FileServer.DFSR.6.2.Cluster.ResourceCreateUpdateFailedMonitor_AlertMessageResourceID">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/EventDescription$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="FirstEventRaised" MonitorTypeStateID="FirstEventRaised" HealthState="Error"/>
<OperationalState ID="SecondEventRaised" MonitorTypeStateID="SecondEventRaised" HealthState="Success"/>
</OperationalStates>
<Configuration>
<FirstComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</FirstComputerName>
<FirstLogName>DFS Replication</FirstLogName>
<FirstExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">DFSR</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">9001</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Params/Param[3]</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">$Target/Property[Type="DFSRLib!Microsoft.Windows.FileServer.DFSR.ReplicatedFolderExtension"]/ReplicatedFolderGUID$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</FirstExpression>
<SecondComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</SecondComputerName>
<SecondLogName>DFS Replication</SecondLogName>
<SecondExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">DFSR</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Params/Param[3]</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">$Target/Property[Type="DFSRLib!Microsoft.Windows.FileServer.DFSR.ReplicatedFolderExtension"]/ReplicatedFolderGUID$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<Or>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">9000</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">9002</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">9003</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">9111</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</Or>
</Expression>
</And>
</SecondExpression>
</Configuration>
</UnitMonitor>