Hello everyone,
We've been using libvirt version 0.10.2 for a long time (on CentOS 6 OS)
and now we have started creating new KVM cluster all based on CentOS 7
OS and libvirt version 4.5.0 (that came with CentOS repo).
TLDR Version:
- When we try to migrate using "virsh migrate test --live
qemu+ssh://kvm_aquila-02/system" we get an error "error: Unsafe
migration: Migration without shared storage is unsafe".
- When we try to migrate using same method but adding "--unsafe"
migration works.
- When we try to migrate a VPS that is using QCOW image on a shared GFS2
image, mapped on both servers, migration is successful.
We have two servers in a cluster so far, they are connected to NetApp
storage and all luns that VPS server should be using are mapped to both
servers.
Long version with background:
We have plenty CentOS 6 Servers which work perfectly fine with libvirt
version up to 0.10.2. All connected also to a NetApp storage and all
luns are mapped to all servers. LUN's (disks) are visible under
/dev/mapper directory. When we create VPS, we point to raw disk to the
same location, /dev/mapper. For example, VPS "test" would use
"/dev/mapper/test" for disk with "cache=none" in xml file. If we issue
"virsh migrate test --live qemu+ssh://kvm_server-0X/system", it will
successfully migrate VPS to another hypervisor without errors, because
disk already exists there.
We also have a LUN mapped to each hypervisor and GFS2 established in a
cluster between hypervisors where we keep qcow images. We can also
migrate those machines without issues.
On new CentOS 7 hypervisors, we have pretty much the exact same setup.
NetApp storage connected to servers. All VPS LUN's mapped to all
hypervisors. Clustered GFS2 volume.
When we define VPS with approximately same XML, it will NOT migrate it
and will issue out an error stated above. "--unsafe" parameter seems to
work fine. BUT.
We want to setup a proper libvirt/kvm cluster with pcs. I've defined a
pcs resource for each VPS and live migration also doesn't work if i try
"pcs resource move" command. It will not migrate it "live" as it
should,
and as it does with QCOW images, probably because of the same reason -
because it's unable to perform live migrate via libvirt without
"unsafe". If there would be any trick to add "--unsafe" parameter to
pcs
i would do it, but I'm not aware of it.
Still, seems like a bug that libvirt would not realize that netapp
storage is present in this configuration. Is this maybe corrected in
later versions of libvirt? Unfortunately, 4.5.0 is latest in CentOS repo
but i would try to compile it if needed.
Any help would be greatly appreciated and if more info is needed i will
be more than happy to provide.
Thanks in advance,
Marko Todoric