devmatrix-docs/PROXMOX_VM_OPTIMIZED_CONFIG.md

3.9 KiB

Proxmox Production VM - Optimized Configuration

Based on your Proxmox hardware, here's the optimized VM configuration:

🖥️ Your Proxmox Hardware

  • CPU: 24 cores (2x Intel Xeon E5645 @ 2.40GHz)
  • RAM: 94.27 GiB total (45% used)
  • Storage: pve-main (NVMe)
  • Network: vmbr1

⚙️ Optimized VM Settings

VM Configuration (VM-202)

VM ID: 202
Name: DevMatrix-Prod
CPU: 6 cores (dedicated)
Sockets: 2 (matches your dual-CPU setup)
RAM: 16GB (no ballooning)
Disk: 150GB (NVMe with TRIM)
Network: vmbr1 (firewall enabled)
NUMA: Enabled (optimal for dual-socket)
CPU Priority: 2048 (high priority)
Auto-start: Yes
Boot Order: scsi0

Why These Settings?

Setting Value Reason
6 CPU cores Not too few, not too many Leaves plenty for other VMs
2 sockets Matches your hardware Better NUMA performance
16GB RAM 17% of total Guaranteed memory, no swapping
150GB NVMe Fast storage Plenty for app + logs + backups
vmbr1 Your network No VLAN needed
TRIM enabled SSD optimization Prevents performance degradation
High CPU priority 2048 vs default 1024 Production gets priority

🚀 Quick Start

1. Run VM Creation Script

# SSH into Proxmox host, then:
curl -fsSL https://git.lemonlink.eu/devmatrix/devmatrix-scripts/raw/branch/main/proxmox/create-production-vm.sh | sudo bash

This will:

  • Download Ubuntu 22.04 cloud image
  • Create VM-201 with optimized settings
  • Configure networking (192.168.5.211)
  • Start the VM

2. Complete Setup

# SSH into the new VM
ssh devmatrix@192.168.5.211

# Run setup
curl -fsSL https://git.lemonlink.eu/devmatrix/devmatrix-scripts/raw/branch/main/proxmox/setup-production-vm.sh | sudo bash

3. Deploy Mission Control

# Clone repo
git clone https://git.lemonlink.eu/devmatrix/mission-control.git ~/mission-control

# Deploy
cd ~/mission-control
mc-deploy

📊 Resource Usage Estimate

After deployment, expect:

  • CPU: 0.5-2 cores (idle to moderate load)
  • RAM: 2-4GB (can scale to 8GB if needed)
  • Disk: ~5GB initial, grows with data

Plenty of headroom for growth!

🔧 Manual Configuration (if needed)

If you prefer manual setup in Proxmox GUI:

  1. Create VM:

    • VM ID: 201
    • Name: DevMatrix-Prod
    • Resource: pve-main (NVMe)
  2. OS:

    • Use CD/DVD: Ubuntu 22.04 ISO
    • Or use cloud-init image
  3. System:

    • Machine: q35
    • SCSI Controller: VirtIO SCSI single
    • BIOS: OVMF (UEFI)
    • QEMU Agent: Yes
  4. CPU:

    • Sockets: 2
    • Cores: 3 per socket
    • Type: host
    • NUMA: Yes
  5. Memory:

    • Size: 16384 MB
    • Ballooning: No
  6. Network:

    • Bridge: vmbr1
    • Model: VirtIO
    • Firewall: Yes
  7. Disk:

    • Storage: pve-main
    • Size: 150GB
    • Discard: Yes
    • SSD emulation: Yes
    • iothread: Yes

Validation Checklist

After VM creation, verify:

  • VM starts without errors
  • Network reachable: ping 192.168.5.211
  • SSH working: ssh devmatrix@192.168.5.211
  • QEMU agent running: qm agent $VM_ID ping
  • TRIM working: fstrim -av (in VM)

🔄 Post-Deployment

Once Mission Control is running:

# Check status
mc-status

# Monitor resources
htop

# View logs
mc-logs

# Check disk usage
df -h

🆘 Troubleshooting

VM won't start

# Check for errors
qm start $VM_ID --verbose
journalctl -xe | grep pvedaemon

No network

# Check bridge
ip addr show vmbr1

# Check VM network
qm config $VM_ID

Storage issues

# Check available space
pvesm status

# Check disk
qm disk list $VM_ID

📈 Future Scaling

If you need more resources later:

# Add more CPU
qm set 202 --cores 8

# Add more RAM
qm set 202 --memory 24576

# Resize disk
qm disk resize 202 scsi0 +50G

All changes can be done live without downtime!


Ready to create the VM? Just run the script from your Proxmox host!