qemuのオプションをlibvirtのXMLに書く方法

libvirtはゲストをXMLで定義していて、ゲスト起動時にXMLからqemuコマンドのオプションを作成している。基本的な設定パラメタは定義されていて、その定義にしたがってXMLを書けば普通はOKなはず。でも、qemuの新機能・オプションとかでXMLの定義がまだ存在しない場合でも、libvirtからそのオプションを使いたいことがあったり。


そんな時のために、libvirtでは、追加したいqemuのオプションをそのままXMLに書くことで実行してくれる方法がある。

1. domain tagのところでnamespaceを定義(例のxmlns以降の部分)
2. のブロックをdomain配下に作成
3. qemuのオプションを設定
4. で実行時の環境変数を設定

例(公式ページからの抜粋)

<domain type='qemu' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
....snip.....
  <qemu:commandline>
    <qemu:arg value='-newarg'/>
    <qemu:env name='QEMU_ENV' value='VAL'/>
  </qemu:commandline>
</domain>


[参考]
http://libvirt.org/drvqemu.html#qemucommand
http://blog.vmsplice.net/2011/04/how-to-pass-qemu-command-line-options.html