Proxmox machine version mismatch is almost always a pending reboot after a kernel update. The fix is simple: compare pveversion, uname, and your VM machine settings, then either reboot the host or change the machine type in the config. Here’s the exact walkthrough.

First, check what Proxmox thinks it is
Run pveversion on the host. It reports the installed package version, like pve-manager/8.2.2/9355359cd7afbae4. That’s the version the web UI shows and what the API returns. Now run uname -r. If the kernel version doesn’t match what you’d expect from that pveversion, that’s your mismatch. For example, pveversion might say 8.2 but uname shows a 6.5 kernel when 8.2 ships with 6.8. That means the host was updated but not rebooted into the new kernel.
Check the VM machine type too
For each VM, the config file in /etc/pve/qemu-server/<vmid>.conf has a machine line. It might say pc-i440fx-8.1 or pc-q35-8.1. If the host’s QEMU version is newer (say 8.2), the VM is still using an older machine type. That’s not necessarily a problem, but it can cause a mismatch warning in the GUI or when you try to live migrate. You can update it by shutting down the VM, editing the config to the newer machine type, and starting it again. Or just leave it—it’s not broken, just old.

Reboot or edit: which one fixes it?
If uname -r shows an older kernel than pveversion implies, reboot the host. That’s the whole fix. After reboot, run both commands again and they should line up. If the mismatch is only about VM machine types, no reboot needed—just edit the VM config. But honestly, if you’re not having issues, don’t bother. The machine type mismatch is cosmetic unless you’re doing live migration between hosts with different QEMU versions.
My take
This is one of those things that looks scary but isn’t. The top forum threads make it sound like a deep problem when it’s usually just a stale kernel. Reboot first. If that doesn’t clear it, check the VM configs. And if you’re on a cluster, make sure all nodes are on the same Proxmox version or you’ll see this constantly. For more on Proxmox quirks, check out changing VMID in Proxmox or diagnosing container network issues.