パフォーマンスの計測
VirtualBoxには、ホスト側とVM側でのパフォーマンスおよびリソース使用量を計測する機能も設けられている。VirtualBoxがゲストおよびホストに対して計測可能なメトリックの一覧は、「VBoxManage metrics list」にて確認できるが、その一例を挙げると、CPU/Load/User(ゲストおよびVMでのユーザーモードにおけるプロセッサ使用時間の比率)、CPU/MHz(全プロセッサの平均速度)、RAM/Usage/Free(アプリケーション群が使用可能な物理メモリ量)、RAM/Usage/Used(メモリ上でVMプロセスの占めるサイズ)などが計測対象のメトリックだ。
この機能の具体的な使用法としては「VBoxManage metrics setup -period 10 -samples 5 host」という形式のコマンドにて、データ収集の間隔(この場合は10秒)および保持させるサンプル数(この場合は5)を指定すればいい。ここでhostの代わりにVMの名前を指定すると、VM側が計測対象となる。またどのメトリックを計測するかの指定も可能で、例えば「VBoxManage metrics setup -period 10 -samples 5 "Fedora" CPU/Load/User, RAM/Usage/Used」と指定すると、Fedora VMにおけるプロセッサとメモリに関する使用状況を確認できる。
収集したデータの取得はqueryコマンドにて行う。例えば「VBoxManage metrics query host CPU/Load/User」と指定すると、ホスト側のプロセッサ情報が表示されるが、その際にメトリック名を未指定にすると、すべてのメトリック情報が表示される。
こうしたメトリック情報は、collectコマンドを用いた連続表示をさせることも可能で、例えば「VBoxManage metrics collect -period 3 -samples 5 "Fedora" CPU/Load/User,RAM/Usage/Used」というコマンドを実行すると、VM側のプロセッサとメモリに関する情報が3秒間隔で更新されるようになる。このモニタリングプロセスを停止させるには、Ctrl-Cキーを押し下げればいい。
まとめ
VirtualBoxの構成は、GUIには使用頻度の高い機能だけを集めることでシンプル化し、より包括的な制御機能はCLIにて提示するようになっている。CLI操作はVirtualBoxのVM群をリモート管理する際に不可欠であるが、ローカルで使用する場合においても、パフォーマンス計測など一部の高度な機能にはCLIからしかアクセスできない。また複数のコマンドを繰り返し実行するタイプの作業は、CLIで一括処理させることで、かなりの負担を軽減できるはずである。例えば特定のVM状態への復帰を頻繁に実行するという開発者ならば、スナップショット復帰用のコマンド群を1つのスクリプトにまとめておけばいいだろう。いずれにせよVirtualBoxには強力なCLI機能が装備されているのであり、これを上手く使いこなせれば、作業効率を大幅に改善できるはずだ。
