web-dev-qa-db-ja.com

libvirt:ホストの起動時にドメインを起動するにはどうすればよいですか?

ホストの起動時にドメインの一部が自動的に起動するようにしたい(ubuntuでlibvirt + KVMを使用している)。 rc.localに「virsh start ...」ステートメントをいくつか置くことができると思いますが、libvirt/virsh内でこれを構成する方法はありますか?

9
kdt

「ヘルプ」の出力を見る:

virsh # help autostart
  NAME
    autostart - autostart a domain

  SYNOPSIS
    autostart <domain> [--disable]

  DESCRIPTION
    Configure a domain to be automatically started at boot.

  OPTIONS
    [--domain] <string>  domain name, id or uuid
    --disable        disable autostarting

これには、ファイルからドメインを定義する必要があります(つまり、ドメインは一時的ではなく永続的です)。

16
larsks

応答があった場合:

    virsh autostart domainname
    "cannot set autostart for transient domain"

その後

    virsh shutdown domainname
    virsh define xmlfile
    virsh start domainname
    virsh autostart domainname

Ubuntu 12.04での私の経験では、これはvirsh undefineが実行された場合にのみ発生します。 virsh createで作成されたドメインでは、通常、作成直後に自動起動を設定できます。

11
John P. Fisher

これは、ドメインに対して「定義」ではなく「作成」を使用した場合にも発生します。

例えば:

virsh --connect qemu:///system create mytest-vm-20130715.xml

virsh --connect qemu:///system autostart mytest-vm

error: Failed to mark domain mytest-vm as autostarted

error: Requested operation is not valid: cannot set autostart for transient domain

0
FlakRat