Table of contents
    No headers

    Forum Link: Xenmigrate.py Discussion and Support

    The script can be downloaded at the bottom of this page.

    This script helps you migrate from Citrix XenServer to open source Xen (or KVM or anything else that uses images or Logical Volume images).

    Citrix .xva file format (Xen Virtual Appliance) -- aka, we made our own special little format to piss you off if you want to convert away from XenServer to something different

    Xenmigrate.py export and import example -- I ran through an export and an import so you can see what to expect.  One thing -- don't confuse the xenmigrate.py's export with the "export" done by Xen Center.

    Xenmigrate tested and working on: XenServer 5.5, XenServer 5.0, XenServer 4.1, Xen 3.0, Xen 3.1, Xen 3.3, Xen 3.4

    Xenmigrate on XenServer 4.0: Dom0 has memory issues, as in you can't allocate enough to it and, while you can change the settings that should give it more, it doesn't actually get any more.  4.1 has them too, but you can fix them.  The problems are related to the gzip part of the program wanting some memory, so if you avoid the gzip option you may squeak by.

    NOTICE: Xenmigrate (at the bottom of this page) does not currently support NFS stored VMs.  NFS support will arrive at some point, it could arrive more quickly if someone actually needs it.

    Tag page (Edit tags)
    • No tags

    Files 1

    FileSizeDateAttached by 
    xenmigrate.py
    Export your XenServer logical volumes to a raw file. Import this raw file into a logical volume on your open source box. Convert your .xva to a raw file to import into a logical volume on your open source box. [Fix additional file number calculation problem with the conversion of XVA files.]
    19.14 kB21:05, 13 Sep 2011paceActions
    Viewing 3 of 3 comments: view all
    The latest posted xenmigrate.py does not properly convert directories to raw image files. Someone got twisted around the axle calculating the size and number of files. Diff follows

    299d298
    < refdirlist=os.listdir(refdir)
    303,304d301
    < numfiles=len(refdirlist)
    < # Sort the list to make it XenServer 5.5 work
    306,307c303,304
    < # This is a horrible way to get the right filename!
    < print 'last file :',numfiles+1
    ---
    > numfiles=int(refdirlist[-2])
    > #print 'last file :',numfiles+1

    this reverts to the calculation method from an earlier version.
    Posted 19:40, 10 Sep 2011
    The one issue with this is if your version of python does not return the local and parent paths as files "." and ".." -- trying to issue a newer version with a proper fix.
    Posted 20:43, 13 Sep 2011
    I really needed this one last week, so I created my own version that works. You can find it here: http://pastebin.com/MK5Da8CB
    Posted 16:09, 6 Dec 2011
    Viewing 3 of 3 comments: view all
    You must login to post a comment.