There are several different libvirt instances, and virsh
will auto-detect a connection. If you run virsh
as root it'll connect to qemu:///system
while if you run it as non-root it'll connect to qemu:///session
. OpenStack / Nova will be using qemu:///system
. If you want to make this explicit tell virsh
which to use virsh -c qemu:///system list --all
should show you the VMs.
A further complication is that some deployments of OpenStack will put libvirt and QEMU inside a container, so if you run virsh
in your host, it won't be able to access the libvirt/QEMU inside the container. You would need to find which container its using, enter the container namespaces, and then run virsh
inside the container.