Linuxの仮想環境 - KVM+QEMU w/ Intel VTなCore 2 Duo はかなり速そう

たまたまIntel VT対応なCPUのマシンが手に入ったので、ちょっとLinuxKVM+QEMUを試してみました。その結果をちょちょっと書いてみます。

ちょちょちょっとなんで間違ってるとこがある可能性が高いのをまずお断りしておきます。m(_ _)m

それから、ちょちょちょちょっとなんで、

のあたりの説明とかインストール手順はさっくり省略します。

ちなみに Linuxの仮想環境の実装の比較は、

が見やすいかもです。


で、今回の環境:

  • OptiPlex 745は、BIOSでVTのon/offができるのですが、出荷時はoffになってるのでonにしておきます。
  • grep ^flags /proc/cpuinfoに「vmx」というのがあれば、VTが有効になってるのをだいたい確認できるらしいです。(でもvmxがあってもKVMとかXenで使えないこともあるらしいす)
  • modprobe kvm-intel してエラーにならなければVTが有効になってると思っていいのかも。

でで、途中ばっさり省略ですが、とりあえずKVMQEMUが動いたんで、かなり適当な感じですがCPUを使うベンチマークをしてみました。こんな感じです:

  • あらかじめdd if=/dev/urandom of=infile bs=1M count=5で入力ファイルを作って、各環境にコピーしておく。
  • time openssl enc -aes256 -in infile -out out -k hoge の時間を計ってみる。

その結果:

環境 所要時間[秒] 性能比
ホストOS 0.09 1.00
ゲストOS (KVMあり) 0.12 1.33
ゲストOS (KVMなし) 1.66 18.44

※「KVMなし」は、qemuを-no-kvmオプションつきで起動しました。それ以外のオプションやディスクイメージは「KVMあり」と同一です。

VTすごいよVT。

ディスクIOとか安定性とかの部分はまだ試せてませんが、いまのところは、かなりイイ印象を受けました。

その他、QEMUのメモ

  • -redir tcp:8022::22
    • ホストOSのtcp/8022へのパケットを、ゲストOSのtcp/22にリダイレクトする。
  • -vnc :1
    • ゲストOSの画面を、vncサーバの中に表示する。vncviewer HOST:1 とかでそれを見られる。
    • ホストOSにモニタ、キーボードがないとかリモートからホストOSにSSHしてQEMUを上げたいときとかはこのVNCを使うのが便利。