既存物理Windows PCの仮想化に挑戦

Pocket

自宅のデスクトップ機を減らそうということで、まずは寝室のゲーム用PCのP2V(Physical To Virtual変換)にチャレンジ。物理マシンがCore2Duo/E6400なので、むしろCore i7のMacBook Pro 15r上のVMWare Fusionで動くようにすれば、パフォーマンスは上がるんじゃね?という狙いも。

■ハード選び

ゲーム用なのでレスポンスが落ちるのはイヤだなということで(3D周りはさすがに妥協するしかないとして)ストレージ周りにこだわってみることに。物理マシンはCドライブがSSD(m4/64GB)、DドライブがHDD(WD/1TB)という構成。ゲーム関係はほとんどDドライブで、レジストリにパスが入っているものが多いので、このドライブ構成を維持したいなと。そこで物色を重ねてチョイスしたのがmatheyの2.5inchx2ベイのThunderboltケース THUNDER DUOです。Thunderboltが2ポートあるのでディジーチェーンができるのもポイント。これに元マシンのCドライブSSDをそのままと、新しく2.5inchのHDDを搭載し、3.5inch HDDの中身をコピーすれば、少なくともストレージインターフェイスであるThunderboltがネックになることはないだろうと。2.5inch化でコンパクトになるのもポイント。Thunderbold HDDやUSB3.0ケースよりは割高ですが、将来的に中身を入れ替えたりしてそれなりに長く使えると期待して投資。Dドライブ用のHDDを8GBのSSDをキャッシュとして用いるSSHDにして3.5->2.5の速度低下を補えるんじゃないかとか。こちらはPS4換装用に注目を集めた東芝のMQ01ABD100Hにしてみました。ちなみにWindows8.1(にアップグレードする前のWindows7)はDSP版でこのSSDとセットで買っているので、そのまま使えばライセンス的にもOKのはず。

IMG_4490-2
IMG_4491-2

背面のパネル(手回しネジ)を開くとこんな感じ。金属製の専用マウンタが2つ出てきます。見た感じ全部アルミかな?放熱性は高そう。小さいファンもついてます。下の写真がHDDをセットした状態。

残念ながらバスパワーでは駆動できず、ACアダプタ(付属)が必須です。まぁ持ち歩いて使うものでもないし、本体への負担が低い方がいいかなとか。ただ(たぶんHDDではなく)冷却ファンの音が結構聞こえます。小型でぶん回すタイプだから仕方ないのかな。片方SSDだし切ったらダメかなぁとか思案中。

比較的高価なThunderboltケーブルが1本(45cm)付属してるので、割高感が多少緩和されます。自宅ではminiDisplayPortでモニタにつないでいるので、その間にディジーチェーンではさみこむ形にしました。MBPを持って出たりする際も、ケーブルの抜き差し数はいままでと変わりません。Thunderbolt経由でON/OFFが制御されているらしく、Macにつなぐと同時に回転音がしだします。

もちろんSSD/HDDはあっさり認識。

(実際はストレージデバイスのみですが)一台のデスクトップPCがこのサイズに凝縮されると思えば良い成果と言えます。

■難航した仮想化

どのみち専用のストレージデバイスを早着するのだから、VMWareにはそのまま物理デバイスとして認識させて使う予定でいました。その方がパフォーマンス出そうだし。しかしこれが難しい。というかMac版であるVMWare Fusionではどうもできないらしい。Windows版Workstationを使って作成するなり、.vmdk定義ファイルを手書きすればどうにかなりそうな気配でしたが、クラスタとか細かいパラメーターを調べて書かないとならなそうだったり、今時は仮想ストレージでもあまりパフォーマンス落ちないという記事を見たりして、結局将来の拡張性をとって仮想ストレージ化する方針に変更。ところがそれすらもMac、というかVMWare単体ではできなそげ。vmware-vdiskmanagerのヘルプみてもできそうな気配がない。VMWare公式のP2V化手段としては、稼働中のWindows機に変換ツールをインストールしてネットワーク経由でMac上のFusionにデータを送って仮想PCを作成するか、そのWindows機自身で仮想イメージ作成までするvCenter Converter Standaloneというツールを使う方式。どちらもそのWindows機が稼働している前提です。今回は先走ってSSD/HDDを取り外してしまったのでもう一度組み付けるのは避けたいなぁと。実際にもPCのストレージ以外の部分が壊れて、ストレージ(データ)を使って仮想PC化したいってケース多いんじゃないでしょうかね。もう少しその辺りをサポートしてくれればいいのにと。

で、Fusionの仮想マシン作成ウィザードがとにかく新規か既存の仮想ストレージファイル(.vmdk)しか食ってくれないならとにかく物理ドライブをvmdkにしてやりゃいいんだろ、ってことで検索。NHCというフリーウェアに同ページで配布している「実ハードディスクの変換」プラグインを入れてやれば可能だと判明。手元にあるWindows7の仮想マシンで実行することに。しかしThunderbolt接続のHDDを仮想マシンに直接認識させることはできなかったので、一旦バラしてSATA-USB2.0変換アダプタでマウント。またNHCは管理者権限で起動しないとドライブが見えませんでした。MQ01ABD100HだけTHUNDER DUOに入れてMacにマウント、それをVMWare-host共有経由で仮想Windows7から見えるようにして、そこをvmdk書き出し先に指定しました。

無事vmdkが作成できたので、VMware Fusion6からカスタムで新規仮想マシンを作りストレージとしてこれを指定したところあっさりWindows8.1が起動してくれました!パーティションではなくドライブごと変換できたのが良かったのかもしれません。余計なデバイスドライバ類をアンインストールし、ライセンス認証を電話で行って問題なし。一旦シャットダウンしてさらに1TBの新規仮想ストレージをアタッチして、Windows上でフォーマット。この際、そのままだとvmdkファイルが仮想マシンファイル内に生成されてしまい、別ドライブに置けなくなるので、「参照」から別の場所を指定するのがミソ。今度はSATA-USB2.0アダプタでWDのHDDをマウントしてドラッグコピー。だいたい20MB/sくらいで進行。まぁUSB2.0だからこんなもんですかね。

コピー終わったらSSDを初期化してTHUNDER DUOに戻し、Cドライブのvmdkファイル(を含む仮想マシン)を置き、DドライブのvmdkはMQ01ABD100Hのまま使用。

■パフォーマンスチェック

めっちゃ特殊なケースだと思いますが一応参考にベンチデータをば。

Windows8.1ではエクスペリエンスインデックスがなくなってますが、WIN SCORE SHAREを使って復活させ、以前に計測したこちらの記事のデータと比較します。

  仮想化前
(Core2Duo/E6400/2.13GHz)
仮想化後
(Core i7/2GHz/VMWare Fusion6)
プロセッサ 6.4 7.2
メモリ(RAM) 6.7 5.5
グラフィックス 6.7 2.9
ゲーム用グラフィックス 6.7 3.0
プライマリハードディスク 7.6 7.8

 

うーむ、やはりというか、CPUはクロックで落ちててもスコアはだいぶ向上してます。GPU周りが大幅にショボくなるのは覚悟してましたがやはりスコアでみると凹むなぁ。そしてメモリも落ちているのが想定外。物理PCはDDR2世代なのに。仮想化のオーバーヘッドが大きいってことですかね。2GBしかアサインしてないから?ストレージがかろうじて勝ったのはお金かけた甲斐があったようでなにより。全体に体感は充分サクサクしています。3D系のゲームをしなければ全く問題なさげ。

CristalDiskMarkはこのm4 SSDを入れてWindows7で測った時のものが上。仮想化状態が下(左がSSD、右がHDD)です。

VPC-SSD_DiskVPC-HDD_Disk

どう考えてもちゃんと測れてない??。1GB/s超とかありえないし、SSDとHDDで差がなさ過ぎる。計測が500MBでSSHDのキャッシュで賄えてしまってる可能性はありますが、それにしてもCドライブもこんなに速いんだろうか?

 

とりあえずこれで一台デスクトップを減らすことができました。仮想化万歳!ちょっと恐いのはMacからすると外付けデバイスなのでうっかりVMWareの終了とドライブのアンマウントを行わないまま物理ケーブルを抜いて持ち出してしまわないか、ってことです。気をつけねば、、、

あとは仕事&エンコマシン(少しでも速いCPUが必要)と録画マシン(PCI / PCIexカードスロットが必要)ですが、うーんこれはさすがに仮想化するわけにもいかないんだよなぁせめてニコイチにとも思うけど、前者はパワー優先、後者は24時間稼働の省エネ優先という相反するスペックを追求しないとだからなぁ…

「既存物理Windows PCの仮想化に挑戦」への2件のフィードバック

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)