Proxmox VE

Enterprise-Grade Open Source Virtualization Platform

What is Proxmox VE?

Proxmox Virtual Environment (VE) is a complete, open-source virtualization management platform for running virtual machines (VMs) and containers. It combines KVM hypervisor and LXC containers, software-defined storage, and networking functionality on a single platform.

Built on Debian Linux, Proxmox VE provides a powerful web-based management interface, CLI tools, and REST API, making it the perfect foundation for your home lab or enterprise data center. Run Windows, Linux, and BSD virtual machines alongside lightweight Linux containers.

Whether you’re building a home lab to learn virtualization, consolidating servers in a small business, or managing hundreds of VMs in an enterprise environment, Proxmox delivers professional features without license costs.

Why Choose Proxmox VE?

System Requirements

Minimum Requirements

  • CPU: 64-bit processor with Intel VT/AMD-V support
  • RAM: 2 GB (4GB+ recommended)
  • Storage: 32 GB for Proxmox installation
  • Network: Gigabit Ethernet adapter
  • Installation: Bare metal (dedicated server)
  • BIOS: Virtualization enabled (VT-x/AMD-V)

Recommended for Production

  • CPU: Multi-core processor (8+ cores)
  • RAM: 16-64 GB+ (depends on VMs/containers)
  • Storage: SSD/NVMe for VMs, HDD for backups
  • Network: Multiple NICs for redundancy
  • Redundancy: Multiple hosts for clustering
  • UPS: Uninterruptible power supply

Installation Guide

Proxmox VE installs directly on bare metal hardware. This guide covers the installation process.

1. Download Proxmox VE ISO

Download the latest Proxmox VE ISO installer:

2. Create Bootable USB Drive

Write the ISO to a USB drive using tools like:

  • Linux: dd command or Etcher
  • Windows: Rufus or Etcher
  • macOS: Etcher or dd command

3. Boot and Install

Boot your server from the USB drive and follow the installer:

  1. Select “Install Proxmox VE”
  2. Accept EULA
  3. Choose target disk for installation
  4. Select country, time zone, and keyboard layout
  5. Set administrator password and email
  6. Configure network (IP, gateway, DNS)
  7. Review settings and click “Install”
  8. Wait for installation to complete (5-10 minutes)
  9. Reboot when prompted

4. Access Web Interface

After reboot, the console displays the web interface URL:

https://your-server-ip:8006

Login with:

  • Username: root
  • Password: (password you set during installation)
  • Realm: Linux PAM standard authentication

5. Initial Configuration

After first login, configure Proxmox:

  1. Dismiss or configure subscription notice (optional)
  2. Update system: Datacenter → Node → Updates → Refresh → Upgrade
  3. Configure storage pools if needed
  4. Upload ISO images for VM installation
  5. Create your first VM or container

6. Disable Enterprise Repository (For Community Use)

If not using a subscription, switch to the no-subscription repository:

# Edit sources
nano /etc/apt/sources.list.d/pve-enterprise.list

# Comment out the enterprise repo
#deb https://enterprise.proxmox.com/debian/pve bookworm pve-enterprise

# Add no-subscription repo
nano /etc/apt/sources.list

# Add this line:
deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription

# Update
apt update && apt upgrade -y

Quick Reference

Web UI Port: 8006 (HTTPS)

SSH Port: 22

Important: Proxmox must be installed on bare metal, not in a VM.

Tip: Enable hardware virtualization (VT-x/AMD-V) in BIOS!

Note: Self-signed SSL cert will show browser warning – this is normal.

Creating VMs and Containers

Create a Virtual Machine (KVM)

Perfect for running any OS – Windows, Linux, BSD:

  1. Click “Create VM” button (top right)
  2. Set VM ID and name
  3. Select ISO image from storage
  4. Configure system settings (BIOS/UEFI, machine type)
  5. Set disk size and storage location
  6. Allocate CPU cores
  7. Allocate RAM (in MB)
  8. Configure network (bridge to physical NIC)
  9. Review and confirm
  10. Start VM and connect via console

VM Performance Tips

  • Use VirtIO drivers for better disk/network performance
  • Enable QEMU guest agent for better integration
  • Use SSD storage for VM disks
  • Don’t over-allocate resources

Create a Container (LXC)

Lightweight Linux containers with near-native performance:

  1. Click “Create CT” button
  2. Set Container ID and hostname
  3. Choose template (Ubuntu, Debian, Alpine, etc.)
  4. Set root password
  5. Configure disk size
  6. Allocate CPU cores
  7. Allocate RAM and swap
  8. Configure network (static IP or DHCP)
  9. Review and create
  10. Start container

When to Use Containers vs VMs

  • Containers: Linux services, web servers, databases
  • VMs: Windows, other OSes, kernel customization

Storage Configuration

Local Storage

Directory:

Simple file-based storage. Easy to use, supports all content types.

LVM:

Block-level storage with snapshots. Better performance than directory storage.

ZFS:

Advanced filesystem with compression, deduplication, snapshots, and RAID.

Network Storage

NFS:

Share storage across multiple Proxmox nodes. Easy to set up.

iSCSI:

Block-level storage over network. Good for SAN environments.

SMB/CIFS:

Windows file shares. Useful for backups and ISO storage.

Clustered Storage

Ceph:

Distributed storage built into Proxmox. Provides redundancy and high availability.

GlusterFS:

Scale-out network-attached storage. Replicated across nodes.

ZFS over iSCSI:

Combine ZFS benefits with network access.

Adding Storage

Add storage via: Datacenter → Storage → Add

Configure content types: Disk images, Container templates, ISO images, Backups, Snippets

Backup & Restore

Automated Backup Jobs

Create scheduled backup jobs for VMs and containers:

  1. Go to Datacenter → Backup
  2. Click “Add” to create backup job
  3. Select VMs/containers to backup
  4. Choose storage destination
  5. Set schedule (daily, weekly, custom cron)
  6. Configure retention (how many backups to keep)
  7. Select backup mode:
    • Snapshot: VM keeps running
    • Suspend: VM paused during backup
    • Stop: VM stopped for backup
  8. Enable compression and notification

Backup Features

  • Incremental backups (save time and space)
  • Compression (zstd, lzo, gzip)
  • Email notifications on success/failure
  • Bandwidth limiting

Restore from Backup

Restore VMs or containers from backup:

  1. Navigate to storage with backups
  2. Select “Backups” content type
  3. Click on backup file
  4. Click “Restore”
  5. Choose to restore to original VM ID or new ID
  6. Start restored VM

Manual Backup

Create one-time backups:

  1. Select VM or container
  2. Go to “Backup” tab
  3. Click “Backup now”
  4. Choose storage and mode
  5. Wait for backup to complete

Best Practices

  • Store backups on separate storage
  • Test restores regularly
  • Use 3-2-1 backup rule (3 copies, 2 media, 1 offsite)

Clustering & High Availability

Create a Cluster

Join multiple Proxmox nodes into a cluster for centralized management:

# On first node - create cluster
pvecm create my-cluster

# On first node - get join information
pvecm status

# On other nodes - join cluster
pvecm add IP-OF-FIRST-NODE

Cluster Benefits

  • Single management interface for all nodes
  • Live migration of VMs between nodes
  • High availability for critical VMs
  • Shared storage and networking config
  • Centralized backup management

High Availability (HA)

Automatically restart VMs on another node if a node fails:

  1. Ensure you have a cluster (minimum 3 nodes)
  2. Configure shared storage (Ceph, NFS, etc.)
  3. Select VM → More → Manage HA
  4. Add VM to HA group
  5. Set priority and max restart/relocate attempts
  6. Save configuration

Live Migration

Move running VMs between nodes with zero downtime:

  • Right-click VM → Migrate
  • Select target node
  • Choose online migration
  • VM continues running during move

Advanced Features

Networking

  • Linux Bridge: Default, simple networking
  • OVS Bridge: Open vSwitch for advanced features
  • VLANs: Network segmentation
  • Bonding: NIC teaming for redundancy
  • Firewall: Built-in firewall at host, VM, and datacenter levels

User Management

  • Local user database (PVE)
  • Linux PAM authentication
  • LDAP/Active Directory integration
  • Fine-grained permissions and roles
  • Two-factor authentication support

API & Automation

  • Complete REST API for all functionality
  • CLI tools (pvesh, qm, pct, pvecm)
  • Terraform provider for IaC
  • Ansible modules for automation
  • Python SDK (proxmoxer)

Monitoring

  • Built-in metrics viewer (CPU, RAM, disk, network)
  • Historical data storage
  • Export metrics to Prometheus/Grafana
  • Email alerts on resource thresholds
  • Syslog integration

Tips & Best Practices

Performance Optimization

  • Use VirtIO drivers for VMs (paravirtualized)
  • Enable CPU host passthrough for better performance
  • Allocate resources wisely – don’t over-commit
  • Use SSD/NVMe for VM storage
  • Enable TRIM/discard for thin provisioned disks
  • Install QEMU guest agent in VMs

Security Hardening

  • Change default SSH port
  • Enable firewall on host and VMs
  • Use SSH keys instead of passwords
  • Keep Proxmox and VMs updated
  • Separate management network from VM network
  • Enable two-factor authentication

Common Troubleshooting

VM won’t start:

Check logs in Web UI task log. Verify storage is available. Ensure enough resources (RAM, CPU).

Slow performance:

Install VirtIO drivers. Check storage performance. Review CPU/RAM allocation.

Network issues:

Verify bridge configuration. Check VM network settings. Ensure VLAN tags are correct.

Storage full:

Delete old backups. Remove unused disk images. Expand storage or add new drives.

Cluster quorum lost:

Need majority of nodes online. Use pvecm expected 1 to force quorum in emergency.

Build Your Virtualization Infrastructure Today

Deploy Proxmox VE and unlock enterprise-grade virtualization without the enterprise price tag.

View All Self-Hosted Services Official Proxmox Documentation Community Forum

Proxmox VE is developed by Proxmox Server Solutions GmbH. Visit proxmox.com for downloads, documentation, and enterprise support options.