Wednesday, 11 April 2012

Citrix Xenserver Unable to export / import OVF

I was trying to expor a VM to an OVF package and before the process even started I was getting an error message saying that the export had failed, I've looked into the XenCenter's logs and found this:
citrix xenserver system.exception failed to export system.xml.xmlexception root element is missing
After banging my head for a while I found the cause of the problem. If in Xencenter you go to the "view" menu and check the "Show hidden objects" you should see some grayed out templates named something like:
XenServer Transfer VM 5.6.100-46655p (hidden)
Where 5.6.100 is the Xenserver version and 46655p is the build number. If this templates don't exist or don't match your Xenserver's version or build number you must create a new one.
You must delete all transfer VM templates that don't match your Xenserver's version or build, then go to your pool master's console and run this command:
/opt/xensource/packages/files/transfer-vm/install-transfer-vm.sh
Wait a few seconds for it to generate the template and after that you should be able to import and export OVF packages.

Possibly Related Posts

7 comments:

  1. That fixed my problem.. thank you!

    ReplyDelete
  2. Was banging my head against the wall for weeks over this issue (Citrix KBs were no help at all), thanks a million for solving it!

    ReplyDelete
  3. I'm running a 6.2 server and was unable to export one VM to OVF. Deleting the Hidden Transfer VM solved the problem. Running the 'install-transfer-vm.sh' shell script wasn't necessary, at least in my case.

    Tks a lot. Saved my day.

    ReplyDelete
  4. It might help somebody, I had this problem when trying to export vm in ovf format using Xenserver 6.2.
    Once the old templates were deleted I was still facing the following error:
    System.Exception: Failed to export. ---> System.Exception: Failed to transfer virtual disk

    To solve it I simply had to choose an unused static IP on the same subnet as the Network Management Console where the server pool resides.
    I tried many combinations, and this was the one that worked.
    Hope it helps

    ReplyDelete