ucarp is one possible solution. It do not has any relation with proxmox. So you need to install ucarp in all proxmox vm, and the ucarp VIP IP will be allocated on master VM. If master VM is down, then the VIP ip will go to the slave VM.
Even more, I can say ucarp is working very well, at least for me
But maybe a load-balancing and fail-over for master and slave VM will be better ...
This can be donne, but depends of your performance target.
Good luck