Libvirt

域已存在的 libvirtError,但 virsh 列表未顯示

  • October 20, 2021

當我嘗試使用 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,它可能不喜歡你這樣做,不知道。

引用自:https://serverfault.com/questions/362796