Skip to content

The ultimate datacenter management solution for Proxmox VE. Unified multi-cluster control, intelligent load balancing, and seamless cross-cluster VM migrations β€” all in one beautiful interface.

License

Notifications You must be signed in to change notification settings

PegaProx/project-pegaprox

Repository files navigation

PegaProx Logo

PegaProx

Modern Multi-Cluster Management for Proxmox VE

Website β€’ Documentation β€’ Releases

Version Python License


πŸš€ What is PegaProx?

PegaProx is a powerful web-based management interface for Proxmox VE clusters. Manage multiple clusters from a single dashboard with features like live monitoring, VM management, automated tasks, and more.

Dashboard Screenshot

✨ Features

Multi-Cluster Management

  • πŸ–₯️ Unified Dashboard - Manage all your Proxmox clusters from one place
  • πŸ“Š Live Metrics - Real-time CPU, RAM, and storage monitoring
  • πŸ”„ Live Migration - Migrate VMs between nodes with one click

VM & Container Management

  • ▢️ Quick Actions - Start, stop, restart VMs and containers
  • βš™οΈ VM Configuration - Edit CPU, RAM, disks, network, EFI, Secure Boot & more
  • πŸ“Έ Snapshots - Create and restore snapshots
  • πŸ’Ύ Backups - Schedule and manage backups
  • πŸ–±οΈ noVNC Console - Direct browser-based console access
  • βš–οΈ Load Balancing - Automatic VM distribution across nodes
  • πŸ” High Availability - Auto-restart VMs on node failure
  • πŸ“ Affinity Rules - Keep VMs together or apart on hosts

Security & Access Control

  • πŸ‘₯ Multi-User Support - Role-based access control (Admin, Operator, Viewer)
  • πŸ” 2FA Authentication - TOTP-based two-factor authentication
  • πŸ›‘οΈ VM-Level ACLs - Fine-grained permissions per VM
  • 🏒 Multi-Tenancy - Isolate clusters for different customers

Automation & Monitoring

  • ⏰ Scheduled Tasks - Automate VM actions (start, stop, snapshot, backup)
  • 🚨 Alerts - Get notified on high CPU, memory, or disk usage
  • πŸ“œ Audit Logging - Track all user actions
  • πŸ”§ Custom Scripts - Run scripts across nodes

Advanced Features

  • 🌐 Offline Mode - Works without internet (local assets)
  • 🎨 Themes - Dark mode, Proxmox theme, and more
  • 🌍 Multi-Language - English and German language support
  • πŸ“± Responsive - Works on desktop and mobile

πŸ“‹ Requirements

  • Python 3.8+
  • Proxmox VE 8.0+ or 9.0+
  • Modern web browser (Chrome, Firefox, Edge, Safari)

⚑ Quick Start

Option 1: Automated Installation

# Download the deployment script
curl -O https://raw.githubusercontent.com/PegaProx/project-pegaprox/refs/heads/main/deploy.sh

# Give the deployment script permission
chmod +x deploy.sh

# Run the deployment script
sudo ./deploy.sh

Option 2: Manual Installation

# Clone the repository
git clone https://github.com/PegaProx/project-pegaprox.git
cd project-pegaprox

# Install dependencies
pip install -r requirements.txt

# Run PegaProx
python3 pegaprox_multi_cluster.py

Option 3: Docker Image (Dev)

This solution is only for development and testing and you should take special care about the sqlite db in the config path.

# Clone the repository
git clone https://github.com/PegaProx/project-pegaprox.git

# Build Docker Image
docker build -t pegaprox .

# Run the image
docker run -p 5000:5000 pegaprox

Updating to v0.6.1

Option 1: Update Script (Recommended)

#Go in the Folder
cd /opt/PegaProx

#Download it with this command. 
curl -O https://raw.githubusercontent.com/PegaProx/project-pegaprox/refs/heads/main/update.sh

#Permissions adjustment for the File so we can run it
chmod +x update.sh

#Please execute this then
sudo ./update.sh 
or
./update.sh 

Option 2: Manual

#Go in the Folder
cd /opt/PegaProx

curl -O https://raw.githubusercontent.com/PegaProx/project-pegaprox/main/pegaprox_multi_cluster.py
curl -O web/index.html https://raw.githubusercontent.com/PegaProx/project-pegaprox/main/web/index.html
curl -O https://raw.githubusercontent.com/PegaProx/project-pegaprox/main/requirements.txt

# Install dependencies (choose one):
pip3 install -r requirements.txt                # System Python
./venv/bin/python -m pip install -r requirements.txt      # Virtual environment
Can also work with: ./venv/bin/pip install -r requirements.txt 

sudo systemctl restart pegaprox

What's New in v0.6.1

  • Fixed Force Stop for LXC containers
  • Fixed Web Updater
  • Fixed pagination error in pre-compiled builds (#4)
  • Added update.sh for easy updates
  • Added build.sh for JSX pre-compilation (devs only)

πŸ”§ Configuration

After starting PegaProx, open your browser and navigate to:

https://your-server-ip:5000

Please use the following default credentials for the first login:

Username: pegaprox
Password: admin

Afterwards, please proceed with the following steps:

  1. First Login: Create your admin account on the setup page
  2. Add Cluster: Go to Settings β†’ Clusters β†’ Add your Proxmox credentials
  3. Done! Start managing your VMs

πŸ“ Directory Structure

/opt/PegaProx/
β”œβ”€β”€ pegaprox_multi_cluster.py   # Main application
β”œβ”€β”€ web/
β”‚   └── index.html              # Frontend
β”œβ”€β”€ config/
β”‚   β”œβ”€β”€ pegaprox.db             # SQLite database (encrypted)
β”‚   └── ssl/                    # SSL certificates
β”œβ”€β”€ logs/                       # Application logs
└── static/                     # Offline assets (optional)

πŸ”’ Security Notes

  • All data is encrypted with AES-256-GCM
  • Passwords are hashed with Argon2id
  • HTTPS is required for production use
  • Session tokens expire after inactivity
  • Rate limiting protects against brute force

πŸ“– Documentation

Full documentation is available at docs.pegaprox.com

πŸ“œ License

This project is licensed under the AGPL-3.0 License - see the LICENSE file for details.

πŸ’¬ Support

⭐ Star History

If you find PegaProx useful, please consider giving it a star! ⭐


Made with ❀️ by the PegaProx Team