This post is based on Proxmox's official multipath guide https://pve.proxmox.com/wiki/Multipath, after trial an error we believe we have been able to distil it down to a few core steps, hope this is as useful to you as it is to us.
Some steps are to be done in all of your hosts while some others can be done within a single host, we have tried our best to deferentiate them at each step.
We assume the following;
Add new iSCSI LUN
In all nodes
# add iSCSI target via both paths iscsiadm -m node --targetname iqn.2005-10.org.freenas.ctl:generic-vm01 --portal 10.22.110.104:3260 -I iscsi-110 --op=new iscsiadm -m node --targetname iqn.2005-10.org.freenas.ctl:generic-vm01 --portal 10.22.111.104:3260 -I iscsi-111 --op=new
# login to the target iscsiadm -m node -T iqn.2005-10.org.freenas.ctl:generic-vm01 -l # verify session is active iscsiadm -m session
In a single node
# find new block devices lsblk | grep -E "^sd"
# get the WWID of the new disk (replace sde with your new disk) /lib/udev/scsi_id -g -u -d /dev/sde
In all nodes
# register WWID with multipathmultipath -a <WWID>
# refresh multipathmultipath -r # verify multipath device is present multipath -ll
In a single node
# create the physical volumepvcreate /dev/mapper/<WWID>
# create the volume group (this is where you define the name) vgcreate generic-vm01 /dev/mapper/<WWID>
In all nodes
# refresh LVM cache so other nodes see the new VG pvscan --cache
Proxmox UI
Datacenter → Storage → Add → LVM → Existing volume groups → generic-vm01 → Shared