“QEMU Guest Agent is not running” in Proxmox means one of three things: the agent package isn’t installed in the guest, the virtio-serial channel is missing, or the VM’s Options > QEMU Guest Agent flag is off. The forum answer is always “install qemu-guest-agent,” but that only fixes the first one.

Check the guest first
Inside the VM, run this. It’ll tell you if the agent is even there.
systemctl status qemu-guest-agent
If it says unit not found, install it. On Debian/Ubuntu that’s apt install qemu-guest-agent, on RHEL-ish it’s dnf install qemu-guest-agent. Then start it with systemctl enable --now qemu-guest-agent. If the service is active but Proxmox still complains, keep reading.

Virtio-serial channel missing
The agent talks to Proxmox over a virtio-serial device. If the VM doesn’t have one, the host can’t see the agent no matter what’s installed. Check the VM’s hardware tab for a “Serial” device of type “virtio”. If it’s not there, add it. Shut the VM down first, then go to Hardware > Add > Serial Port > type virtio. Start the VM back up and the warning should clear.
The flag nobody remembers
This is the dumb one. Under the VM’s Options, there’s a “QEMU Guest Agent” checkbox. If it’s unchecked, Proxmox won’t even try to talk to the agent. Enable it, and the warning goes away. I’ve seen this on VMs that were cloned from templates where the flag didn’t carry over.
If you want to see what the agent actually reports once it’s working, I wrote about qemu guest agent ram usage — the numbers inside the guest don’t always match what Proxmox shows.