Libvirt
域已存在的 libvirtError,但 virsh 列表未顯示
當我嘗試使用 OpenStack 啟動實例時,我在 nova-compute.log 中收到以下錯誤:
(nova.rpc): TRACE: libvirtError: operation failed: domain 'instance-0000000a' already exists with uuid 5f81a7d2-1b0f-8c72-4e1e-377c275e9289
但是,virsh 不顯示任何域:
$ sudo virsh list Id Name State ----------------------------------
如果該域存在,為什麼該域不顯示在 virsh 中?
您的域可能已關閉。執行
virsh list --all
以查看所有域。
還不熟悉 OpenStack,但在正常的舊 libvirt 中,該錯誤通常意味著不存在 RUNNING 實例,而是存在 DEFINED 實例。“virsh list”只顯示目前活動的虛擬機,而不是每個定義的虛擬機。嘗試:
virsh edit instance-0000000a
如果打開 vim 並在其中有一堆 XML,那麼已經有一個定義的 ‘instance-0000000a’ 虛擬機。如果您 100% 確定不想要它,請退出編輯器並使用:
virsh undefine instance-0000000a
然後讓 OpenStack 再次嘗試你正在做的任何事情,它應該可以工作。
順便說一句,如果你確實想要那裡的東西,你可以從以下開始:
virsh start instance-0000000a
但同樣,不熟悉 OpenStack,它可能不喜歡你這樣做,不知道。