連載
» 2010年11月18日 00時00分 公開

仮想PCで学ぶ「体当たり」Windowsシステム管理:第11回 Windowsのディスク管理をマスターする(前) (2/5)

[打越浩幸,デジタルアドバンテージ]

仮想ディスクは最大で何台接続できる?

 仮想マシンで利用できる仮想ディスクの最大数は、利用できるインターフェイスによって決まっている。

 Virtual PC 2007やWindows Virtual PCの場合は、利用できるディスク・インターフェイスがIDEに限られるため、最大でも3台までしか利用できない。古いIDEではプライマリとセカンダリの2つのインターフェイスがあり、それぞれにマスタとスレーブの2台の物理ディスク(全部で4台まで)を接続できるが、そのうちの1つは仮想CD/DVDドライブに固定的に割り当てられているため、利用可能な仮想ディスクは3台までとなる。

仮想マシンに接続できる仮想ディスクは3台まで
Virtual PC 2007やWindows Virtual PCでは、合計4台のIDEデバイスを接続できるが、1つはCD/DVDドライブに割り当てられているので、仮想ディスクは3台までしか利用できない。
 (1)ディスク1は通常はゲストOSのブート用。
 (2)通常はプライマリのスレーブ。
 (3)通常はセカンダリのスレーブ。
 (4)通常はセカンダリのマスターに接続されている。

 1インターフェイスあたり127Gbytesなので、実現できるボリューム・サイズは最大でも380Gbytes程度に制限される。これよりも大きなディスク領域を使いたければ、外部のファイル・サーバ/NASなどに接続したり、iSCSIインターフェイス経由で接続するなどの方法を検討する必要があるだろう(iSCSIについては今後、この連載で取り上げる予定)。

 Virtual Server 2005やHyper-Vの場合は、1つの仮想マシンに対して、仮想SCSIインターフェイスを最大で4つまで追加できるので、接続できる仮想ドライブの数は飛躍的に多くなる。SCSIでは、1つのインターフェイスごとに最大で7台(Virtual Server 2005のSCSIインターフェイスの場合)、もしくは64台(Hyper-Vの仮想SCSIインターフェイスの場合)のディスクを接続できるからだ。仮想マシンごとに4つの仮想SCSIインターフェイスを追加できるので、全体では非常に大容量の仮想ディスク・システムを作成できる(IDEでもSCSIでも、仮想ディスク・ファイルに含まれるデータは同じである。どちらのインターフェイスに接続しても、同じように動作する)。とはいえ、仮想ディスク・ファイルに同時にアクセスすることになるので、実機のようなパフォーマンスは得られないが、試してみる価値はあるだろう。複数のディスク(特に3台以上)あれば、OSの持つRAID機能の実験や操作などが簡単に行えるからだ。

 そこで、Hyper-V上の仮想マシンにWindows 7 Ultimate Editionをインストールし、仮想SCSIインターフェイスを1つ追加して、さらに仮想ディスクを64台追加してみたのが次の画面である。各仮想ディスクのサイズは、制限いっぱいの2Tbytesにしているので(もちろん容量可変タイプにすること。容量固定だと、本当に2Tbytesの物理的なディスクが必要になる)、うまくいけば2×64で合計128Tbytesの巨大なボリュームを作成できるかもしれない(実際には、後述するように、これは不可能)。なお、本来ならばSCSIインターフェイスをさらに3つ追加して(合計4つにして)、そのそれぞれに64台の仮想ディスクを接続することも可能だが、手間が掛かりすぎるので、とりあえず64台だけで試している。

仮想ハードディスク・フォーマットとUnique ID
 今回は仮想ディスクを1台ずつdiskpartコマンドで作成している(コマンドをファイルにしておき、「diskpart /s <スクリプト・ファイル名>」で一括実行できる)。仮想ディスクには1つずつ異なる、16bytesの「Unique Id」という数値情報が書き込まれており(前掲の仕様書参照)、例えば(スナップショットなどでも利用されている)差分ディスクではこのID情報を使って親の仮想ディスクを識別している(ファイル名が同じでも、元の親ディスクのID情報を持っていなければ、正当な親ファイルであるとみなさない)。そのため、ファイルをコピーして仮想ディスク・ファイルを作ると、同じIDを持つ多数のファイルが存在することになる。個人的には、今までコピーして作成した仮想ディスク・ファイルで、内容を上書きコピーしたり、名前をわざと同じになるように変更したりするなど試したことがあるが、問題になったことはない。それでも、実運用環境で利用するような場合は、念のために毎回新規作成するようにした方がよいだろう。


SCSI仮想ディスクを64台追加した仮想マシン
これはHyper-Vの仮想マシン設定画面。仮想SCSIインターフェイスを1つ追加すると、その下に最大64台の仮想ディスクを追加できる。ここでは2Tbytesの仮想ディスクを64台追加してみた。
 (1)追加した仮想ディスク。
 (2)SCSIコントローラは4つまで追加できる。
 (3)1つのSCSIコントローラに、最大64台の仮想ディスクが追加できる。
 (4)追加した仮想ディスク・ファイル。

 この状態で仮想マシンをオンにしてみたところ、特にエラーになることもなく、ゲストOSが起動した。仮想ドライブの数が多いため、スナップショットなどを作成/操作するとかなり待たされる感じがするが、それ以外は特に問題なく利用できるようである。

 起動後のディスク管理ツールの画面を次に示す。未フォーマットなので、すべて「初期化されていません」となっているが、初期化すれば、台数が多い以外は、特に何の問題もなく利用できた。

仮想ディスクが64台接続されたゲストOSの例
ゲストOS(Windows 7 Ultimate)を起動して、ディスクの管理ツールを開いたところ。ディスクを初期化するため画面が表示される。
 (1)これは64台目のディスク。
 (2)サイズは2Tbytes。初期化していないので、未割り当て状態になっている。
 (3)ディスクの初期化の画面。

 なおSCSIインターフェイスを利用する場合は、仮想マシンの実行中にも動的にディスクを追加できるというメリットもある(削除もできるが、使用中のデータなどがあると喪失する危険性があるので注意すること)。

 ディスクの初期化やボリュームの作成方法については、次ページ以降で解説する。

Copyright© Digital Advantage Corp. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。