[SOLVED] Error: domain already exists

Hi,

I have instantiated a “non persistent” vm. System has copied image to system datastore as it is expected, later it has started it successufly, nevertheless, after the first poweroff I get the following error when I try to start it “virsh resume 22”:

Sat Feb 18 23:04:18 2017 [Z0][VM][I]: New LCM state is BOOT_POWEROFF
Sat Feb 18 23:04:18 2017 [Z0][VMM][I]: Generating deployment file: /var/lib/one/vms/22/deployment.8
Sat Feb 18 23:04:18 2017 [Z0][VMM][I]: Successfully execute transfer manager driver operation: tm_context.
Sat Feb 18 23:04:18 2017 [Z0][VMM][I]: ExitCode: 0
Sat Feb 18 23:04:18 2017 [Z0][VMM][I]: Successfully execute network driver operation: pre.
Sat Feb 18 23:04:19 2017 [Z0][VMM][I]: Command execution fail: cat << EOT | /var/tmp/one/vmm/kvm/deploy ‘/var/lib/one//datastores/0/22/deployment.8’ ‘vdicnode01-priv’ 22 vdicnode01-priv
Sat Feb 18 23:04:19 2017 [Z0][VMM][I]: error: Failed to create domain from /var/lib/one//datastores/0/22/deployment.8
Sat Feb 18 23:04:19 2017 [Z0][VMM][I]: error: operation failed: domain ‘one-22’ already exists with uuid 06892f7c-40c1-4f8a-8c87-431518150a04
Sat Feb 18 23:04:19 2017 [Z0][VMM][E]: Could not create domain from /var/lib/one//datastores/0/22/deployment.8
Sat Feb 18 23:04:19 2017 [Z0][VMM][I]: ExitCode: 255
Sat Feb 18 23:04:19 2017 [Z0][VMM][I]: Failed to execute virtualization driver operation: deploy.
Sat Feb 18 23:04:19 2017 [Z0][VMM][E]: Error deploying virtual machine: Could not create domain from /var/lib/one//datastores/0/22/deployment.8

I can start the virtual machine without problems from “virsth start one-22”.

Any help will be wellcome!

Hi Oscar,

are you using multiple hosts?
If yes, check the /etc/libvirt/libvirtd.conf in the host_uuid = part. If they are the same on the Hosts, the problem could be located there. I was facing this issue in the past and solved it with the following sed in my installation routine.

Suitable for Debian 8.7.1 you will need the uuid-runtime
sed -i 's|#host_uuid = "00000000-0000-0000-0000-000000000000"|host_uuid = \"'$(uuidgen)'\"|g' /etc/libvirt/libvirtd.conf

Pecadis

Hi Pecadis,

I have forced the host_uuid but I get exactly the same error.

Thanks a lot.

Hi Oscar,

another thought. Are you using a shared storage? Could you print the onedatastore list please?

Pecadis

Yes, I’m using a shared datastore for images (nfs v3)

[root@vdicone01 ~]# onedatastore list
ID NAME SIZE AVAIL CLUSTERS IMAGES TYPE DS TM STAT
0 system - - 0,100 0 sys - ssh on
1 default 6.7G 82% 0 0 img fs ssh on
2 files 6.7G 82% 0 0 fil fs ssh on
100 nfs-vdic-imag 80G 78% 0,100 1 img fs shared on

Afterwards, I have to nodes:

[root@vdicone01 ~]# onehost list
ID NAME CLUSTER RVM ALLOCATED_CPU ALLOCATED_MEM STAT
0 vdicnode01-priv vdicube 1 100 / 400 (25%) 1024M / 3.7G (27%) on
1 vdicnode02-priv vdicube 0 0 / 200 (0%) 0K / 3.7G (0%) on

Un saludo,

Hi oscar,

I think you hit the same issue as i had ( SOLVED Live Migration "failed: error: Cannot access storage file" on 5.2.1 )

In short terms: Change your “system” Datastores to shared as well.

Best
Pecadis

Hi, I have read the post you ha attached and I think I’m not experiencing the same issue.

In my scenario, system datastores are local and I don’t want to perform any live migration. I just want to start it from opennebula as I can executing virsh start xxx.

Thanks a lot

Hi!

Anybody has experienced the same issue?

Thanks a lot!

Hi,

In my case, for any extrange reason, the problem was that a “normal” kvm xml has been deployed. In my case:

/etc/libvirt/qemu/one-22.xml

As it was registered by libvirtd, it was not possible to register a new one-22 VM.

Thanks a lot,

1 Like