NFS: Clustering State

Microsoft.Windows.FileServer.NFS.Library.Server.ClusteringState (UnitMonitor)

This object monitors the status of the Server for NFS cluster listener and generates an alert if Server for NFS cannot initialize the cluster listener, if the alert is enabled for this monitor.

Knowledge Base article:

Summary

This object monitors the status of the Server for NFS cluster listener and generates an alert if Server for NFS cannot initialize the cluster listener, if the alert is enabled for this monitor.

Services for NFS can run on a clustered server. A failover cluster is a group of independent computers that work together to increase the availability of applications and services. If one of the clustered servers fails, another server begins to provide service (a process known as failover).

Causes

This monitor can enter a Warning health state because the Cluster Service is not running or the computer is low on resources.

If the health state is unknown, it means that monitoring has not yet begun for this object.

Resolutions

Determine if the Cluster Service is running

Determine if the Cluster Service is running as follows:

1. At an elevated command prompt on the affected server, type services.msc.

2. Check if Cluster Service Status is Started.

Restart Server for NFS

The NFS server may need to be restarted if it was unable to detect a failover cluster configuration.

To restart Server for NFS, use the following procedure:

1. At an elevated command prompt on the affected server, type nfsadmin server stop.

2. Type nfsadmin server start.

Verification

Verify Server for NFS startup status as follows:

1. At a command prompt on the affected server, type net start.

2. Verify that Server for NFS appears in the list of results.

This monitor automatically resets to a Healthy state after Server for NFS is restarted.

Additional

For more information about configuring Server for NFS, see Services for Network File System (http://go.microsoft.com/fwlink/?LinkId=185983).

Element properties:

TargetMicrosoft.Windows.FileServer.Service.NFS.Base
Parent MonitorSystem.Health.AvailabilityState
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.2SingleEventLog2StateMonitorType
RemotableTrue
AccessibilityPublic
Alert Message
NFS: Clustering State
Event Description: {0}
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.Windows.FileServer.NFS.Library.Server.ClusteringState" Accessibility="Public" Enabled="true" Target="Microsoft.Windows.FileServer.Service.NFS.Base" ParentMonitorID="SystemHealth!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Windows!Microsoft.Windows.2SingleEventLog2StateMonitorType" ConfirmDelivery="true">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.Windows.FileServer.NFS.Library.Server.ClusteringState_AlertMessageResourceID">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/EventDescription$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="FirstEventRaised" MonitorTypeStateID="FirstEventRaised" HealthState="Warning"/>
<OperationalState ID="SecondEventRaised" MonitorTypeStateID="SecondEventRaised" HealthState="Success"/>
</OperationalStates>
<Configuration>
<FirstComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</FirstComputerName>
<FirstLogName>Application</FirstLogName>
<FirstExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">NfsService</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<Or>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">4021</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">4022</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">4023</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</Or>
</Expression>
</And>
</FirstExpression>
<SecondComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</SecondComputerName>
<SecondLogName>Application</SecondLogName>
<SecondExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">NfsService</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<Or>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">4007</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">4019</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</Or>
</Expression>
</And>
</SecondExpression>
</Configuration>
</UnitMonitor>