クラスター化された NFS 共有の透過的フェールオーバーが失敗する

現象

以下のシナリオを考えます。
  • Windows Server 2012 または Windows Server 2012 R2 ベースの Windows Server Failover Clustering によって、NFS 共有がクラスター化されています
  • NFS 共有で継続的可用性を有効にするの設定が有効になっています
  • NFS クライアントが、NFS 共有へアクセスしています
  • クラスター リソースに障害が発生して、NFS 共有リソースがフェールオーバーされます
上記のシナリオにおいて、NFS 共有リソースのフェールオーバーは透過的に行われず、フェールオーバー処理の実行中は NFS クライアントにエラー (ファイル読み書き操作に対するI/Oエラー等) が通知されます。フェールオーバーが完了後、NFS クライアントは NFS 共有へ再度アクセスできるようになります。

原因

Windows Server 2012 および Windows Server 2012 R2 の Server for NFS は、手動フェールオーバー (計画的なリソースの移動) を行う場合のみ、透過的フェールオーバーをサポートします。前述のシナリオのような、リソース障害に起因するフェールオーバーの場合には、透過的フェールオーバーが行われません。

解決方法

リソース障害により NFS 共有がフェールオーバーした場合には、NFS クライアントから再度ファイルへのアクセスを行います。

詳細

NFS 共有が透過的にフェールオーバーされたとしても、クライアントからのアクセスが再開する前に、フェールオーバー後のクラスターノード上でファイルが開かれた場合には、クライアントからのファイル アクセスが失敗する場合があります。これは、Windows Server 2012 および Windows Server 2012 R2 の Server for NFS が Resume Key フィルターと統合されていないためです。

一方、クラスター化された SMB (Server Message Block) バージョン 3.0 の共有フォルダーは Resume Key フィルターと統合されているため、リソース障害によるフェールオーバーが発生した場合でも、透過的フェールオーバーを行います。また、フェールオーバー発生前後でクライアントからのファイル アクセス状態が保持されるため、フェールオーバー後でもクライアントからの同一ファイルに対するアクセスが再開されることを保証します。

上記の NFS 共有と SMB 3.0 共有の相違点をまとめると、以下のようになります。
リソース障害時の透過的フェールオーバー手動フェールオーバー時の透過的フェールオーバーResume Key フィルターとの統合
NFS 共有◯ (*1 )なし
SMB 3.0 共有あり
  • ◯ : 透過的フェールオーバーが行われる
  • ✕ : 透過的フェールオーバーが行われない
  • (*1) Resume Key フィルターと統合されていないため、透過的フェールオーバー後に他のアプリケーションとのファイル競合が発生すると、クライアントからのファイル アクセスが再開できない場合があります
プロパティ

文書番号:3198082 - 最終更新日: 2016/10/11 - リビジョン: 1

フィードバック