Transcription
The PDM and PVE GUI may be dead, and an open-source project may have just killed it. Buckle up, friends, cuz this is going to be wild.
Hey there, home lovers, self-hosters, IT pros, and engineers. Rich here. I get a lot of emails from vendors, software makers, and people who are hoping I'll create a video about their product. And as much as I appreciate those emails, I don't usually do so because, well, it's either not in my niche or it's not something that I want to put my name next to, if you get what I mean.
Earlier this week, I got an email from the creators of an open-source project called Pegarrox introducing me to their work. I did what I normally do. I read the email and then I went and took a cursory look at their site. What I found was something that truly blew me away. Pegarrox may have single-handedly not only killed PDM, but also changed the game for what a modern PVE GUI should be. Enough hyperbole. Let's dig into Pegarrox and its features. See if this is something that you should be running if you're running Proxmox. And at the end, I'll show you how to deploy it. Let's get to it.
Pegarrox is an open-source web-based management platform for Proxmox environments that gives you a single pane of glass for multiple clusters, nodes, and workloads. It provides centralized monitoring, VM and container management, automated load balancing, cross-cluster migration, high availability orchestration, and role-based access control. All through a unified dashboard designed to reduce operational complexity and give administrators better visibility and control over distributed infrastructure.
If you thought this sounds a lot like what Proxmox Data Center Manager does, you'd be right. But unlike PDM's limited feature set, Pagarrox, with the exception of PBS visibility, can do practically everything a Proxmox user would want to do and more. For example, in Pagerox, you can actually create and customize VMs and containers, manage PVE host configurations, set up automated load balancing across your cluster, carry out cross-cluster migrations, and so much more. I think it's time that I actually show you Pegarrox, and then after the dog and pony show, walk you through getting it set up so you can use it for yourself. Let's get to it.
This is the login screen for Pegarrox. Once logged in, we land on the all clusters overview page, which can we just take a moment to take in the UI here. Seriously, beautiful. Anyway, this page is full of cards that provide you with macro details about all of the hosts and clusters you've added to Peggarox, including all clusters added and the top resource consumers in a scrollable list below. You can also sort this information by name, health, nodes, VMs, CPU, and RAM.
Now, let's dig into one of my clusters. Clicking on a cluster lands you on the overview page with cards for each node in your cluster in the middle left and overall cluster health and migration cards on the right. This is a single node cluster, so I only have one node card here. Clicking show all in the card gives me the full TLDDR of the current state of my nodes resource usage. Let's head up to the resources tab to dive deep into the workloads running on this cluster.
The resources tab is where you get a complete look at all of the workloads running. Both VMs and LXC containers are listed here. And while I appreciate the cards view, if you have a lot of workloads, you're probably going to be doing a bit of scrolling. Thankfully, Pega also provides you helpful filters at the top to narrow down your list by state with all active and stop filters as well as VM and LXC filters as well. Bonus, they also have a list view. And my favorite, the compact view, which gives you the best window into workload management I've seen for PVE.
In this view, once you select one of your workloads, you get macro details like CPU, RAM, disk, and uptime data, quick actions like the ability to shut down or reboot your VM or container, direct access to the console, and then this. You can modify and change the configuration of a VM or container right from Pegas. All the configurable options you have in PVE, you can do here. You can change your hardware, disks, network, manage snapshots, backups, replication, see history, and change options all from here. We're not done here yet, folks.
Under more actions, we can get historical graphs for the workload in question. And the graphs are beautiful. You can trigger a migration between nodes in your cluster, and you can also trigger a cross-cluster migration just like in PDM from here. And finally, you can also clone, force a reset, kill the VM, and even delete it from here. And if that wasn't enough, you can also create new VMs and containers from this interface as well. And doing so is as simple as filling out all the same fields you would in PVE.
Then there's the snapshot overview, which is something that PVE has been missing forever. The snapshot overview shows you all the snapshots in your cluster. This is one of those quality of life things that exist in enterprise virtualization platforms to make admins' lives easier and to help clean up wasted space due to forgotten snaps. And Pegrox has it.
Moving on to the data center tab. Now we land at the summary page which gives us macro information about the data center including status on cluster quorum, node state, guest and container state, and macro resource usage. The cluster tab provides details about your cluster, which is pretty bare for me because this is just a single node. Under options, you can view all of your data center options configured and edit them right from here.
Storage gives you a detailed view of all the storage configured in your data center, including name, type, content, path, nodes connected, whether they're shared with other nodes in the data center, and status. You can also add new storage from here, modify existing storage, and of course, delete them as well. They also give you the ability to configure multipath redundancy with just a single click of a button.
In SDN, you get all of your software-defined networking goodness from your data center as well. You can add, change, and remove any zones or v-nets all from here, as well as apply these settings out to all nodes in your cluster. Backups lets you manage your configured backups, create new backup jobs, and delete them as well. Replication lets you do the same thing for replication jobs, which isn't something that I use, so it's empty for me.
In Proxmox native HA, you can manage and control your PVE HA functionality, including adding and removing resources to HA and creating groups as well. CPU compatibility lets you change the default CPU compatibility mode for your data center. And finally, firewall gives you the ability to create firewall rules for your data center.
Popping over to the data store tab allows us to browse our provisioned data stores, and clicking on any one of them will show you what's held within them, from VMs or container disks to backups and ISOs as well. Love it. There's also a storage balancing feature that will allow you to enable automated balancing of your workloads across your storage to provide better performance. As it says, this is experimental, so do it at your own risk, but tell me if it works.
The automation tab allows you to configure scheduled actions, view tags and labels, create email alerts when thresholds are exceeded, create affinity and anti-affinity rules for your workloads, and allow you to configure and run custom scripts on your cluster nodes. Reports gives you usage information over time, selectable by hour, day, and week. If you want to see who your heavy hitters are historically, here's where you'd go. And finally, settings is where you can configure workload balancing for your cluster, manage updates for your nodes in your cluster, including rolling cluster updates, and more.
I've said this before and I will say it again. I am not a fan of the PVE UI. I think it's dated, difficult to find the actual settings you want, and it's downright ugly. In contrast, Pagarrox has kind of blown me away by its entire reimagining of what the Proxmox user experience could actually be like.
Now, I don't mean to paint Pagarrox as a production-ready replacement for all of your PVE and PDM activities. At the time I'm making this video, Pagarrox is considered beta, and there are things I saw while using it that reminded me of that. For example, there were plenty of places where the language UI was in German, even though I had selected English. So, remember, your mileage may vary. Also, there's a lot more to Perox that I'm going to skip over at this point so we can get to showing you how to deploy it. But just know it has a bunch of different themes that are user-selectable and that pigrox has put a ton of effort into security and user management. For example, you can join it to an AD domain or configure OIDC for single sign-on, configure two-factor authentication, manage permissions for users and groups, create tenants to logically segment out what people can access, and a ton more.
So with that out of the way, let's walk through deploying Pegas. You can deploy this either as a VM or as a container, but for the sake of simplicity, I'm going to walk you through deploying this as an LXC container in PVE. Let's get to that now.
All right, get logged in to your PVE host and head up to the create CT button in the top right corner of your UI. First up is to give this container a hostname. I'm going to call mine Peggarox and enter it in here as an FQDN. Next up is to give my root account a password and then confirm that password. Now, we'll head down and click next.
Now, we need to choose a template for our container. You can use basically any Linux distro you'd like, but I'm an Ubuntu fan, so I'll click the down arrow for template and select my Ubuntu 24.04 template that I downloaded previously. Once you've selected your preferred template, click next.
Now, onto disks. Pegarrox has very low disk base requirements to install, so you don't need to toss a bunch of storage at it. The default 8 GB my template recommends would be totally fine here, but I'm going to double it to 16 for future OS updates and some breathing room. Once you've decided how much space you'd like to provide, click next.
Now, we need to define how many vCPUs we want to provide to our Pegarrox container. The minimum would be a single core for a small home lab setup, but I'm going to bump this up to four just to make sure I've got some breathing room. Once you've entered in your core amount, click next.
Feederrox needs a minimum of 1 GB of RAM for their smallest deployment, which feels low to me. So, I'm going to provision out 4 GB of RAM for the container. Once you're ready, hit next.
Now, on the network tab, configure your container however best you need to so you can access your internal network. I'm going to place this container in my server network and I'm going to provide it a static IP address. Do yourself a favor and set a static IP address for your container here. Don't use DHCP for servers. It's bad form. Once you've configured your network the way it needs to be, click next.
Configure a custom DNS domain or two and specify DNS servers if you need to or use your host settings. That's up to you. I'm just going to use my host settings and press next to move on. Finally, this is the summary of the configuration for the container. I'm also going to click start after created. So, the container will be waiting for me for the next step. Hit finish to kick off the creation of this container.
I'm purposely playing it fast and loose with the resources for this container because the host it's running on has a ton of resources. Pagarrox has a doc site that provides all the minimum sizing requirements and prereqs necessary to properly size Pagga for your environment. I highly recommend you check out their site because they put a ton of effort into it.
Now, let's get on to the second half of the installation. Open up a browser and head over to the Pegarrox website at https://pegaprox.com. Once you're there, click any of the three download buttons you see to get to the download section. They provide you with pre-built VMs and LXC templates if you don't feel like rolling your own like we're doing. All you need to do here is click the copy link for the install script. Do that now.
Okay. Now back in PVE, let's head over to our freshly created container on the left and then click the console tab. We need to get logged into our container to execute the install script. Root is the user and the password is the one you set when you were configuring the container. Now that we're logged in, we need to make sure that curl is installed so that we can download the script and execute it. This is a Debian-based system, so I'll use the command `apt install curl -y` and press enter to install curl.
Once curl is installed, I'll type `clear` and press enter to clear the console for the next step. Now I'll right-click in the console window and paste the copied install command we just copied from the Pegarrox website. Then I'll hit enter to kick off this install. Pegarrox will first install any supporting packages that are missing from your system, which can take a bit of time to complete. You're not going to see much on screen while this is happening, so just be patient. The next few steps will run through without any interaction from you until we reach the final step, step six. Here's where you'll need to decide which ports Pega Prox will listen on. You can choose their default port numbers, which is totally fine. Choose the professional setup, which puts the website at standard SSL, or you can choose your own ports, which you'll probably forget later. I'm a professional, so I'll select option two and press enter.
Now, the installation will finish up, configure Peragger to boot with the system, configure your chosen ports, and provide you with the final reachable URLs for your system. Do yourself a favor and copy down the web interface URL for the next step. Now pop open a fresh tab in your browser. Toss in the URL from the completion of the setup and press enter. Pegarrox is running a self-signed certificate after the install, which is why we see this warning. You can provide a valid later if that's something you'd like to do, but I'm just going to bypass this and get to the login screen.
Welcome to the login screen of your fresh Pegas. My German is pretty rusty, so I'll change my language over to English below. The default user for a fresh install is `pegarrox`, all lowercase. and the default password is `admin`, also in lowercase. Once you've entered that in, click sign in. Pegarrox really wants you to change that default password, and you should do that. Click okay to close their warning message.
All right, this should look familiar to you after seeing the walkthrough earlier in the video. Let's add a PVE system to Pegarox. Now, head up and click the add cluster button at the top. Okay, first things first, give your cluster a name. If you have a single host, call it that. I'm going to call my cluster 2GT-PVE. Now, over in the host field, enter in either the IP address of your cluster or host or the DNS name if you set up DNS resolution as I have.
Now, we need to provide login credentials for the system we're adding. They recommend using the root account. So, I'm going to follow their lead and leave `root pam` here. And over in the password field, enter in the password for my root account. That's all we need to do to add a host or cluster to Pegarrox. And these settings you see here can be changed later. So feel free to leave them default here and click add cluster below.
Boom. That's it. You can now see your added host or cluster. And if you click on it in the left pane, you can drill down into its usage and overall health and head over to the resources tab to dig into your VMs and containers as well. That's it, folks. Your Pegas deployment is complete. Let's get to my final thoughts here.
First off, holy PGAROX effectively replaces both PVE and PDM's user interfaces and it does it in style. I can't say enough nice things about what PGARORox is building here. Proxmox Server Solutions, listen up. This is the GUI that I want for PVE, PDM, and PBS. Reach out to these people. Pay them a ton of money and adopt this as your next-generation UI. Seriously, as I said earlier in this video, Peg Prox looks like it is effectively killing PDM as it exists at this time entirely. There's no need to use PDM when Pagerox does everything it's doing and does it so much more beautifully, but saying it's a PDM replacement doesn't really do it justice. Pagerox kills the PVE GUI as well since you can do practically everything you do there.
Here, I've done test deploys of Proxmox in business settings. And one of the biggest issues I have to overcome with non-technical people who have to administer PVE is the UI of Proxmox. I made an entire video showing how I would redesign the PVE GUI. You should check out that video, by the way. But after seeing Peggarrox, I think that even my suggestions were weak sauce in comparison.
Eye candy aside, Pega Prox brings you cluster load balancing as a standard feature. Something I'll remind you is not available in PVE still after all of these years and gives you PVM features like cross-cluster migration functionality as well. It's still missing some things like PBS support and it's a beta, so I'm sure some things are going to break on you. But you've got nothing to lose here. It's open source and free to use and you won't see any more of those "no valid subscription" warnings when you log into it. Go spin up a container, deploy Pegrox right now. Kick the tires on it, use it, find bugs, and join me in our Discord and tell me all about it.
Thanks for watching this video, folks. And thank you to the fine people you see here who support us through Patreon and the YouTube membership program. If you'd like to support what we do here, consider checking those out. Join our community Discord and chat with me and other like-minded home labers, geeks, and nerds. And as always, we'll see you on the next one.