A few days ago I was driving home and wondering if there was any solution out there that presented a light weight hypervisor installed and hosted VMs, but which allowed you to work on the VMs locally. Say I could setup and run on my laptop a small network of computers for rapid proof-of-concept, something I've done with network emulators like CORE (https://www.nrl.navy.mil/Our-Work/Areas-of-Research/Information-Technology/NCS/CORE/).

I'd looked at Qubes OS as a possibility, and while I really like a lot about the thoughts to security that had been built in from the start, the architecture of how it was setup didn't easily lend itself to my use case. But, I did take a bit of inspiration from it. I run Proxmox at home on my smallish cluster

So, laptop in hand, I started to see what I could do in this regard. It has been very helpful for me, and I thought I'd throw this out there in case anyone else was looking for something similar.

Initial Reading: https://pve.proxmox.com/wiki/Developer_Workstations_with_Proxmox_VE_and_X11

This was honestly most of it. I did add Remmina to the apt-getcommand ending with

apt-get install xfce4 chromium lightdm remmina remmina-plugin-rdp remmina-plugin-secret

Once rebooted, I was presented with a bog standard Debian xfce4login screen. Used the user I'd setup per the Proxmox instructions. Set Chromium to open default to the Proxmox management page. That was all deceptively easy. The only "issue" I've had was that the login screen elements were incredibly small (4k display on the laptop) but once logged in, everything worked well with HiDPI.

Next was VM environment.

Setup a OPNSense VM first. Attached the vmbr0 as the WAN and setup a few internal bridges to use as DMZ, Client VM, and Server VMs. I also tested setting up a vmbr for the Internal WiFi that I could selectively use and bring up as needed and it worked (set it up as a second WAN in OPNSense) and also tested passing it directly to a Windows VM which worked well.

After that comes any test VMs. I setup a Windows Server 2016 VM, a Windows 10 Enterprise VM, a RockyLinux VM and a DragonOS Focal VM (for SDR use). I'd setup internal network cards on the VMs to attach through the OPNSense VM, but usually added in a second NIC on vmbr0 with which I could use Remmina for easy quick RDP and VNC. I'm going back later to test out using Spice instead. Using the web console worked plenty well enough to install the VMs easily though.

Anway, using this setup I was able, at home to quickly mock up problems and networks without affecting my personal homelab, carrying no more hardware than my laptop. Mocked up a DC and a couple of client computers, all running simultaneously and with decent enough performance. It worked well enough that I'm not carrying the separate NUC anymore. May not be the normal use of Proxmox, but wanted to relay my experience with it as a mobile system.

Nice writeup.

I did something similar starting with a Debian install followed by a proxmox ve install overlaid. The particular laptop had both an integrated and discrete graphics card and coming out of hibernation encountered error conditions.

I went back to virtualbox on top of Ubuntu.

Is hibernation working as intended?

Good question. Haven’t checked that out yet as I’ve done full shutdown when done. I’ll test that tonight or tomorrow and update!

More replies

For the several times I installed xfce4 on Proxmox I had to manually uninstall udisk2 to solve the CPU hogging problem, you might want to check that as well.

Will check on that. I did this test with PVE 7.0, forgot to mention that

More replies

I gave up on this idea. Even with a threadripper 3995x as bundling processes into VMS did not make sense as I need the processing power to do my work.

even a browser becomes as an issue https://www.reddit.com/r/firefox/comments/oknqia/left_the_tabs_on_and_the_websites_are_still/h592l65/?context=3

So it works well as a workstation?

it looks promising https://www.qubes-os.org/intro/

are you using with proxmox ?

So far, it's been working fine as a workstation. This one is running on an HP ZBook G3 laptop with an Intel i7-6700HQ and 16GB RAM. I don't run any tasks on the root environment besides Chromium (for access to the configuration pages) and Remmina (going to be testing SPICE clients today if meetings allow). Right now, it's sitting at 1GB of RAM in use, and has been stable.

I haven't run Qubes on this laptop but have previously. It's a great system, if you take the time to think your workflows out and just how you want to partition what you do. If you find a workflow that works for how you work (wow, that's a clunky phrase), then it seems to work well. I never did with it as I was always tinkering rather than doing what I needed.

More replies More replies

Did you try kvm before proxmox?

Proxmox is basically just fancy kvm with extras like acme and llvm. Virt-manager or virsh, with an OpenGL interface does a good job of being competent without requiring a whole operating system

More replies

Saved this for later, I've been wanting to do something similar

I don’t really want to suggest a Microsoft product here, but you can do all of this with Win10 Pro after you enable HyperV, too. Obviously not open-source, and you have to pay for the Win10Pro instance, but most laptops likely ship with that preinstalled anyway…

Proxmox is just a nice fancy wrapper around qemu and kvm

Hyper-V is fantastic but a bit overly complicated. While I love the added security features of Hyper-V, Microsoft treats it like a server. You're not really meant to be accessing the VMs through the Hyper-V interface. You're supposed to be RDPing into them.

Plus Hyper-V is a bit finicky. It has issues with a lot of GPUs so it won't load the VMs at full resolution without tinkering with the grub file to add a custom resolution. Otherwise, Hyper-V defaults to 800x600

More replies