ESXiにて仮想化を行いました。
パソコンの構成は下記の通りです。
CPU i7 3770
Mother BOXDQ77MK
Mem 12GB
Storage HDD40GB
HDD160GB
SSD64GB(SATA6G)
Total 264GB
電源 500W
仮想マシンは4台作成しました。
構成は
1台目 UbuntuServer メモリー384MB ディスク30GB 1コア割当
2台目 Windows Server 2008 メモリー2GB ディスク80GB 1コア割当
3台目 Windows Server 2008 R2 メモリー2GB ディスク70GB 1コア割当
4台目 Windows 8 メモリー2GB ディスク50GB 1コア割当
です。
Storageの使用内訳は
HDD40GB→ESXi+UbuntuServer
HDD160GB→Windows Server 2008+Windows Server 2008 R2
SSD64GB→Windows 8
です。
下の画像は実際の動作の様子です。
まずサーバー(今回作ったマシン)側の写真から。
簡単な画面表示でF2キーを押すことでサーバーそのものの最低限の設定が可能です。(仮想マシンの設定はできない。ここで設定できるのはipアドレスの固定設定等の設定のみ。)
次はクライアント側です。
クライアントPCよりESXi上のOSを操作します。
クライアントPCになれるのはWindows機のみです。
これは管理ソフトがWindows用しかないためです。
ちなみにウェブ上や端末からの接続でも設定できるらしいですが、両者ともに設定がわからない(SSLの設定等。あと前者は確か有料機能だったような・・・)ため使用しませんでした。この場合クライアント側のOSの選択肢は増えると思われます。
上図は仮想マシンが同時起動している様子をキャプチャーしました。
が、しかしこの直後中古で買った500GBのHDDがクラッシュorz
購入してすぐだったのでお店で返金してもらい急遽SSDを購入。再度レビューいたします。
ちなみにSSDにした理由は特にありません。
SSDに改装しSSD上にWindows 8、HDD上にWindows Server 2008 R2をインストール中です。
使用状況のキャプチャー写真です。メモリー使用量が高いことがわかります。
CPUも結構使用していますがまだキャパシティーがあります。
上記の状態はWindows Server 2008 R2にSP1を当てていて他のOSは何もしていないときのキャプチャーだったと思います。
なおUbuntuServerが起動していないのはVMware Toolsがインストールできず正確な負荷測定ができないためです。 今までVMware Toolsがインストールされていない状態でも仮想マシンはインターネットに接続できていましたが、今回UbuntuServerのみ調子が悪くインストール時に必要なソフト(gcc) がインストールできず、最終的にVMware Toolsがインストールできませんでした。
さて、せっかくですのでWindows 8のエクスペリエンスインデックスを起動してみました。
エクスペリエンスインデックスを起動するにあたり、VMware Toolsというドライバーの導入とWindows Updateにてすべてのバッチを適用を行いました。ちなみに実際ドライバーを当てなくても全く使用できないことはありませんが、動作がぎこちなかったり付加機能が利用できたりするため普通はインストールします。
エクスペリエンスインデックスの結果について考察です。
プロセッサの値が低いのは1コアしか割当ていないためです。
通常環境でコアをすべて割当てれば7、8ぐらい余裕で出るはずです。
またメモリーも2GBしか割当ていないためスコアが低くなっています。
グラフィックスはVMのドライバーで動作しているため低いのだと考えられます。
ハードディスクのスコアが高いのはSSDを装着しているからですが、仮想マシン上でも8.9と高評価です。多分ですがSSDに関してはほとんどオーバーヘッドはないでしょう。
ちなみにコア4割当、メモリー3GBの結果はこうなりました。
再計測したところメモリーのスコアはあがりましたが、CPUのスコアに変更はありませんでした。
というわけで、ここまではVT-x+ESXiの使用レビューと全く変わりません。
本題はここからです。VT-dを実際に使用します。
上図はマザーボード上のデバイスが表示されています。LANやサウンドなど様々な物が 表示されています。
これらのデバイスを仮想マシンで使用可能にしようというのがVT-dです。
(すごく大雑把な説明です。またVT-dでも使用できない物も含まれています。)
蛇足ですがUSBに関してはVT-xでも仮想マシンから使用可能です。
手元にパーツがないためわかりませんがPCIで増設したUSBはVT-x環境だと使用できないかもしれません。
マザーボード上に元々あるUSB端子に接続されたUSBデバイスは仮想マシンの設定を編集することで仮想マシンに認識することができます。
今回はTVチューナーボードの接続し仮想マシン上に録画サーバーを構築したいと思います。
まず仮想マシンに接続したい機器を選択します。今回は下4つの機器が対象です。
チェックボックスを入れてOKを押すとESXiの再起動が求められますので再起動します。
再起動後、仮想マシンの設定より接続したい機器を選択します。
先ほどチェックボックスを入れた機器を選択します。
これをチェックボックスに入れた機器すべてに対して行います。
そして機器の登録が終わったらOKを押して編集を終了します。
ここで仮想マシンを起動したところ大変なことに・・・
ESXiがダウンしてしまいました。クライアント上ではサーバー(ESXiマシン)に接続できないとエラーが・・・
このとき友人と電話していて紫スクリーンのことを話したところ、この紫スクリーンは「紫式部」と命名されました。
登録台数をかえて再度トライしましたが結局4紫式部(4回すべて紫スクリーン発生)となってしまいました。
※歴史上の偉人、紫式部さんには心よりお詫び申し上げます。
ここで「今回のレビューはここまでです」というと反感を買いそうですのでもう少しトライしてみます。
今回のテレビチューナーはPCI接続ですがいろいろ調べたところ内部的にはUSBでつながっているという記事を見かけました。
画像にはありませんが確かにPCI機器を登録するときUSB Controllerの文字がありました。
つまりUSBで接続するタイプのチューナと変わりがないということです。
(詳しく説明すると今回買ったチューナーはUSB 増設カードにUSB TVチューナーを接続した場合と同じ構成)
となると、先ほどVT-xで書いた「手元にパーツがないためわかりませんがPCIで増設したUSBはVT-x環境だと使用できないかもしれません。」という私の憶測は間違っていて、USBであれば元々のインターフェイスによらず接続できる(チップセット提供のUSBかPCIのUSB Controller提供のUSBかという意味)のではという結論に至りました。
しかし、本当かどうかわからないため試してみます。
まずパススルーの設定を有効にした状態でTVチューナー上のUSBデバイスの接続を試みます。
まずUSBコントローラを追加します。
USB2.0/1.1をサポートする設定にします。
次へを押すと確認画面が出るので問題がなければOKを押します。
次にUSBデバイスを選択しようとしましたが使用不可となっており接続できませんでした。
今度はPCIパススルーを無効にした状態で同じ作業を行います。
パススルーの設定画面でチェックボックスのチェックを外します。
外したらOKを押してESXiを再起動します。
再起動後、仮想マシンの設定よりUSBデバイスの設定を行うと項目が有効になっていました!
USBデバイスを選択します。
設定終了後、OSを見てみると
デバイスマネージャー上に機器が表示されていました。
ここまでくれば通常のTVチューナー設定作業と同じです。
ドライバーを入れます。
ここでピンときた方がいると思いますがこのチューナーはいろいろ楽しめるチューナーです。が、今回は通常環境で使用します。
視聴ソフトをインストールします。
そして視聴ソフトが起動してチャンネル設定ですが動作が今ひとつです。せっかちな私はOK押したりもう一度起動して設定し直したりしました。それでも遅かったので強制終了しようとしたところフリーズしてしまいました。これが新たな悲劇を生むことに・・・
強制終了を実行したところ、Windows 8がクラッシュしてしまいました。
そして再起動してもう一度視聴ソフトを起動したところ「機器が認識できません」とのメッセージが・・・
先ほどのクラッシュでドライバーが飛んだのかと思いドライバーの再インストールを使用としたところ・・・
またもや認識できず・・・
もしかすると仮想マシンの設定が変わったのかと思い設定を見てみると衝撃の事実が・・・
追加したはずのデバイスが見えない・・・
ESXiを再起動したり他の仮想マシンで認識できないか確認したりしましたが結局認識できず・・・
まだ確定ではありませんがTVチューナーボードはだめになってしまったようです。
(おそらくチップ制御中に無理矢理操作しようとしたため。)
地デジサーバーの夢はここで崩れ去ってしまいましたorz
では、VT-dの検証は失敗したのかということになりますが不幸中の幸いうまくパススルーできた物がありました。
オンボードのサウンドです。
ESXi(VMware Tools)は仮想のサウンドカードをもっていないため物理的か仮想サウンドカードを準備する必要があります。
ということでオンボードのサウンドをパススルーしました。
パススルー設定後起動するとOS上でサウンドを検出しました。
パススルーを設定すると他の設定の変更に制約が出る場合があります。(特にメモリー。)
メモリーを3GBにして再度エクスペリエンスインデックスを行おうとしたところ、仮想マシンの設定画面でエラーが出てしまいました。この場合は一度パススルーしたデバイスを削除し、メモリーを増やしてから再度追加するとうまくいきます。またはESXi側が増やしたメモリー量に合わせて設定変更しますかと聞いてくる場合があります。エラーが出たのは設定変更をしかなったためだと思いますが詳しく覚えていないです。
VT-dのまとめは下記の通りです。
○PCIの機器であっても何でもパススルーできる訳ではない
○インターフェイスがPCIであっても内部的にUSB接続の物はPCIパススルーではなくUSBパススルーで認識できる
○よって、インターフェイスがPCIであっても内部的にUSB接続の機器はVT-dに対応していなくても接続できるはず。※
(※本来はVT-dを切って再度検証しなければならないが切ってしまうとサウンドが認識できなくなり視聴ソフトが動かなくなること、おそらくTVチューナーカードが壊れてしまいこれ以上の検証はできないことから最後に関しては私の憶測という扱いにします。)
最後に仮想化支援機能を使用するためには1 CPUが仮想化支援機能に対応していること、2 マザーボード(チップセット)が仮想化支援機能に対応していること、3 UEFI(BIOS)が仮想化支援機能に対応していることです。
3 について詳しく説明します。マザーボードのメーカーに拠ってはUEFI(BIOS)に仮想化支援機能の設定項目がなく仮想化支援機能を有効にできない場合があります。(だいたいの場合出荷時に仮想化支援機能は使用しないという設定になっているため)よって設定項目がない場合、仮想化支援機能を利用できません。
以上でVTの検証を終了いたします。