libvirtで、仮想マシンごとに利用するエミュレータ(qemu)を変更する
libvirtを用いたvirshを管理ツールと利用した仮想環境を運用していて、kvmのバグかもしれない挙動に遭遇したとき、エミュレータであるqemuのバイナリを変更したいときがある。
ここでは、libvirtの設定ファイルを書き換え、仮想マシンごとにエミュレータ、つまりqemuのバイナリを指定する方法を章秋する。これにより、最新版のqemuを検証しながら、同一のホストで安定版のqemuを利用することが可能になる。
方法
virshにログインし、
# edit <仮想マシン名>
コマンドを実行し、仮想マシンの設定編集を行う。以下の場所を変種する。Ubuntu、Debianでは以下のようになっているはずである。
...(省略)... <devices> <emulator>/usr/bin/kvm</emulator> ...(省略)...
これを、自前でビルドしたバイナリへのパスへと変更すればよい。例えば、以下のように変更する。
...(省略)... <devices> <emulator>/usr/local/kvm/bin/qemu-system-x86_64</emulator> ...(省略)...
変更が終わったら保存し動作確認を行う。