4

I have XenServer non-paravirtualised VM and I want to convert them fro using in my ESXi infrastracture. Is it possible to do it with Essentials Plus pack ? What tool do I have to use?

John
  • 1,483
  • 2
  • 26
  • 45

5 Answers5

4

Either the VMWare Standalone Converter or the vCenter Converter - never personally done a Xen to VMWare conversion but those are your two best options.

Chopper3
  • 100,240
  • 9
  • 106
  • 238
2

I never done this kind of manipulation. But there is the KB from VmWare that explain how to.

EDIT : Vmware move or deleted the KB I mentionned.

This one is still active and in the communitie doc of Vmware.

there it goes

2

My personal "works best" experience for any kind of Linux clients is just dd'ing the disk over to ESX(i):

  1. either stop all unnecessary processes on the source and remount all mountpoints read-only (mount -o remount,ro ) or restart the source machine with a live rescue distro (I am quite used to sysrescuecd, but any other with an ssh client and dd in place will do) and ensure network connectivity / configuration
  2. start up your destination machine with a live rescue distro, set up the network interface, start the SSH daemon (sysrescuecd already does this as part of the init scripts) and set a "root" password (otherwise you likely will not be able to log in via ssh)
  3. check connectivity from the source to the destination machine by pinging it first and performing an ssh login
  4. issue dd if=/dev/<src_device> | ssh <destination> 'dd of=/dev/<dst_device>' for every of your connected disks
  5. if device names have changed and your boot loader or initrd image can't cope with that, you would need to fix it of course

The VMWare converter failed on various occasions with Linux clients - I only managed to reliably convert Windows clients with it.

the-wabbit
  • 40,319
  • 13
  • 105
  • 169
0

This tutorial might help someone as well: https://www.arknet.com.au/migrate-xenserver-vm-to-vmware/

A different way of migrating xenserver vm to vmware when conventional ways do not work.

Mity
  • 1
  • How does this anwer the question? – Pierre.Vriens May 09 '16 at 05:33
  • Providing a link for reference is ok, but the answer should have enough content to stand on its own. Paraphrasing or quoting the content linked to would work. http://serverfault.com/help/referencing http://serverfault.com/help/how-to-answer – chicks May 09 '16 at 14:29
0

Addition to the-wabbit's answer: In the step 5, these details may help to anybody who having trouble to start vm.

If converted vm (the way the-wabbit's mentioned) is unable to start, this is due to linux requiring to rebuild initrd (or initramfs) This may help). So this can be done in two ways:

1. If it is possible, start vm from "rescue" mode, then recreate initrd, or initramfs.

[root@localhost]# mkinitrd -v -f /boot/initrd-3.10.594.img 3.10.594

(For centos7 and derivatives)

[root@localhost]# dracut -f

(For centos7 and derivatives, for a specific kernel, mind space after .img)

[root@localhost]# dracut -f /boot/initramfs-2.6.32-358.el6.x86_64.img 2.6.32-358.el6.x86_64

This way of conversion worked for me. Before doing this, vm was stucking "Reached basic system" (for centos7), then entering dracut timeout..

2. Boot vm with liveCd (at this time you are using vmware, but you can't start your vm.) then, mount your partitions to /mnt (in live / system's /mnt) then follow these steps to chroot and rebuild initrd or initramfs then restart. Below scnerario uses LVM (/dev/cl/root, and standart partition for /boot as /dev/sda1) for vm to be moved.

[root@localhost ~]# vgscan

[root@localhost ~]# vgchange -ay cl

[root@localhost ~]# lvs

[root@localhost ~]# mount /dev/cl/root /mnt

[root@localhost ~]# mount /dev/sda1 /mnt/boot

[root@localhost ~]# mount --rbind /dev /mnt/dev

[root@localhost ~]# mount --make-rslave /mnt/dev

[root@localhost ~]# mount -t proc /proc /mnt/proc

[root@localhost ~]# mount --rbind /sys /mnt/sys

[root@localhost ~]# mount --make-rslave /mnt/sys

[root@localhost ~]# mount --rbind /tmp /mnt/tmp

[root@localhost ~]# chroot /mnt /bin/bash

[root@localhost ~]# dracut -f

for a specific kernel version.

[root@localhost ~]# dracut -f /boot/initramfs-2.6.32-358.el6.x86_64.img 2.6.32-358.el6.x86_64

Note: For the step 4, may be used to gzip data with this line. run this on the vm (to be moved)

dd if=/dev/xvda | gzip -1 - | ssh root@ANY_LINUX_IP dd of=/root/image.gz