Wednesday, June 19, 2024
What is Proxmox?
Proxmox is an open-source software company which builds reliable infrastructure solutions.
Their main products are:
We at Natron use Proxmox VE and Proxmox Backup Server to deliver reliable infrastructure services to our customers.
Looking under the hood of Proxmox VE
Proxmox itself is a management layer, which combines a lot of open-source technologies to build a rock solid hypervisor with a lot of advanced featues. Those technologies include:
Debian The default Proxmox installation is based on Debian. If you want, you can install Proxmox on an existing Debian/Ubuntu installation.
KVM (Kernel-based Virtual Machine): KVM turns Linux into a type-1 (bare-metal) hypervisor. It allows Proxmox to run multiple, isolated virtual machines by leveraging the power of the Linux kernel itself.
QEMU (Quick EMUlator): QEMU is a generic and open-source machine emulator and virtualizer, which Proxmox uses to achieve hardware virtualization.
Ceph and ZFS: For robust and scalable storage solutions, Proxmox integrates Ceph, a unified, distributed storage system designed for excellent performance, reliability, and scalability. The ZFS filesystem is known for its data integrity and ability to manage large volumes of data.
Corosync Cluster Engine: This component is designed for enabling high availability of clusters, managing cluster membership, and providing consistent data syncing across the network.
This is what the management webinterface looks like:
Rolling out VMs: A no-sweat approach
Deploying virtual machines (VMs) doesn't have to be a time consuming task filled with manual configurations and endless adjustments. Here at Natron, we have streamlined the process to make VM provisioning as smooth and straightforward as possible. Using Ansible in conjunction with predefined templates, we automated the steps needed to get a VM up and running quickly.
We do this using centrally defined workflows like:
🚀 Proxmox VM Setup:
Clone Template
Update VM Config (CPU, RAM, Storage, Cloud-Init)
Boot VM
[…]
🔥 Firewall Rule Config:
Create Firewall Aliases
Append to Firewall Rules based on group membership
[…]
📦 Kubernetes Cluster Setup:
Bootstrap Kubernetes Controlplane
Join Worker Nodes
Update Cycle of Kubernetes Clusters
[…]
Thanks to our standardized workflows, we can offer a wide range of services, including Kubernetes, S3 and various databases, with many more on the way. Our inventory is rapidly expanding to meet the evolving needs of our customers.
Keeping Proxmox in shape
For the maintenance of hypervisors, a key point is workload migration. Just like any other hypervisor, Proxmox allows you to live migrate VMs to a new host. During the live migration, all of the state (RAM) gets moved to a different host:
Just like any good hypervisor, Proxmox also allows you to bulk migrate all VMs as a single task.
A migration of 200 GBs of RAM currently takes us about 8 minutes (400 MB/s)
After all VMs are migrated, you can either update the host using the normal debian based linux commands:
Or you can use the web interface to do so.
We at Natron leverage python based scripts to automate VM movement and the hypervisor maintenance process.
"Isn’t Proxmox just for homelab users?"
Contrary to the perception that Proxmox is just for homelab users, our deployment at Natron Cloud shows its scalability and reliability in a larger environment. Proxmox VE's feature set and robust community support make it an ideal choice for powerful but still affortable virtualization solutions.
Because Proxmox offers a great API, a lot of tasks (templating, VM provisioning, maintenance, …) can be super easily automated. Proxmox runs on a native linux OS to which you get full access to configure and install your own customizations.
Proxmox offers Enterprise Support licenses using a simple and transparent licensing model. You can find more information here:
https://www.proxmox.com/en/proxmox-virtual-environment/pricing
Why we choose Proxmox
When it comes to managing our virtual infrastructure, choosing the right platform is crucial. After careful consideration, we opted for Proxmox VE (Virtual Environment) as our backbone for several compelling reasons. Here is why Proxmox stands out as the ideal solution for our needs:
Robust Technologies
Integrates with proven solutions like KVM
High reliability and stability
Supports a wide range of hardware and software configurations
Good Automation
Compatible with popular automation tools (e.g., Ansible, Packer, …)
Allows for scripting and automatic scaling
Simplifies repetitive tasks and bulk operations
Open Source
Community-driven improvements
Transparency and flexibility in customization
Flexibility
Ceph software designed storage solution that allows HCI architecture
Software defined networking (SDN) integrations
Want learn more about Proxmox?
Did we pique your interest? We'd love to hear from you! Let us know what topics you are interested in learning more about or any specific questions you have about Proxmox.
Unleash Your Cloud Potential
Sven Gerber
Cloud Engineer | Partner