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?
5 Answers
Either the VMWare Standalone Converter or the vCenter Converter - never personally done a Xen to VMWare conversion but those are your two best options.
![](../../users/profiles/1435.webp)
- 100,240
- 9
- 106
- 238
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.
![](../../users/profiles/84063.webp)
- 976
- 8
- 20
My personal "works best" experience for any kind of Linux clients is just dd'ing the disk over to ESX(i):
- 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 - 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)
- check connectivity from the source to the destination machine by pinging it first and performing an ssh login
- issue
dd if=/dev/<src_device> | ssh <destination> 'dd of=/dev/<dst_device>'
for every of your connected disks - 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.
![](../../users/profiles/76595.webp)
- 40,319
- 13
- 105
- 169
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.
![](../../users/profiles/353516.webp)
- 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
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
![](../../users/profiles/440662.webp)
- 1
- 1