第7回 信頼性とスケーラビリティを高めた新ファイル・システムReFS:Windows Server 2012クラウドジェネレーション(2/2 ページ)
年々大容量化するディスクや仮想ディスクなどの普及により、大容量のストレージを生かすファイル・システムが求められている。高い信頼性とスケーラビリティを実現した新しいファイルシステムReFSについて解説する。
それでは実際にReFSボリュームを作成してみよう。といっても、従来のNTFSボリュームを作成するのと手順は同じである。サーバ・マネージャやコンピュータの管理ツールでボリュームを作成してフォーマットするか、コマンド・プロンプトを開いてformatコマンドを実行すればよい。ファイル・システムのタイプとして、NTFSではなくReFSを選べば、すぐにReFSでフォーマットできる。ReFSにおけるクラスタ・サイズは理論的には可変長のはずだが、Windows Server 2012の場合は、クラスタ・サイズは64Kbytesしか選べないようである。
ここでは、ReFSでは従来よりも大きなサイズのディスクがサポートしていることを確認するため、まずは仮想的な512Tbytesの記憶域プールを作成し、その上にReFSボリュームを作成してみる。まずWindows Server 2012のサーバ・マネージャを起動し、「ファイル サーバと記憶域サービス」の管理画面を表示させる。記憶域を作成したら、[ボリュームの新規作成]メニューを起動して、ReFSのボリュームを作成する。
ボリュームの新規作成ウィザード
記憶域プールで仮想的なディスクを2つ作成してみた。サイズは1Pbytes(=1024Tbytes)と2Ebytes(=2048Pbytes)である。この上にReFSのボリュームを作成してみる。
(1)サーバ名。
(2)作成した1Pbytesの仮想ディスク。記憶域プールを使うとこのように、実際にディスクサイズよりもはるかに大きなディスクを作成できる(シン・プロビジョニング)。このディスクの上にReFSのボリュームを作成してみる。
(3)作成した2Ebytesの仮想ディスク。
ウィザードの次の画面では作成するボリュームのサイズを指定する。
ウィザードのこの次の画面ではボリュームに割り当てるドライブ名を指定して、次へ進む。そして最後にファイル・システム形式とボリューム名を入力してボリュームの作成を開始する。
ReFSボリュームの作成
クラスタ・サイズも64Kbytes固定であり、ユーザーが指定すべき項目は何もない。このウィザードでは、常にクイック・フォーマットされるようである。
(1)「ReFS」を選択する。
(2)クラスタ・サイズはReFSの仕様では2のべき乗単位で可変だが、Windows Server 2012では「既定」と「64Kbytes」の2つしか選べない。どちらでも意味は同じである。
(3)ボリューム名。
(4)8.3形式の短いファイル名はReFSでは利用できない。
ボリューム名などを入力後、[次へ]をクリックすると確認画面が表示されるので、[作成]をクリックしてフォーマットを開始する。
コマンド・プロンプト上でボリュームをフォーマットする場合は次のようになる。パーティションはあらかじめコンピュータの管理ツールやdiskpartコマンドを使って作成しておく。
C:¥>format e: /fs:refs /q
ファイル システムの種類は REFS です。
警告: ハード ディスクのドライブ E: のデータは
失われます。
フォーマットしますか (Y/N)? y
クイック フォーマットしています 512.0 TB
ボリューム ラベルを入力してください。
(半角で 32 文字、全角で 16 文字以内)
必要なければ、Enter キーを押してください: REFS_VOLUME
ファイル システム構造を作成します。
フォーマットは完了しました。
512.0 TB: 全ディスク領域
512.0 TB: 使用可能領域
C:¥>
作成されたボリュームの状態を次に示す。このように記憶域プールを使えば、実ディスク・サイズを超える巨大なパーティションを作成できる。
作成されたReFSボリューム
作成された512TbytesのReFSボリューム。Windows Server 2012の記憶域プールと組み合わせると、実ディスクのサイズとは関係なく、このような巨大なボリュームを作成できる。
ReFSファイル・システムの情報をコマンド・プロンプトで確認するには、「fsutil fsinfo volumeinfo <ドライブ名>」というコマンドを実行する。
※fsutilコマンドでReFSボリューム(この例ではE:ドライブ)の状態をチェックする
C:¥>fsutil fsinfo volumeinfo e:
ボリューム名 : REFS_VOLUME
ボリューム シリアル番号 : 0xb8e2025a
コンポーネント最大長 : 255
ファイル システム名 : ReFS
読み書き可能です
大文字と小文字を区別したファイル名をサポート
ファイル名の大文字小文字を保持
ファイル名での Unicode 使用をサポート
ACL の保持と強制
スパース ファイルをサポート
再解析ポイントをサポート
ファイル ID で開く操作をサポートします。
USN ジャーナルのサポート
C:¥>
次は、どのくらいのファイルまで作成できるのか試してみよう。大きなファイルを作成するには、「fsutil file createnew <ファイル名> <サイズ>」というコマンドを利用する(TIPS「巨大なサイズのファイルを簡単に作る方法」参照)。
※ReFS上にファイルを作成してみる。
E:¥>dir …ファイル作成前の状態
ドライブ E のボリューム ラベルは REFS_VOLUME です
ボリューム シリアル番号は B8E2-025A です
E:¥ のディレクトリ
2013/04/02 15:30 365 test.txt
1 個のファイル 365 バイト
0 個のディレクトリ 562,386,862,014,464 バイトの空き領域 …512Tbytesのボリューム
E:¥>fsutil file createnew e:refs-testfile1-256tb.data 281474976710656 …256Tbytesのファイルの作成
エラー: ディスクに十分な空き領域がありません。 …失敗した
E:¥>fsutil file createnew e:refs-testfile2-255tb.data 280375465082880 …255Tbytesのファイルの作成
ファイル E:¥refs-testfile2-255tb.data が作成されました …成功した
E:¥>dir
ドライブ E のボリューム ラベルは REFS_VOLUME です
ボリューム シリアル番号は B8E2-025A です
E:¥ のディレクトリ
2013/04/04 15:2280,375,465,082,880 refs-testfile2-255tb.data …作成されたファイル
2013/04/04 15:30 365 test.txt
2 個のファイル 280,375,465,083,245 バイト
0 個のディレクトリ 282,011,396,866,048 バイトの空き領域
E:¥>
理論的にはもっと大きなファイルも作成できるはずだが、現在のWindows Server 2012の実装では、256Tbytesまでに制限されているようである。NTFSの場合は最大でも16Tbytesまでのファイルしか作成できなかったため、これでも十分であろう。
ReFSボリュームの整合性チェック
ReFSでは自動的な整合性チェックや(必要なら)データ修復などが行われるため、ユーザーが明示的にchkdskのような操作をする必要はない。ユーザーが手動でchkdskを実行しても、次のようなメッセージが表示され、何も行われない。
※ReFSボリュームにchkdskを実行してみる
E:¥>chkdsk e:
ファイル システムの種類は REFS です。
ReFS ファイル システムをチェックする必要はありません。
E:¥>
今回はWindows Server 2012で導入された新しいReFSについて見てきた。より巨大なサイズのストレージやファイル・サイズへの要求に対し、単にNTFSを拡張するのではなく、まったく新しいファイル・システムとしてReFSは開発された。システムをインストールするのには使えないが、データ用ストレージとしては十分な機能を備えている。いまのところWindows Server 2012でしか使えないし、アプリケーションの互換性や、出てきたばかりで実績不足もやや気になるところだが、記憶域プールの機能と組み合わせた場合の自動整合性チェックなどの機能は気になるところだ。今後の普及に期待したい。
Copyright© Digital Advantage Corp. All Rights Reserved.