DFS-R: レプリケーション エラーの状態

Microsoft.Windows.FileServer.DFSR.ReplicationStoppedOnErrorMonitor (UnitMonitor)

このオブジェクトは、レプリケーションを監視し、エラーによってレプリケーションが停止した場合に警告アラートを作成します。

Knowledge Base article:

概要

このオブジェクトは、レプリケーションを監視し、エラーによってレプリケーションが停止した場合に警告アラートを作成します。この処理のため、オブジェクトは、DFS レプリケーション イベント ログに DFS レプリケーション イベント 4004 があるかを調べます。

原因

このモニターの状態が異常な場合、エラーによってレプリケート フォルダーでレプリケーションが停止したことを示しています。これは、次のような理由によって発生します。

このイベントがトリガーされる原因となった理由の詳細は、イベント テキストを参照してください。

解決方法

使用可能なディスク領域を増やす

この問題を解決するには、次の手順を使用します。

1. Operations Console のアラートの説明に表示されたエラーを確認します。十分な使用可能なディスク領域がない場合は、次のエラーが表示されます: エラー 112 (ディスクに十分な空き領域がありません。)

2. ボリューム上の使用可能なディスク領域を増やすか、ボリュームのサイズを大きくするか、またはステージング フォルダーを含むフォルダーのクォータ設定を大きくします。

使用可能なディスク領域を手動で確認するには、コマンド プロンプト ウィンドウを開いて、次のコマンドを入力します。[servername] は影響を受けるフォルダーをホストしているサーバーの名前で、[domain\user] はユーザー名です。

WMIC /node: "[servername]" /user: [domain\user] volume list status

空き領域を増やしたら、DFS Replication サービスを再開します。

DFS レプリケーションのクォータの調整

ステージング フォルダーおよび競合して削除されたフォルダーのクォータ サイズを編集して、DFS レプリケーションに必要なディスク領域を少なくすることができます。これを行う場合は、「 ステージング フォルダーおよび競合して削除されたフォルダーのクォータ サイズを編集する」(http://go.microsoft.com/fwlink/?LinkId=186944) を参照してください。

重要: ステージング フォルダーのクォータの設定が小さすぎると、DFS レプリケーションでステージングしたファイルを再生成するために余分な CPU リソースやディスク リソースが必要になる可能性があります。ステージング領域の不足により、パートナーとの間の同時転送の数が実質的に制限されることがあるため、レプリケーションの速度も低下することがあります。ステージング フォルダーおよび競合して削除されたフォルダーのサイズを大きくすると、レプリケーションのパフォーマンスを向上させ、回復可能な競合して削除されたファイルの数を増やすことができます。

レプリケート フォルダーのアクセス許可を修正する

DFS Replication サービスにレプリケート フォルダーおよびステージング フォルダーに対するフル コントロールのアクセス許可がない場合、レプリケーションは失敗します。この問題を解決するには、ローカル システム アカウントに、レプリケートされるフォルダーとサブフォルダーおよびステージング フォルダー (レプリケート フォルダー外にある場合) に対するフル コントロールのアクセス許可を割り当てます。

レプリケート フォルダーのパスを修正する

この問題を解決するには、レプリケート フォルダーのローカル パスが使用可能であることを確認し、必要に応じてボリュームをオンラインにします。

パスが変更された場合は、レプリケーション グループ内のサーバーのメンバーシップを削除して再作成する必要があります。これを行うには、Domain Admins グループのメンバーであるか、アクセス許可が委任されている必要があります。

フェールオーバー クラスター リソースがオンラインであることを確認する

サーバーがフェールオーバー クラスターのメンバーである場合は、DFS レプリケーション リソースがオンラインであることを確認します。これを行うには、影響を受けるサーバー上でフェールオーバー クラスター マネージャーを開いて、適切なクラスター化されたファイル サーバー インスタンスのステータスがオンラインであることを確認します。オンラインでない場合は、適切なリソースを選択して、[このサービスまたはアプリケーションをオンラインにする] をクリックします。

これを行うには、Windows PowerShell™を使用し、フェールオーバー クラスター上のローカル Administrators グループに属するアカウントでログオンした状態で Windows PowerShell コマンド プロンプト ウィンドウを開き、次のコマンドを入力します。[replicatedfolder_rootpath] はクラスター化されたファイル サーバー インスタンスでホストされているレプリケート フォルダーのルート パスです。

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

リソースがオンラインの場合、状態フィールドの値は 2 になります。

重要: レプリケート フォルダーのルート パス内に円記号がある場合は、もう一つ円記号 (\) を追加してください。たとえば、d:\shares\public の場合は、d:\\shares\\public と入力してください。

検証

レプリケーションが完了すると、このモニターは自動的に正常な状態にリセットされます。

レプリケーションが正常であることを手動で確認するには、DFS の管理または次のコマンドを使用して、影響を受けるフォルダーで伝達テストを実行します。[ReplicationGroup] にはレプリケーション グループの名前を指定し、[ReplicatedFolder] にはレプリケート フォルダーの名前を指定します。

dfsrdiag propagationtest /rgname:"[ReplicationGroup]" /rfname:"[ReplicatedFolder]" /testfilename:DFS-RTestFile.xml

dfsrdiag propagationreport /rgname:"[ReplicationGroup]" /rfname:"[ReplicatedFolder]" /testfilename:DFS-RTestFile.xml /reportfilename:c:\DFS-R_Report.xml

追加情報

Element properties:

TargetMicrosoft.Windows.FileServer.DFSR.ReplicatedFolder
Parent MonitorSystem.Health.AvailabilityState
CategoryStateCollection
EnabledTrue
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.2SingleEventLog2StateMonitorType
RemotableTrue
AccessibilityPublic
Alert Message
DFS-R: エラーによりレプリケーションが停止した
DFS Replication サービスは、ローカル パス {0} にあるレプリケート フォルダーでレプリケーションを停止しました。
追加情報: エラー: {1} ({2})
エラーの追加コンテキスト: {3} レプリケート フォルダー名: {4}
レプリケート フォルダー ID: {5} レプリケーション グループ名: {6}
レプリケーション グループ ID: {7}
メンバー ID: {8}
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.Windows.FileServer.DFSR.ReplicationStoppedOnErrorMonitor" Accessibility="Public" Enabled="true" Target="Microsoft.Windows.FileServer.DFSR.ReplicatedFolder" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Windows!Microsoft.Windows.2SingleEventLog2StateMonitorType" ConfirmDelivery="true">
<Category>StateCollection</Category>
<AlertSettings AlertMessage="Microsoft.Windows.FileServer.DFSR.ReplicationStoppedOnErrorMonitor_AlertMessageResourceID">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Params/Param[3]$</AlertParameter1>
<AlertParameter2>$Data/Context/Params/Param[4]$</AlertParameter2>
<AlertParameter3>$Data/Context/Params/Param[5]$</AlertParameter3>
<AlertParameter4>$Data/Context/Params/Param[2]$</AlertParameter4>
<AlertParameter5>$Data/Context/Params/Param[6]$</AlertParameter5>
<AlertParameter6>$Data/Context/Params/Param[1]$</AlertParameter6>
<AlertParameter7>$Data/Context/Params/Param[7]$</AlertParameter7>
<AlertParameter8>$Data/Context/Params/Param[8]$</AlertParameter8>
<AlertParameter9>$Data/Context/Params/Param[9]$</AlertParameter9>
</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>DFS Replication</FirstLogName>
<FirstExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">4004</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<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[1]</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">$Target/Property[Type="Microsoft.Windows.FileServer.DFSR.ReplicatedFolder"]/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>
<Or>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">1004</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">1104</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Params/Param[1]</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">$Target/Property[Type="Microsoft.Windows.FileServer.DFSR.ReplicatedFolder"]/ReplicatedFolderGUID$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<Or>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">4002</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">4008</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">4010</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">4114</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</Or>
</Expression>
</And>
</Expression>
<Expression>
<And>
<Expression>
<Or>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">9008</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>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Params/Param[3]</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">$Target/Property[Type="Microsoft.Windows.FileServer.DFSR.ReplicatedFolder"]/ReplicatedFolderGUID$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</Or>
</Expression>
</And>
</SecondExpression>
</Configuration>
</UnitMonitor>