I've been running KVM public cloud up to recently and have never seen such behaviour.
What versions (ACS, qemu, libvrit) are you running? How does the migration fail - ACS job - or libvirt job? destination VM is by default always in PAUSED state, until the migration is finished - only then the destination VM (on the new host) will get RUNNING, while previously pausing the original VM (on the old host). i,e. phase1 source vm RUNNING, destination vm PAUSED (RAM content being copied over... takes time...) phase2 source vm PAUSED, destination vm PAUSED (last bits of RAM content are migrated) phase3 source vm destroyed, destination VM RUNNING. Andrija On Mon, 28 Oct 2019 at 14:26, Rakesh Venkatesh <www.rakeshv....@gmail.com> wrote: > Hello Users > > > Recently we have seen cases where when the Vm migration fails, cloudstack > ends up running two instances of the same VM on different hypervisors. The > state will be "running" and not any other transition state. This will of > course lead to corruption of disk. Does CloudStack has any option of volume > locking so that two instances of the same VM wont be running? > Anyone else has faced this issue and found some solution to fix it? > > We are thinking of using "virtlockd" of libvirt or implementing custom lock > mechanisms. There are some pros and cons of the both the solutions and i > want your feedback before proceeding further. > > -- > Thanks and regards > Rakesh venkatesh > -- Andrija Panić