Hi I think this is the expected behavior, the problem here is the drivers "lying" to OpenNebula. This what happens:
1.- Users issue a live migration. The live migration fails (driver exits 1) 2.- OpenNebula detects a failed migration and assumes the VM is RUNNING in the original host 3.- OpenNebula polls the VM and it can find it, so it move it to the unknown state 4.- OpenNebula keeps polling the VM and looking for it in the initial host There is no way for OpenNebula to know that the VM has leaved the host. Probably the only way is changing 2, and assume that the live migration succeeded. However in a normal (failure) situation when the hypervisor fails the live-migration the VM keeps running in the original host. So what happens if post-migrate fail? I'd say that given that the VM is running on the new host it does not make sense to rollback the operation and I think we should always exit 0 the post-migrate script... What do you think? Ruben On Thu, Dec 6, 2012 at 4:19 AM, Gary S. Cuozzo <[email protected]> wrote: > As a note, I manually migrated the VM back to the original host and ONE did > pick up on it and put it back to the running state so that I can manage it > again. I think it would be good though if ONE could find it on any host and > not just the host it originally ran on. > gary > > ________________________________ > From: "Gary S. Cuozzo" <[email protected]> > To: [email protected] > Sent: Wednesday, December 5, 2012 10:04:34 PM > Subject: [one-users] VM in unknown state never gets updated > > > Hello, > I'm testing my TM driver and using the pre/postmigrate scripts in 3.8.1. > Due to a bug in the postmigrate script, I have a VM that successfully > migrated from one host to the other, but since the postmigrate returned > non-zero status, the migration was considered to be failed by ONE and the VM > was put into the UNKOWN state. I figured ONE would eventually poll the > hosts and realize that the VM was running and update the state of the VM as > well as the host it's running on. It never picked up on it though. > > It seems like ONE should be able to recover from this since it should be > able to poll the hosts and find out that it is running on one of them. Is > there some way to tell ONE to update the state? Or tell it to scan for it? > > Since it's just a test VM I can just delete & recreate it, but I think this > is a use case that ONE should be able to handle. > > Any thoughts? > > Cheers, > gary > > > _______________________________________________ > Users mailing list > [email protected] > http://lists.opennebula.org/listinfo.cgi/users-opennebula.org > > > _______________________________________________ > Users mailing list > [email protected] > http://lists.opennebula.org/listinfo.cgi/users-opennebula.org > -- Ruben S. Montero, PhD Project co-Lead and Chief Architect OpenNebula - The Open Source Solution for Data Center Virtualization www.OpenNebula.org | [email protected] | @OpenNebula _______________________________________________ Users mailing list [email protected] http://lists.opennebula.org/listinfo.cgi/users-opennebula.org
