I’m thinking about making some changes to my home server to make it a little more robust and let me do some cool new things with it (like actually trust it for backing up data to with NextCloud, replicating VMs or data across sites, etc). I’m just looking for any advice people might have for this process to migrate hypervisors.

What I currently have:

  • Windows 10 Pro OS with Hyper-V
  • Running some applications on the host OS (Plex/PRTG/Sonarr/Radarr)
  • Running a few VMs for things I set up after I realized “I should be doing these in VMs…”
  • 4 HDDs for data, each just mounted individually. 2 for TV, 1 for Movies, 1 for Backups

What I’d like to have:

  • Better OS for running the hypervisor (Proxmox is what I’m reading may be best, but I’m open to suggestions)
  • Nothing running on the host OS other than a hypervisor
  • All my services running virtualized, be that via Docker in a LXC or a guest OS.
  • My Drives all in a RAID 5. Planning to add more drives at some point as well.

My thoughts on the process are that the “easiest” way may be:

  1. Just throw a new OS drive in to install Proxmox on
  2. Export my VMs from Hyper-V and import them into Proxmox
  3. Set up the services I had running on the host OS previously in their own VMs/containers
  4. Make a new RAID either: a. with new disks or b. by combining data from my existing disks so I can get a free few disks to start the RAID with, then moving data into the RAID and clearing out more disks to then add to the RAID, rinse and repeat until done (that’s a lot of data moving I’d like to avoid…)

I wasn’t sure if it would be a smarter idea to do something more like this though (assuming this is all possible, I’m not even sure that it all is). If this is possible, it might reduce my downtime and make it so I can tackle this in bits at a time instead of having an outage the entire time and feeling like I need to rush to get it all done:

  1. New OS drive for Proxmox
  2. Use Proxmox to boot my Windows 10 drive (this I’m not sure about) so that everything continues as it’s currently set up.
  3. Slowly migrate my services out of the Windows 10-hosted VMs and host-installed services
  4. I probably still have to deal with the RAID the way I mentioned above

Is there any other method I’m just totally not thinking of? Any tips/tricks for migrating those Hyper-V VMs? That part seems straightforward enough, but looking for any gotchas.

The reason I haven’t done anything yet is because I only have so much time in the day, and I’m not trying to dedicate an entire weekend to this migration all at once. If I could split up the tasks it’d make it easier to do, obviously there are some parts that would be time-consuming.

Thanks in advance!

  • Anony Moose
    link
    fedilink
    English
    arrow-up
    2
    ·
    1 year ago

    Noob question. What kind of apps are you (or other self-hosters) running in VMs? With containerized apps, it seems like VMs would be largely unnecessary, unless you need some particular device to be virtualized? Or am I misunderstanding?

    • skadden@ctrlaltelite.xyz
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      I can’t speak for everyone else, but I run about 6 different VMs solely to run different docker containers. They’re split out by use case, so super critical stuff on one VM, *arr stuff on another, etc. I did this so my tinkering didn’t take down Jellyfin and other services for my wife and kids.

      Beyond that I also have two VMs for virtualized pihole running gravity sync on different hosts, and another I intend to use for virtualized opnsense.

      Everything is managed via ansible with each docker project in its own forgejo repo.

      • Anony Moose
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        So in addition to docker containers, you use separate VMs for isolation? Or are you just referring to the docker containers themselves?

        I have separate docker containers for different apps too, but no virtualization beyond that.

        • skadden@ctrlaltelite.xyz
          link
          fedilink
          English
          arrow-up
          2
          ·
          1 year ago

          Yeah I use different VMs to separate out the different containers into arbitrary groups I decided on.

          I run my docker containers inside different Debian VMs that are on a couple different Proxmox hosts.

          • Anony Moose
            link
            fedilink
            English
            arrow-up
            1
            ·
            1 year ago

            Interesting. Seems like it might be worth it for me to look into Ansible and perhaps even Proxmox on the new SFFPC I’m building as a media center for stability/reliability.

            Thanks!