libvirtで、仮想マシンごとに利用するエミュレータ(qemu)を変更する

libvirtを用いたvirshを管理ツールと利用した仮想環境を運用していて、kvmのバグかもしれない挙動に遭遇したとき、エミュレータであるqemuのバイナリを変更したいときがある。
ここでは、libvirtの設定ファイルを書き換え、仮想マシンごとにエミュレータ、つまりqemuのバイナリを指定する方法を章秋する。これにより、最新版のqemuを検証しながら、同一のホストで安定版のqemuを利用することが可能になる。

方法

virshにログインし、

# edit <仮想マシン名>

コマンドを実行し、仮想マシンの設定編集を行う。以下の場所を変種する。UbuntuDebianでは以下のようになっているはずである。

...(省略)...
  <devices>
    <emulator>/usr/bin/kvm</emulator>
...(省略)...

これを、自前でビルドしたバイナリへのパスへと変更すればよい。例えば、以下のように変更する。

...(省略)...
  <devices>
    <emulator>/usr/local/kvm/bin/qemu-system-x86_64</emulator>
...(省略)...

変更が終わったら保存し動作確認を行う。