Rolling zero-downtime migration: migrate VMs first, then reinstall Proxmox on freed ESXi hardware and join cluster.
| Host | IP | ESXi Version | RAM | Storage | Running VMs | Priority |
|---|---|---|---|---|---|---|
| esxi-01 | 192.168.9.3 | 6.7 | 383.9 GB | 7.14 TB | 7 of 12 | Medium |
| esxi-02 | 192.168.8.125 | 8.0U2b | 255.7 GB | 4.79 TB | 1 of 13 | Low |
| esxi-03 | 192.168.9.6 | 7.0U3f | 255.9 GB | 11.15 TB | 4 of 20 | Low |
| esxi-04 | 192.168.9.82 | 8.0U2b | 766.6 GB | 10.35 TB | 26 of 31 | HIGH — RAM 97% full |
| esxi-05 | 192.168.9.90 | 7.0U3f | 255.9 GB | 4.09 TB | 6 of 7 | Medium — DS2 90% full |
| esxi-06 | 192.168.9.70 | 6.7 | ~384 GB | 2.39 TB | 4 of 6 | k3s hosts live here |
ESXi credentials (all hosts): root / VmsDsbPr3d@t0r#&&25
Exception: esxi-06 root password is Pr3d@t0r&&
Run ALL 5 steps while the disk is mounted offline — never after first boot.
qm set <VMID> --sata0 <storage>:vm-<VMID>-disk-0 --delete scsi0 --boot order=sata0
ESXi uses ens34 (vmxnet3). Proxmox uses enp6s18 (OVMF/EFI) or ens18 (SeaBIOS).
Fix via MAC address match in netplan (safest):
# Get MAC from: qm config <VMID> | grep net0
# Then in /etc/netplan/*.yaml:
ethernets:
id0:
match:
macaddress: "xx:xx:xx:xx:xx:xx"
addresses: [192.168.x.x/24]
gateway4: 192.168.x.1
Also grep: grep -r 'ens34' /mnt/vmfix/etc/
touch /mnt/vmfix/etc/cloud/cloud-init.disabled
ln -sf /dev/null /mnt/vmfix/etc/systemd/system/keepalived.service
Never leave an interface with no addresses — services with After=network-online.target (OpenResty, etc.) will deadlock on boot waiting for DHCP.
| VM | IP | RAM | Disk | Notes |
|---|---|---|---|---|
| SmartB Sonar / CI | 192.168.9.144 | 32 GB | — | Internal registry + Plane |
| SmartB Sports | 192.168.9.142 | 16 GB | — | |
| SmartB Sports ISPConfig | 192.168.9.145 | 16 GB | — | |
| SmartB Mailer | 192.168.8.16/17 | 16 GB | — | Dual IP |
| Dev DB | 192.168.8.13 | 48 GB | — | Dev MySQL |
⚠️ Only 33.8 GB RAM free — migrate urgently.
| VM | IP | RAM | Notes |
|---|---|---|---|
| smartb-prod-db02 | 192.168.8.15 | 256 GB | MySQL primary — do not migrate without DB cutover plan |
| Prod media/images | 192.168.9.129, 9.135 | 128 GB each | |
| prod-web01 (Ubuntu24 Web01) | 192.168.9.160 | 32 GB | OpenResty primary |
| smartb-review-db | 192.168.9.152 | 16 GB | Graylog |
| SmartB Clickhouse | 192.168.9.116 | 16 GB | ClickHouse |
| Ubuntu-Desktop | off | 256 GB | Large idle — migrate/delete first |
| Windows Server AI2 | off | 128 GB | Large idle |
| VM | IP | Notes |
|---|---|---|
| Kubernates-E01 | 192.168.9.94 | k3s worker |
| Kubernates-E02 | 192.168.9.92 | Old k3s single master — still running, being replaced |
| New API Scraper (Salim PROD) | 192.168.9.93 | Production scraper |
| Node | Free RAM | Storage Free |
|---|---|---|
| bm02 | ~166 GB | 2.57 TB |
| bm03 | ~265 GB | 1.29 TB (⚠️ FAULTY) |
| bm04 | ~162 GB | 697 GB |
| bm01 | ~173 GB | 2.67 TB |
| bm05 | ~200 GB | 8.5 TB |
| bm06 | ~200 GB | 3.32 TB |
| bm07 | ~— | 2.18 TB |