Proxmox placement audit
J.M. Field cluster, 7 nodes plus the E5-2470 v2 box. Data read live 2026-10-15 from pvesh: allocations, current use, swap, and 7-day CPU (average and peak, % of the VM's own vCPUs). First audit 2026-10-05; this is the update.
Bottom line
Node 1 is fixed. 122 aivqueue-3.216 moved off it (to node 7). Promised RAM went from 123 GB (98%) to 93 GB (74%), and it has 24 GB swap.
Node 7 is built and in the cluster (2x Gold 6142, 64 threads, 125 GB). It carries one VM so far, 122, and is the emptiest node.
Node 4 still has no swap. Checked on the host 2026-10-15: swapon shows nothing, no /swapfile, nothing in fstab. What was done earlier on node 4 was a ZFS cache cap (zfs_arc_max = 32 GB, in /etc/modprobe.d/zfs.conf) and vm.swappiness=20. Those help, but swappiness does nothing without a swap device.
Moved off node 4 tonight (2026-10-15): 134 pulse (LXC, 1 GB) to node 6, and 141 EnhancePanel-3.212 (12 GB) live to node 2 (same Broadwell CPU, no reboot). Node 4 went from 85 GB (77%) to 72 GB (65%) promised. ZFS cache cap then lowered from 32 to 16 GB (live and in initramfs). 72 GB of VMs plus 16 GB cache is 88 GB on a 110 GB host: 22 GB of headroom.
Nodes 5 and 6 have no swap either. Node 5 matters most: 179 GB promised on 251 GB, and it carries MariaDB-3.230 (96 GB), the VM a host OOM killed on 2026-10-02.
No RAM purchase is needed. RAM is still the only real constraint; CPU is idle across the cluster.
Nodes
| Node | CPU | Gen | Threads | RAM | Promised to running VMs | 10-05 | Swap | Status |
|---|---|---|---|---|---|---|---|---|
| JMFPMX05 | 2x Gold 6334 3.6 GHz | Ice Lake | 32 | 251 GB | 179 GB (71%) | 179 GB | 0 | No swap, holds MariaDB |
| JMFPMX06 | 2x Gold 6134 3.2 GHz | Skylake | 32 | 252 GB | 105 GB (42%) | 96 GB | 0 | Lots of room |
| JMFPMX01 | 2x Gold 6154 3.0 GHz | Skylake | 72 | 125 GB | 93 GB (74%) | 123 GB | 24 GB | Fixed |
| JMFPMX07 | 2x Gold 6142 2.6 GHz | Skylake | 64 | 125 GB | 30 GB (24%) | not built | 8 GB | New, mostly empty |
| JMFPMX02 | 2x E5-2690 v4 2.6 GHz | Broadwell | 56 | 189 GB | 117 GB (62%) | 106 GB | 24 GB | OK, took 141 |
| JMFPMX04 | 2x E5-2690 v4 2.6 GHz | Broadwell | 56 | 110 GB | 72 GB (65%) | 85 GB | 0 | Better, still no swap |
| JMFPMX03 | 2x Silver 4110 2.1 GHz | Skylake | 32 | 126 GB | 54 GB (43%) | 54 GB | 24 GB | OK, slowest |
| E5-2470 v2 box | E5-2470 v2 2.4 GHz | Ivy Bridge | ? | 188 GB | 0 | 0 | - | Not in cluster |
What is on each node now
| Node | Running VMs |
|---|---|
| 1 | 109 jmfsdc 8G, 110 sage-jmfacct 31G, 111 GrandeBay-Terminal 16G, 118 JMFDC2022 8G, 123 API-Server-3.244 21G, 138 JMFDC 8G |
| 2 | 112 jmfxups 12G, 113 jmfxfedex 12G, 114 FTP-Production 4G, 119 jmffs0.216 12G, 120 MySQL-Dev-Server-3.210 24G, 121 aivscripttesting3.202 18G, 141 EnhancePanel-3.212 12G, 142 MySQL-Dev-2 24G |
| 3 | 115 BackupAdminsvr 13G, 137 Enhance-Backup-Server 8G, 139 callcenter 8G, 145 FreePBX-v17 8G, 147 JMFDC2 8G, 148 Exchange2019 8G, 150 uptime-kuma 1G |
| 4 | 126 aivscript-3.240 32G, 132 aivtpcserver-3.217 8G, 133 AIV-3.234 32G |
| 5 | 128 aivweb-3.2 32G, 129 pmg 4G, 130 MariaDB-3.230 96G, 151 jmfweb01 16G, 152 JMFAGENT 31G |
| 6 | 102 aivscriptv2027 16G, 104 aivdocker1 16G, 108 aivStoreFront 8G, 116 proxmox-backup 32G, 127 Roku-TVS-Ubuntu 8G, 134 pulse 1G, 136 aivqueue 16G, 153 jmf-listmonk 8G |
| 7 | 122 aivqueue-3.216 30G |
Live-migration groups
VMs set to cpu: host can only live-migrate between the same CPU generation. Otherwise they need a shutdown and cold start.
- Skylake: nodes 1, 6, 7, and probably 3 (Silver is Skylake too, untested). The largest group.
- Broadwell: nodes 2 and 4. Proven again 2026-10-15: 141 moved 4 to 2 live, disk included, in 11 minutes.
- Ice Lake: node 5 alone.
- Ivy Bridge: E5-2470 v2 box alone. It has no AVX2.
Who actually needs a fast CPU
Peak = busiest moment in 7 days, as % of the VM's vCPUs. Over ~60% means it really uses its cores at times. Read 2026-10-15.
| VM | Node | vCPU | Avg | Peak | Verdict |
|---|---|---|---|---|---|
| 112 jmfxups | 2 | 4 | 28.3% | 119% | Busiest small VM. Keep on a modern node. Uses x86-64-v3, so never the 2470 box. |
| 130 MariaDB-3.230 | 5 | 16 | 11.7% | 102% | Right place. Fastest cores. |
| 152 JMFAGENT | 5 | 4 | 12.0% | 100% | Sage RDS test host, now doing real work. |
| 113 jmfxfedex | 2 | 4 | 11.6% | 100% | x86-64-v3, never the 2470 box. |
| 148 Exchange2019 | 3 | 2 | 19.7% | 99% | Hybrid management only. Busier than 10-05; check what is using it. |
| 123 API-Server-3.244 | 1 | 8 | 3.0% | 96% | Spiky (OP2 runs here). Keep on Skylake. |
| 138 JMFDC | 1 | 4 | 12.5% | 93% | Primary DC. Keep where it is. |
| 119 jmffs0.216 | 2 | 4 | 21.2% | 80% | File server, Server 2008. Busy and out of support. |
| 121 aivscripttesting3.202 | 2 | 2 | 11.2% | 58% | Dev, but busy. OK on the 2470 box. |
| 141 EnhancePanel-3.212 | 2 | 8 | 16.1% | 56% | Moved here 2026-10-15. |
Everything else peaks under 60%. Any of those would run fine on Silver or on the 2470 box.
Proposed moves
| # | VM | From | To | Frees | Status |
|---|---|---|---|---|---|
| 1 | 122 aivqueue-3.216 (30 GB) | 1 | 7 | 30 GB on node 1 | Done. Went to node 7, not 6 as planned. |
| 2 | 134 pulse (1 GB), 141 EnhancePanel-3.212 (12 GB) | 4 | 6, 2 | 13 GB on node 4 | Done 2026-10-15. Pulse restarted (about 8 min down, see below); 141 live, no reboot. |
| 3 | 133 AIV-3.234 (32 GB, 1% avg, dev, Server 2012) | 4 | 2470 box or node 7 | 32 GB on node 4 | Open. The biggest win left for node 4. Node 7 is a cold move (Broadwell to Skylake); the 2470 box needs the CPU set to x86-64-v2-AES first. |
| 4 | 120 MySQL-Dev-Server-3.210, 142 MySQL-Dev-2 (24 GB each, dev) | 2 | 2470 box | 48 GB on node 2 | Open. Not urgent: node 2 has 24 GB swap and 72 GB unpromised. |
| 5 | 121 aivscripttesting3.202, 111 GrandeBay-Terminal | 2, 1 | 2470 box | 34 GB | Open. |
| 6 | 136 aivqueue = 192.168.3.241, Dave's DBs | bare metal | 6 | - | Done 2026-10-06. Still on node 6; can live-move to 7 (both Skylake) if node 6 fills. |
Swap on the three nodes without it
Nodes 4, 5 and 6 boot from ZFS. Swap on a ZFS zvol can deadlock under memory pressure, which is exactly when it is needed, so do not add it that way. Safer options, in order:
- The ZFS cache is already capped on all three (checked 2026-10-15): 16 GB on all three. Node 4 was 32 GB and was lowered to 16 GB on 2026-10-15 (backup of the old file: /root/zfs.conf.bak-20261015).
- Keep promised RAM plus the ZFS cap under the host's RAM. Node 4 today: 72 + 16 = 88 of 110 GB.
- If real swap is wanted, use a small partition or disk outside ZFS. That needs a free disk or a reinstall, so it is a planned job, not a quick fix.
Shrink, don't move
- 152 JMFAGENT is a test RDS host for Sage, so its 31 GB is sized for the users it will carry. Do not shrink it. While it is in testing, consider lowering its balloon minimum from 24 GB so node 5 can take memory back. When it goes live, it would sit well on node 6 or node 7, in the same Skylake group as the Sage server (110 on node 1), and off node 5 where MariaDB lives. That move needs a reboot (Ice Lake to Skylake).
- 133 AIV-3.234: 32 GB, mostly idle. If it moves, also cut it to 8 GB.
- 126 aivscript-3.240 is the opposite: it uses nearly all of its 32 GB. Watch it, don't shrink.
Found during the 2026-10-15 moves
- 134 pulse takes about 5 minutes to boot. Its network is set to
ip6=dhcpand no DHCPv6 answer arrives, sonetworking.servicewaits for its 5-minute timeout before the pulse service starts. Setting IPv6 to static or none in the container's network settings removes the wait. - Rack 1 Symmetra (SYM-1, 192.168.0.248) is off the network after the UPS test, and so is PDU rail D (192.168.0.253). Rack 2 Symmetra is online, 19% load, 42 min runtime. Nothing in the cluster rebooted: every node has been up since 2026-09-20 or 21.
The E5-2470 v2 box: rules
No AVX2 (Ivy Bridge, 2013). Any VM using x86-64-v3 (112 jmfxups, 113 jmfxfedex) will not boot there. Any VM on cpu: host moved there must switch to x86-64-v2-AES first, and software inside it that needs AVX2 will then fail. Most notable: MongoDB 5+, some newer Docker images, RHEL 10 / Alma 10. Ubuntu, Windows Server, MySQL/MariaDB are fine.
DDR3 and high idle power. Expect 200 to 300 W at idle. Cost it against the RAM you are not buying.
Single generation group. Nothing live-migrates to or from it. Every move is a reboot.
Good for: dev and test VMs, idle legacy Windows, a second PBS target or replica. Not for: phones, DCs you depend on, MariaDB-3.230, anything client-facing.
Clean-up candidates (decide, then archive)
Stopped VMs cost no RAM, but they hold disk and some would cause an IP conflict if someone starts them.
| VM | Node | Note |
|---|---|---|
| 127 MariaDB-3.230-DONOTPOWER | 3 | Gone. VMID 127 is now Roku-TVS-Ubuntu, running on node 6. |
| 124 mailsvr-DONOTPOWER | 2 | Back up, then delete. |
| 105 FTP-Retired, 106 Sage-Test-Box, 100 Sage2025 | 2 | Confirm with the Sage owner. |
| 117 FreePBX-v16-Production | 2 | v17 (145) is live. Archive v16. |
| 107 mariadbmonitor, 135 node3worker, 140 akaunting, 146 erpnext | 3 | Unused experiments? |
| 103 RLDEV-Browsershot, 125 WebServer-3.246 | 4 | Stopped since at least last week. |
| 101 pdf-renderer | 6 | Stopped. |
| 131 W11-Admin | 2 | Stopped. New on this list since 10-05. |
| 990 migtest-990 | 6 | Stopped. Migration test VM, delete when done. |
End-of-life operating systems
- 148 Exchange2019: Exchange 2019 support ended October 2025. It is hybrid management only, so the option is Microsoft's management-tools-only setup (Exchange 2019 CU12+) and retiring the VM. Check what still relies on it (SMTP relay, recipient management) first.
- 119 jmffs0.216: Windows Server 2008. File server, out of support since 2020. The highest risk VM in the cluster.
- 115 BackupAdminsvr, 133 AIV-3.234: Server 2012. Out of support since 2023.
- 121 aivscripttesting, 126 aivscript-3.240: CentOS. CentOS 7 is out of support since mid-2024 (version not checked).
What this audit did not check
- Disk: storage use per node and which ZFS pools each VM lives on. Moves to the 2470 box need its storage and network set up first.
- Network: whether the 2470 box has 10G. If not, cold moves of 24 to 32 GB disks go at 1G.
- The 2470 box itself: model, core count, and whether its RAM and disks are healthy.
- CPU flags of the Silver 4110 vs the Gold Skylakes. Node 3 in the Skylake group is likely, not tested.
- Guest OS versions beyond Proxmox tags.
First generated 2026-10-05. Updated 2026-10-15. Internal. Not indexed.