「分散ファイルシステム」(DFS)は、ファイルサーバーへのアクセスを簡素化したり、高可用性や負荷分散などを提供したりするWindows Serverの標準機能である。今回は、DFSを解説する。
多くの企業では、複数のファイルサーバーを運用しているだろう。ファイルサーバーのディスク容量が不足した際にはハードディスクを追加するのではなく、ファイルサーバーそのものを増設したこともあるはずだ。しかし、ファイルサーバーの台数が増えると、ユーザーは新しいファイルサーバーの名前を覚えなければならず、目的のファイルやフォルダーにアクセスするのに苦労することになる。
Windows Server 2012 R2に搭載されている「分散ファイルシステム(Distributed File System)」(以下、DFS)は、「DFS名前空間」と呼ばれる機能によって、複数のファイルサーバーにある共有フォルダーの一元管理を可能にする。
DFSでは「名前空間サーバー」という“代表となる特殊なファイルサーバー”上にフォルダーを作成し、その下に複数のファイルサーバーに散在している共有フォルダー(「フォルダーターゲット」と呼ばれる)をリンクさせることで他のファイルサーバーの存在(ファイル共有のアドレス)を隠す仕組みになっている(図1)。
ユーザーは名前空間サーバーのアドレス(\\ドメイン名\共有名)にだけアクセスすればよく、同じドメイン内にある全てのファイルサーバー上のファイルやフォルダーにも簡単にアクセスできるようになる。また、サーバー管理者はユーザーに通知することなく、ファイルサーバーの名前を変更できるようになるので、ファイルサーバーの入れ替えなどのメンテナンスも容易になる。
実は、このDFSと同じような仕組みは、従来のファイルサーバーでも実現できる。例えば、一つのファイルサーバーを決め、そこに各ファイルサーバーの共有フォルダーの「ショートカット」を置けばよいだけだ。
では、DFSを利用するメリットとは何か。DFSは企業利用で求められる可用性を含め、ファイルサーバーをより効率良く活用するための機能を提供してくれる。
DFSは、Windows Server 2012 R2の「サーバーマネージャー」の「役割の追加ウィザード」からインストールする。「役割の追加ウィザード」を起動して、「サーバーの役割の選択」ページで「ファイルサービス」にチェックを入れて次に進み、「役割サービスの選択」ページで「分散ファイルシステム」にチェックを入れればよい。
DFS環境でファイルサーバーを利用するユーザーは、まず名前空間サーバーにアクセスすることになる。そのため、名前空間サーバーがダウンすると、目的のファイルサーバーやファイル/フォルダーへのアクセスが困難になるので、可用性を考慮する必要がある。可用性を考慮した構成は、DFSのインストール時における「名前空間の種類」の設定で行う(画面1)。
名前空間の種類には「ドメインベースの名前空間」と「スタンドアロンの名前空間」がある。初期のDFSでは「ドメインベースの名前空間」は「スタンドアロンの名前空間」よりも作成可能なフォルダー数に制約があったため、あえて「スタンドアロンの名前空間」に設定することがあった。Windows Server 2008以降ではこの制約がなくなったので、基本的に「ドメインベースの名前空間」を選択しておけばよい。
実際の可用性の構成は、名前空間の種類によってアプローチが異なる。「ドメインベースの名前空間」の場合は複数の名前空間サーバーで可用性を確保するが、「スタンドアロンの名前空間」の場合はフェイルオーバークラスター構成にして可用性を確保することになる(表1)。
特性 | スタンドアロンの名前空間 | ドメインベースの名前空間(Windows 2000 Serverモード) | ドメインベースの名前空間(Windows Server 2008モード) |
---|---|---|---|
名前空間へのパス | \\サーバー名\ルート名 | \\ドメイン名\ルート名 | \\ドメイン名\ルート名 |
名前空間情報の格納場所 | 名前空間サーバーのレジストリ内、およびメモリキャッシュ内 | 各名前空間サーバーのAD DS内、およびメモリキャッシュ内 | 各名前空間サーバーのAD DS内、およびメモリキャッシュ内 |
名前空間の推奨サイズ | 名前空間は、ターゲットを持つ5000個を超えるフォルダーを含めることが可能 | Windows Server 2008を実行していないドメインコントローラーとの互換性を維持するため、AD DSの名前空間オブジェクトのサイズは5MB未満である必要がある。これは、ターゲットを持つフォルダー約5000個に相当する | 名前空間は、ターゲットを持つ5000個を超えるフォルダーを含めることが可能 |
最低AD DSフォレスト機能レベル | AD DSは不要 | Windows 2000 | Windows Server 2003 |
最低AD DSドメイン機能レベル | AD DSは不要 | Windows 2000混在 | Windows Server 2008 |
最低限サポートされている名前空間サーバー | Windows 2000 Server | Windows 2000 Server | Windows Server 2008 |
アクセスベースの列挙のサポート(有効になっている場合) | サポートされている。ただし、Windows Server 2008名前空間サーバーが必要 | サポートされていない | サポートされている |
名前空間の可用性を確保するためにサポートされている方法 | フェイルオーバークラスターで、スタンドアロン名前空間を作成する | 複数の名前空間サーバーを使用して、名前空間をホストする(名前空間サーバーは、同じドメイン内に存在している必要がある) | 複数の名前空間サーバーを使用して、名前空間をホストする(名前空間サーバーは、同じドメイン内に存在している必要がある) |
DFSレプリケーションを使用してフォルダーターゲットをレプリケートする方法のサポート | AD DSドメインに参加している場合、サポートされている | サポートされている | サポートされている |
表1 各名前空間と各モードの違い |
名前空間を作成したら「新しいフォルダー」を作成し、そのフォルダーに対して、実際のファイルサーバーの共有設定をフォルダーターゲットに追加する。これで、ユーザーは名前空間サーバーのアドレス(\\ドメイン名\共有名)にアクセスすれば、実際のファイルサーバーのアドレスにリダイレクトされアクセスできるのだ。
DFSではフォルダーターゲットを複数設定することで、さらに可用性を向上できる。フォルダーターゲットを複数設定するには「DFSの管理」ツールで作成したフォルダーを右クリックし、「フォルダーターゲットを追加」から「フォルダーターゲットのパス」を入力して新しいフォルダーターゲットを追加する(画面2)。
この際、「以下のトポロジを使用して、このフォルダーターゲットをレプリケーショングループに追加」にチェックを入れ、適切な構成を選択することによって、レプリケーショングループが作成される。これにより、ファイルサーバー間でレプリケーションするように構成される(画面3)。
このレプリケーションを構成するために、各ファイルサーバーには「ファイルサーバー」と「DFSレプリケーション」の役割を、サーバーマネージャーからインストールしておく必要がある。なお、DFSのレプリケーションに使用されるプロトコル「DFSR(Distributed File System Replication)」はFRS(File Replication Service)の改良型であり、FRSよりも効率の良いレプリケーションを実現する。
DFSを使用してファイルサーバー(名前空間サーバー)にアクセスする場合、Active Directoryで適切なサイト設計が行われていれば、ユーザーは自分が所属するサイト(または近いサイト)のファイルサーバー(実際のファイルサーバー)にアクセスするようになっている。この仕組みは、作成した名前空間サーバーのプロパティの「紹介」タブの設定で制御されている(画面4)。
「紹介」とは、クライアントが名前空間サーバーにアクセスする際、“順序付きのサーバー一覧”を受信する仕組みになる。この順序設定には「無作為な順序」「最低コスト」「クライアントサイト外のターゲットを除外する」があり、デフォルトでは「最低コスト」が設定される。
この仕組みにより、ユーザーは自分が所属しているサイトのサーバーへのアクセスが優先され、そこにアクセスできない場合は、次のサーバーにアクセスしようとすることで可用性を維持している。また、「クライアントを優先するターゲットにフェイルバックする」を有効にしておけば、ダウンしたサーバーが復元後、クライアントがすぐに元のサーバーにアクセスするようになる(図2)。
DFSの運用面で考慮するべき点としては、「排他制御」が行われないことが挙げられる。これは、異なるファイルサーバーにある同じファイルに複数のユーザーが同時にアクセス可能ということだ。この場合には、最後に保存されたものが優先されることになる。
DFSは常に進化しており、Windows Server 2012 R2では以下の表2の新機能が追加されている。
機能 | 新規/更新 | 説明 |
---|---|---|
DFSレプリケーション用のWindows PowerShellモジュール | 新規 | 新機能に加えて、DFSレプリケーションの大部分の管理タスクを実行するためのPowerShellコマンドレットが追加された |
DFSレプリケーションのWMIプロバイダー | 新規 | DFSレプリケーションを管理するための、WMI(Windows Management Instrumentation)ベースの最新の管理メソッドが追加された |
最初の同期用のデータベースの複製 | 新規 | 新しいレプリケートフォルダーの作成、サーバーの交換または障害からの回復時に、最初のレプリケーションをバイパスできるようになった |
破損したデータベースの回復 | 新規 | 権限のない最初の同期による予期しないデータの損失なしで、破損したデータベースを再構築できるようになった |
ファイル間RDCの無効化 | 新規 | サーバー間でファイル間のRDC(Remote Differential Compression)を無効にするオプションが追加された |
ファイルステージングのチューニング | 新規 | 個々のサーバーのさまざまなファイルステージングサイズを構成するオプションが追加された |
保持ファイルの復元 | 新規 | 「ConflictAndDeleted」および「PreExisting」フォルダーからファイルを復元する機能が追加された |
予期しないシャットダウン時のデータベースの回復の改良 | 更新 | 停電後やDFSレプリケーションサービスの予期しない停止後に自動回復が可能になった |
メンバーシップの無効化の改良 | 更新 | レプリケートフォルダーのサーバーのメンバーシップを無効にしても、DFSレプリケーションプライベートフォルダーがクリーンアップされなくなった |
表2 Windows Server 2012 R2のDFSで追加された新機能 |
特に「最初の同期用のデータベースの複製」機能が追加されたことで、DFSを構成する際の同期時間が短縮できるようになったことは喜ばしいことだ。これで、レプリケーションパートナーの追加やハードディスク障害によるディスク交換、DFSレプリケーションデータベース障害からの回復などで、以前より構成および復旧時間は短縮されるだろう。
DFSを構成することで、ブランチサイトのユーザーは自分のサイト内にあるファイルサーバーにアクセスできるようになる。ファイルサーバーへのアクセスが遅いという課題は解消できるだろう。ただし、DFSでは排他制御が行われないという特性をしっかりと理解して、DFSの導入を検討してほしい。
エディフィストラーニング株式会社所属のマイクロソフト認定トレーナー。Active Directory、Network、Security、Hyper-V、Clusterなどを担当。マイクロソフト トレーナー アワード(2010年)およびMicrosoft MVP for Hyper-V(Apr 2010 - Mar 2014)を受賞。個人ブログ『MCTの憂鬱』でマイクロソフト関連情報を発信中。
Copyright © ITmedia, Inc. All Rights Reserved.