[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [MirageOS-devel] Xen, MirageOS, and Unikernel Migration

On Thu, May 19, 2016 at 04:46:06PM +0100, Vittorio Cozzolino wrote:
> Hi,
> I'm experimenting a bit with VM migration in XEN. Right now I'm trying to
> migrate a MirageOS Unikernel from one server to another without success. The
> image that I'm migrating is a customized version of the simple "hello"
> example that can be found in the mirage-skeleton repo. Both my server
> machines run Ubuntu 14.04 and have Xen 4.6, moreover, migration works for a
> normal VM image (like Alpine Linux).
> Anyway, this is the trace generated by the migrate command:
> Saving to migration stream new xl format (info 0x3/0x0/966)
> xc: debug: hypercall buffer: cache hits:21 misses:2 toobig:6
> I suppose the migration fails due to a problem with the shutdown command?
> I'm not an expert of XEN, I just started learning, so any
> remark/comment/suggestion is welcome.

Hi Vittorio,

Migration of PV guests requires some cooperation from the guest. The basic idea 
that the VM actively watches for a request to suspend (migration is built 
suspend-resume), and it then unhooks itself from everything that it knows about 
real hardware it's running on, calls a function that returns only when the VM 
now running on the new hardware, and then reestablishes all the links to the 
machine. MiniOS, the base Xen OS Mirage is using doesn't currently support 
However, I have a branch with some experimental code to support it on my fork. 
You'll need to pin both minios-xen and mirage-xen to make it work:

    opam pin add -n -y mirage-xen \

    opam pin add -n -y minios-xen \

Additionally, you'll need to manually watch xenstore so your VM notices the 
to suspend. 

We've got a mirage VM that uses all this that we use for testing XenServer - 
available here: https://github.com/xapi-project/xen-test-vm - the code for 
for the suspend trigger is here: 


I've not tried it with xl directly, but it works for us on XenServer. I'd be 
interested to hear if you can get it to work!


> Best regards,
> Vittorio

> _______________________________________________
> MirageOS-devel mailing list
> MirageOS-devel@xxxxxxxxxxxxxxxxxxxx
> http://lists.xenproject.org/cgi-bin/mailman/listinfo/mirageos-devel

MirageOS-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.