====== Migration from ESXi to Proxmox ======
===== Pre-Migration =====
==== Linux ====
- Uninstall open-vm-tools/VMware Tools
rpm -qa | grep vm # SLES
zypper se open-vm-tools # SLES
zypper rm open-vm-tools # SLES
apt remove open-vm-tools # Debian
vmware-uninstall-tools.pl # Linux VMware Tools
https://knowledge.broadcom.com/external/article/339581/uninstalling-open-vmware-tools-included.html
=== SLES ===
grep CONFIG_VIRTIO /boot/config-$(uname -r)
grep CONFIG_VIRTIO /boot/config-$(uname -r) | grep =y
lsinitrd /boot/initrd-$(uname -r) | grep virtio
''vi /etc/dracut.conf.d/virtio-drivers.conf''
add_drivers+=" virtio_blk virtio_scsi virtio_net virtio_pci virtio_ring virtio "
https://support.scc.suse.com/s/kb/Additional-kernel-modules-not-added-to-the-initrd-when-specified-in-etc-dracut-conf-1583239414605?language=en_US
dracut -f /boot/initrd-$(uname -r) > /tmp/dracut.log 2>&1
lsinitrd /boot/initrd-$(uname -r) | grep virtio
lsmod | grep virtio
dracut -f /boot/initrd-$(uname -r) --add-drivers "virtio virtio_pci virtio_blk virtio_net virtio_ring virtio_scsi" # force adding the drivers
lsinitrd /boot/initrd-$(uname -r) | grep virtio
https://pve.proxmox.com/wiki/Paravirtualized_Drivers_for_Linux
=== Debian ===
lsinitramfs /boot/initrd.img-$(uname -r) | grep virtio
==== Unix ====
=== FreeBSD ===
- Uninstall open-vm-tools/VMware Tools
- Disable hardware checksum offload (pfSense: System > Advanced > Networking)
- Backup Config if firewall (pfSense/OPNsense)
- Rename Interfaces in config to e.g. normal interface ''vtnet1'' vlan interface ''vtnet1.123''
==== Windows ====
- Uninstall VMware Tools
===== Migration =====
:!: If the ESXi-GUI hangs after migrating a vm, restart management services via ssh on the ESXi-Host:
/etc/init.d/hostd restart
/etc/init.d/vpxa restart
==== Windows ====
- Set VM ID
- Set VM name
- Checkmark prepare for VirtIO-SCSI
- Set NIC to VirtIO and set Bridge
- Import
:!: Do not boot immediately after migration. See post migration steps below.
==== Linux ====
- Set VM ID
- Set VM name
- Set SCSI Controller to VirtIO-SCSI single and disks to scsiN
- Set NIC to VirtIO and set Bridge
- Import
===== Post-Migration =====
PS C:\Users\Administrator> Get-Service QEMU-GA
Status Name DisplayName
------ ---- -----------
Running QEMU-GA QEMU Guest Agent
qm agent ping
==== Linux ====
- Install qemu guest agent
zypper ref && zypper in qemu-guest-agent # SLES
apt update && apt install qemu-guest-agent # Debian
systemctl start qemu-guest-agent
systemctl enable qemu-guest-agent
systemctl status qemu-guest-agent
==== Windows ====
- Add temporary 1 GB SCSI HDD
- Add virtio iso
- Boot VM, install quemu guest agent and drivers
- Restore network configuration to adapter(s) (might only work if old one was e1000(e))
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces]
- Shutdown VM, reattach SATA VM disks as SCSI and remove temporary 1 GB disk
- Set cache to writeback and enable discard
- Adjust boot order and enable qemu guest agent in vm options
- Boot VM, check diskmanager for offline secondary disks, Reboot
:!: If vm is a network license server, boot without network connection and check licensing status