The thing is that when a process is blocked in stated D ( waiting for I/O) it can be caused by many different things. Most of the time, a unreachable filesystem where a file handler is still open will be the cause ( hence the request to check with df if all FS are accessible), either a NFS mount, or the fuse filesystem in /etc/pve.
So if you have pveproxy process blocked:
Check if the process is in state D
ps faxl | grep pveproxy
1 33 7475 1 20 0 332612 88092 hrtime Ss ? 0:00 pveproxy
here I have the state Ss for instance on my system
If not in state D, restart with
service pveproxy restart
if in state D, check if your filesystem
df -h
if the df command hangs, then restart the pve-cluster service
If this does not help you need to reboot the host. A process waiting for I/O cannot be cleanly killed that's Unix Design ( that's why the exact process state is called *un-interruptible sleep*.
From my experience this comes most of the time from flaky networks (example: NFS mounts when the network went down)