仮想マシンにおいてもUSBデバイスを利用したいという需要は以前より存在し、VMware Workstationなどではすでに利用可能となっている。VMware ESX、VMware ESXiでは、vMotionに代表されるような仮想マシンの可搬性の提供と、USBデバイスのような物理デバイスへのアクセス性の提供は相反する部分があるため、結果的にUSBデバイスの利用はサポートされてこなかった。
vSphere 4.1では、仮想マシンの可搬性を損うことなくUSBデバイスを利用可能にする機能が新たに実装された。物理ホスト側に装着されているUSBデバイスを仮想マシンから利用可能にし、かつvMotionを実行しても仮想マシンから該当USBデバイスの利用を継続することができる。このUSBパススルー機能はIntel VT-dやAMD IOMMUのようなハードウェア支援機構を活用しているわけではないため、ESX/ESXi 4.1の互換性認証を取得済みで、USB 2.0もしくはUSB 1.1のコントローラを搭載しているサーバであれば、特に機種を選ぶことなく利用することができる。また、無償版のVMware vSphere Hypervisorを含む、全てのエディションで利用可能な機能である。
利用形態は「ESX 4.1もしくはESXi 4.1が動作する物理ホストに装着されているUSBデバイスを、仮想マシンから利用する」というものである。vSphere Clientが動作しているマシンに装着されているUSBデバイスを仮想マシンから利用できるわけではないため、ご注意いただきたい(将来的にはこちらの機能を提供する計画もあるが、4.1リリースではこの機能は提供されていない)。
また、ある物理USBデバイスに割り当てることができる仮想マシンは1つに限定される。単一のUSBデバイスを複数個の仮想マシンに同時に割り当てることはできない。
USBパススルー機能を利用する際には、2段階の構成手順を踏む。仮想マシンに対する仮想USBコントローラの構成と、USBデバイスの接続である。初めにUSBコントローラの追加を行う。
仮想USBコントローラを構成済みの仮想マシンでは、即座にUSBデバイスを追加することができる。ハードウェアの追加ウィザードからUSBデバイスの追加作業を行う。
ウィザードを進めると、現在配置されている物理ホストが認識しているUSBデバイス一覧が表示されるため、ここで接続したいデバイスを選択する。またここで、デバイスの接続中にvMotionの利用をサポートするかどうかを指定するチェックボックスが表示されるため、vMotionと併用したい場合はこのチェックボックスを有効化しておく。
USBコントローラ、USBデバイスの構成を行った仮想マシンをパワーオンすると、ゲストOS側から該当デバイスが認識され利用可能になる。
USBパススルー機能はvMotionと併用可能である。デバイスの構成時は仮想マシンが配置されている物理ホストに該当USBデバイスが接続されている必要があるが、仮想マシンのパワーオン後はvMotionを用いて仮想マシンのライブ・マイグレーションを行うことができる。仮想マシンを他の物理ホスト上に移行した後であっても、ゲストOSは該当USBデバイスの利用を継続することができる。
vMotion実行後は、ESX同士がバックエンドで通信を行うことでUSBデバイスへのアクセス性を継続する。このため、従来型ESXを利用している場合は、事前にファイアウォールの設定を変更しておく必要がある。
USBパススルー利用時のネットワークプロトコルには、VMware Remote Console (TCP 903)が用いられている。このポートは入力用ポートとしては常用されるものであるためデフォルトで開放されているが、ESXからの出力先ポートとしてはデフォルトでは塞がれているため開放する必要がある。以下のコマンドを各ESXのサービスコンソール上で実行することで開放できる。
# esxcfg-firewall --openPort 903,tcp,out,"USBvMotion"
詳細は下記のKnowledge Baseで解説されている。
http://kb.vmware.com/kb/1032885
なお、ESXiは4.1リリースではファイアウォール機能を保有していないため、上記の設定も不要である。
USBパススルー機能を有効化した仮想マシンには以下の制限事項・考慮点が発生する。
また、市場には多数のUSBデバイスが流通しており、それらを全てVMwareで試験することは難しいため、正式にサポート対象としているデバイスは現時点では限定的なものとなっている。テスト済みで正式サポート対象として取り扱われているUSBデバイスの一覧は以下のKnowledge Baseで公開されている。
http://kb.vmware.com/kb/1021345
今回は、仮想ハードウェアに関する機能拡張ということで、仮想シリアルポートに関する機能拡張と、USBデバイスのパススルー機能について解説した。ネットワーク機能やストレージ機能のように仮想マシンを利用する上で必須となる機能ではないが、物理マシンからの移行の障壁となる要素を減らす、便利な機能である。
本連載「VMware vSphere 4.1の進化を探る」は、今回で最終回である。マイナーバージョンアップではありながら、さまざまな機能が進化しているVMware vSphere 4.1を、ぜひ使いこなしていただきたい。
Copyright © ITmedia, Inc. All Rights Reserved.