[TUTORIAL] Migrating DC from hyper-v cluster to proxmox with ceph storage

dirks

Member
Feb 6, 2016
26
11
23
41
Since I needed to document the process anyway I thought I share my experience of migrating a domain controller from a hyper-v cluster to a proxmox cluster with ceph storage. I wrote this with these 2 wiki articles as background information:
You might be better of installing the virtio drivers and other stuff beforehand if you still can.

Note: Be aware that keyboard input might be funky, i.e. you set your client and windows to English but it is somewhere in between us en and de. Extra fun as you need `\/:`. Also input was sometimes laggy in the recovery console, so be sure to check commands before execution.
  1. have an admin account profile on the DC so that you can login without network (no local admin on DC)
  2. shutdown vm if it is not already
  3. copy vhdx from hyper-v os disk storage to proxmox storage
  4. create vm on proxmox with similar settings as original vm, do not start it yet
    • include qemu agent
    • display spice (personal preference as soon as there is a GUI involved)
    • machine type q35 (personal preference)
    • efi for boot (I use the ceph storage here as well)
    • use virtio for network
  5. remove main disk created in vm create dialogue again
  6. import disk, example for vm id 666 and dc03 vhdx from a mounted storage to rbd ceph storage.
    Bash:
    # as root
    qm importdisk 666 /mnt/pve/migration/dc03-os.vhdx rbd
  7. attach disk with correct settings (slightly opinionated)
    • Bus/Device: SCSI (SCSI Controller: Virtio SCSI)
    • Discard: enabled
    • Cache: write-back
  8. attach virtio driver iso
  9. ensure boot options include scsi
  10. ensure networking is disconnected
  11. open VNC console
  12. boot windows and let it reboot until you get the command prompt option buried somewhere in the advanced troubleshooting options
  13. load storage driver, adapt to server version and drive letter of attached virtio iso. You might want to use the `wmic` cmdlet to check before and after
    Code:
    drvload D:\vioscsi\w2k19\amd64\vioscsi.inf
    dism /image:c:\ /add-driver /driver:d:\vioscsi\w2k19\amd64\vioscsi.inf
  14. continue the boot process
  15. install addition drivers/tooling/services from iso, see also Best Practices in Proxmox Wiki
    • install Guest-Agent
    • install Drivers and Services via msi and do not deselect anything
    • install virtio-win-guest-tools (otherwise mouse was still funky)
    • reboot (you can switch to spice now if you want)
    • check for missing drivers in Device manager
  16. configure network adapter in windows (it is a new device and it defaults to dhcp …)
  17. enable networking in vm config
  18. remove iso and reboot
  19. check services provided etc.
  20. configure backup and ha if needed

One observation: network speed is displayed as 10G even if the underlying hardware is 2x25G (was displayed as 50G on hyper-v).
 
Last edited:

catmao

New Member
Apr 1, 2021
9
1
3
34
I recommend you to use Clonezilla's remote disk cloning function. If your disk is not full, only the part with data will be transmitted, which is more efficient for virtual machines with large disk space.
 

dirks

Member
Feb 6, 2016
26
11
23
41
Thank you for your suggestion, but I am using sparse disks on both sides anyway, i.e. while the disk was configured with a max size of 80G the vhdx had <30G and the rbd is now just shy of 20G. Copying was done in <1 min. While qm importdisk took a little bit longer than that (a few minutes) and showed a 80G import during the process, it was obvious from the progress that importing the sparse part was more or less a no op.

The focus of the text above is less on how to get the disk from a to b, that depends a lot on your situation and environment, but to get windows to boot and use it, if you did not prepare it for virtio et al. before the migration.
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get your own in 60 seconds.

Buy now!