Hello Lads and Ladettes,

I’m reaching out to ask for your help and to know your opinion. Currently I have a simple setup of RPi 3 that only serves as a DNS (pihole). I’ve read some of your posts and I got hooked. I also started playing with HyperV on my Windows PC and created a virtual linux machine (Arch btw for meme purposes).

I have started thinking… What if I bought RPi 4B (8GB RAM) and use some kind of a hypervisor to selfhost DNS and DHCP (pihole), VPN, SSO and maybe even NAS (some kind of platform like plex?).

It’s all for learning purposes, so I’m not aiming for anything extra expensive, reliable or ultra-fast. I know the basics, though I’m still a beginner. I thought the RPi 4B would be a good choice as it’s relatively cheap and not energy-hungry.

My questions are: What do you think about it in general? Do you know any alternatives to VMware ESXi that I can use for virtualisation? Any tips and trick you have to share? Do you think that RPi 4B can handle such task?

Maybe you know some good, free, open source VPN and SSO services that you can recommed. For NAS I was thinking about OpenMediaVault but I would also be thankful for recommendations in that regard as well.

Thanks in advance for all the help and healthy discussion. Cheers!

EDIT:

Thank you everyone for sharing your views!

I probably didn’t mention pretty important factor which is: I need the device to be as small as possible. My wife won’t bear huge butt case lying around and always blowing its fans. Nevertheless, buying used UFF machine is a great idea if I really want to go with virtualisation route. I’ll keep my eye on Proxmox as it sounds very promising.

I didn’t take into account docker because… I simply forgot about such option. In my previous job my colleague was an infrastructure analyst and often explained me intricacies of his job. Since the company I worked for used VMware that was the first thing that came to my mind. If I decide to buy RPi 4, I’ll definitely take docker path.

I’ve read all your messages and they were pure pleasure to read. Thanks for them once more!

    • Voroxpete@sh.itjust.works
      link
      fedilink
      arrow-up
      2
      ·
      11 months ago

      Agreed. Docker is the tool you’re looking for here OP. It will help you make use of your available resources much more efficiently, and management will be easier too.

      If you’re not a fan of the command line, give Portainer a whirl. Finding compose files for all of those services you’re looking at should be trivially easy.

  • Lettuce eat lettuce@lemmy.ml
    link
    fedilink
    English
    arrow-up
    6
    ·
    11 months ago

    You might be better off building a simple virtualization box. Check Ebay, Craig’s List, FB marketplace, etc. For old enterprise/mass use desktops. Often you can find old ass Dell optiplex machines or similar for 50-100 bucks.

    Throw in 32-64 gigs of RAM which you can pick up DDR3 or Cheap DDR4 used for like 5-10 bucks a stick. Grab some used drives, toss em in. You’ve got a little server box that you can install a hypervisor on, way more power than a PI, and cost the same or less.

    Check out XCP-ng or ProxMox as an open source hypervisor to play with. Lawrence Systems YT channel has a ton of great guides for XCP-ng and I think some for ProxMox too. You could also just install a basic Linux server distro and use KVM or related virtualization software on top. Personally, I use a dedicated Hypervisor, but it’s totally up to you.

    My personal home lab is just a 2U box with an old 12-core Xeon, 32 Gig of consumer RAM, and a few TB of HDDs with the hypervisor on a 250 Gig SSD, I can run a half dozen VMs no problem on it.

    For my NAS solution, I run a VM of TrueNAS, a FOSS NAS solution that I love and has been fantastic for all the years I’ve used it.

    I also run Ubuntu Server edition for my personal media server which is Jellyfin, which also is amazing and works great for me.

    I got some cheapo Dell network switch for free from an old tech friend, but you can find equivalent equipment for 20-30 bucks easy online or sold locally. Even basic old network gear usually will allow you to play with things like VLANs and trunking.

    Grab some old networking cables from a tech surplus place or store online for patching and practicing cable management/organizing.

    PFsense or OPNsense are great open source firewall/routing software you can learn on/practice with.

    • czech@no.faux.moe
      link
      fedilink
      arrow-up
      6
      ·
      11 months ago

      That’s so much electricity though! That equipment is typically so cheap bc the power draw is nuts. I agree the pi isnt the right move but why burn up so much power when they won’t be using practically any of it, to learn?

      I’d suggest a small, used x86-64 mini-pc, throw in 16gb of ram and a HDD. If you dont pay for electricity, like in a dorm, then the old server-grade stuff is the way to go. Plus it will keep you very toasty in the winter.

      • Lettuce eat lettuce@lemmy.ml
        link
        fedilink
        arrow-up
        1
        ·
        11 months ago

        Depends on where you live of course. My location power is very cheap, but even so, an old Optiplex machine with a few HDDs doesn’t use very much power, especially at idle.

        Regardless though, I was just throwing out the rough concept. Your points are good, a smaller mini-PC or an old laptop even would work.

        • czech@no.faux.moe
          link
          fedilink
          arrow-up
          3
          ·
          11 months ago

          I think I’m overly sensitive because my power is very expensive and my home is getting pretty warm right now!

    • VelociCatTurd@lemmy.world
      link
      fedilink
      English
      arrow-up
      3
      ·
      11 months ago

      Second this, proxmox on an optiplex is going to be a great place to start, although VMWare has gotten less greedy with the free version of ESXi. With how hard it is to find a raspi right now you’re going to be spending the same amount of money on an optiplex.

  • redcalcium@c.calciumlabs.com
    link
    fedilink
    English
    arrow-up
    4
    ·
    edit-2
    11 months ago

    I think using container instead of VM should be better for maximizing resource utilization in a raspberry pi. Instead of partitioning your tiny 8gb RAM into 3-4 VMs with even tinier RAM each, you can run a dozen of containers and probably still have some free RAM.