2017年8月10日木曜日

記憶域プールの再構成

以前に創作用PCをワークステーションにした際に、リビングにある24時間稼働の母艦の5階建てNASに記憶域プールを導入したのですが、プールの構成を忘れた&ドキュメント用ドライブの容量が無くなってきたので、再編成することにしました。

従来のドライブ構成
C システム用 128GB SSD
D ドキュメント用 2.5TB HDD
E 音楽・ビデオ・画像用 3TB HDD
F 一時利用HDD 500GB 仮想HDD
G バックアップ用 8.2TB 仮想HDD
O リカバリ用 2TB HDD
※ 記憶域は6TBと3TBの2本のHDDで構成。バックアップドライブなので冗長はなし。

これを、
C システム用 128GB SSD 変わらず
D ドキュメント用 8TB HDD 新規購入
E 音楽・ビデオ・画像用 8TB HDD 新規購入
F 一時利用HDD 500GB 仮想HDD
G バックアップ用 16TB 仮想HDD
※ 記憶域は従来のDEFGOの5本で構成に変更。冗長なし。

ところがWindows8.1のコントロールパネルで記憶域プールを作成すると、何台で構成しても並列書き込み処理が2台になる?っぽいので、念のため、一部をPowerShellで作成することに。

で、実際に作ろうとするのですが、記憶域を作成するコマンド
New-VirtualDisk -StoragePoolFriendlyName "NAS" -FriendlyName "Backup" -ResiliencySettingName Simple -Size 15TB -ProvisioningType Fixed -NumberOfColumns 5 -WriteCacheSize 0
がエラーになってしまう。
どうも、ディスクが足りないよと言われているので、下げてみると、
-Size 12TB → ダメ
-Size 8TB → OK
との結果に。シンプロビジョニングを入れない方がパフォーマンスが良いという噂により
-ProvisioningType Fixed
にしていたのですが、どうやら、5台並列を明示しているため、実効容量は最小のディスクの5倍になっているっぽい。
で、実験してみるとシンプロビジョニングを入れてもパフォーマンスに有意な差はなさそうなので、
-ProvisioningType Thin
で作ろうと思ったのですが、さて、これってシンプロビジョニングだから15TB作れているだけで、8TBぐらいで「ディスク足せ」って言われないだろうか?
最小サイズの物理ディスクが容量不足になったら、並列を4台に…はならないような気がする。

そこで、続けて実験。
-ProvisioningType Fixedで-NumberOfColumnsを変更して作成可能な容量とパフォーマンスの変化を観察してみた。
1 -NumberOfColumns 5 & -ProvisioningType Thin → OK 15TB
2 -NumberOfColumns 5 → NG 10TB / OK 9TB
3 -NumberOfColumns 4 → NG 13TB / OK 12TB
4 -NumberOfColumns 3 → NG 15TB / OK 14TB
5 -NumberOfColumns 2 → OK 15TB
6(おまけ)コンパネから作ったやつ
やっぱり遅いので調べてみると、何と並列1!そりゃ遅いわけだ。
※パラメータ確認のコマンド
get-virtualdisk | ft friendlyname,resiliencysettingname,numberofcolumns,numberofdatacopies,@{expression={$_.size/1GB};Label="Size(GB)"}

結論:
順当に-NumberOfColumnsが大きい方がパフォーマンスが良さそうですが、同時にNumberOfColumns 3ぐらいまでは大差ないのも事実。バックアップはイメージ取りなので、シーケンシャルライトの性能が一番影響を与えそう。
ってな訳で、NumberOfColumns 3で14TBを実装することにしました。

----------------------------------------------------------
参考:
今回記憶域再構成の対象になる子たちの単体の成績。どれも結構古いので、まぁイマイチですね。これがOS標準の機能で上記のスペックになるんだから、中々良いんじゃないでしょうか。願わくばコンパネからでもパフォーマンスを最大化してほしいですけどね。

0 件のコメント:

コメントを投稿