My Journey: Transition from VMWare ESXi 7 to Proxmox 9
After running VMWare ESXi for over 5 years in my homelab, I recently completed the migration to Proxmox 9. This wasn't a decision I made lightly—with 30+ VMs running various Linux distros, the migration required careful planning and execution. Here's my complete journey and the lessons learned along the way.
My Homelab Journey Background
I started my homelab journey in 2020, coming from a VMWare Workstation Player background. Naturally, VMWare ESXi 7 was my go-to choice for the hypervisor—it was the latest version available and felt like a natural progression.
The Hardware Evolution
My journey began with modest hardware:
- Initial Setup (2020): Intel NUC8I7BEH with 32GB RAM
- Hardware: Perfect for a beginner homelab
- Duration: Ran this setup for about 18 months before upgrading
As my homelab needs grew, I moved to higher-specification hardware from Supermicro with AMD Epyc 8 core processor while sticking with ESXi 7. By late 2023, I was managing 30+ VMs, mostly Linux distributions serving various purposes in my lab environment.
The Turning Point: VMWare Acquisition
The game changed in late 2023 when Broadcom acquired VMWare. The free version of ESXi was discontinued, leaving many homelabbers like myself in a difficult position. While ESXi 8 became available as a free version in April 2025, I had already started considering alternatives.
Why I Chose Proxmox
During my 5+ years with ESXi, I kept hearing about Proxmox VE—an open-source hypervisor that seemed to offer compelling advantages:
Key Motivating Factors
- Open Source: No licensing uncertainties or vendor lock-in
- LXC Container Support: Native support for both VMs and containers
- Comprehensive Management: Integrated backup, monitoring, and clustering
- Community Support: Active development and community backing
However, I was initially reluctant to migrate because:
- Scale: 30+ VMs represented significant investment in configuration
- Complexity: Migration isn't a simple one-click process
- Time Investment: Required immense planning and execution time
Step 1: Planning for Migration
The planning phase was crucial. With 30+ VMs, I couldn't afford downtime or data loss.
Pre-Migration Assessment
VM Inventory
- Documented all 30+ VMs with their purposes
- Catalogued resource allocations (CPU, RAM, storage)
- Identified critical vs. development VMs
- Listed network configurations and dependencies
Infrastructure Requirements
- Verified hardware compatibility with Proxmox
- Planned storage layout and naming conventions
- Designed network bridge configurations
- Created migration timeline and rollback plans
Migration Strategy
I decided on a phased migration approach:
- Phase 1: Non-critical development VMs
- Phase 2: Testing and validation VMs
- Phase 3: Production and critical services
Step 2: Actual Migration Process
Installing Proxmox 9
- Fresh Installation - Clean Proxmox 9 installation with initial networking and storage configuration
- Network Configuration - Created Linux bridges matching ESXi port groups with VLAN tagging
VM Migration Methods
Method 1: Using Proxmox Import Wizard
Proxmox provides a built-in import wizard, but it's not a complete solution:
# Example import command (simplified)
qm importovf 100 /path/to/vm.ovf local-lvm --format qcow2
Method 2: Manual Export/Import Process
For better control, I used a manual process:
# Convert VMDK to qcow2
qemu-img convert -f vmdk -O qcow2 source-disk.vmdk /path/to/storage/vm-100-disk-0.qcow2
# Create VM configuration
qm create 100 --name "migrated-vm" --memory 2048 --sockets 1 --cores 2
qm set 100 --scsi0 local-lvm:vm-100-disk-0,format=qcow2
Step 3: Post-Migration Configurations
This was where the real work began. Simply importing VMs wasn't enough—each required specific configurations.
Essential VM Adjustments
# Update VM hardware settings
qm set 100 --cpu cputype=host # Better performance
qm set 100 --balloon 0 # Disable memory ballooning if needed
qm set 100 --agent 1 # Enable Qemu Guest Agent
Linux VM Specific Changes
Most of my VMs were Linux distributions, requiring these adjustments:
Install Qemu Guest Agent
# Ubuntu/Debian
sudo apt update && sudo apt install qemu-guest-agent
sudo systemctl enable qemu-guest-agent
# CentOS/RHEL
sudo yum install qemu-guest-agent
sudo systemctl enable qemu-guest-agent
Remove VMWare Tools
# Clean removal of VMWare tools
sudo vmware-uninstall-tools.pl
Step 4: Final Stage - Running VMs Seamlessly
Performance Optimization
- CPU Configuration - Set CPU type to
hostfor better performance - Storage Performance - Configured appropriate cache settings and I/O threads
- Memory Management - Optimized memory allocation and ballooning settings
Backup Configuration
One major advantage of Proxmox is integrated backup:
# Configure automated backups
vzdump 100 --storage backup-storage --mode snapshot --compress gzip
Lessons Learned and Best Practices
What Worked Well
- Phased Approach: Migrating in phases reduced risk and stress
- Documentation: Thorough documentation saved time troubleshooting
- Testing Environment: Having a test Proxmox instance helped validate processes
Challenges Faced
- Time Investment: Migration took much longer than initially estimated
- Network Configuration: Required careful attention to bridge and VLAN setup
- VM Tools: Removing VMWare tools and installing Qemu agents took time
The Results: Was It Worth It?
After completing the migration of all 30+ VMs, I can confidently say yes, it was worth it:
Benefits Realized
- Cost Savings: No licensing fees or vendor dependency
- Enhanced Features: Better backup integration, LXC containers, clustering
- Performance: Comparable or better performance than ESXi
- Flexibility: Open-source platform with active development
- Peace of Mind: No concerns about future licensing changes
Conclusion
Migrating from VMWare ESXi 7 to Proxmox 9 with 30+ VMs was a significant undertaking that required careful planning and execution. While the process wasn't trivial, the benefits of an open-source, feature-rich virtualization platform have made it worthwhile.
The key to success was treating this as a project, not a quick task. Proper planning, phased execution, and allowing time for post-migration optimization were crucial factors in achieving a successful migration.
Timeline Summary: 5+ years on ESXi → 1 month planning and migration → Successfully running on Proxmox 9
The migration journey has not only saved me from licensing concerns but also opened up new possibilities for my homelab growth and experimentation.