Skip to content

Instantly share code, notes, and snippets.

@clemenko
Last active November 6, 2025 15:36
Show Gist options
  • Save clemenko/5d8c3c883ce168bf2a61911d15bd32cd to your computer and use it in GitHub Desktop.
Save clemenko/5d8c3c883ce168bf2a61911d15bd32cd to your computer and use it in GitHub Desktop.

Proxmox 9, iscsi, and Pure Storage FlashArray

Based on https://www.youtube.com/watch?v=g5fhCiAETSU
With help from https://www.burakaktas.com/proxmox-ve-with-pure-storage-using-iscsi-and-lvm/

This is a simple guide for updating Proxmox 9 for use with a Pure Storage FlashArray over iscsi. This guide should work with other iscsi providers.

# run post install script
bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/tools/pve/post-pve-install.sh)"

# apt install packages
apt update; apt install -y multipath-tools lsscsi

# update iscsi conf
sed -i -e 's/node.startup = manual/node.startup = automatic/' -e 's/node.session.timeo.replacement_timeout = 120/node.session.timeo.replacement_timeout = 15/' /etc/iscsi/iscsid.conf

# restart iscsi
systemctl restart iscsid.service

# get target from array
iscsiadm --mode discovery --type sendtargets --portal 192.168.1.6

# Add the iSCSI target as storage named 'purex20'
pvesm add iscsi purex20 --portal 192.168.1.6 --target iqn.2010-06.com.purestorage:flasharray.3a631122ee5836fc --content none

# scan to validate
pvesm scan iscsi 192.168.1.6:3260

# one more
iscsiadm -m node -R

# get the wwid. example : 3624a9370afbab306b7884d260001fcc7
lsscsi --scsi_id

# add to multipath
multipath -a 3624a9370afbab306b7884d260001fcc7

# update multipath
cat << EOF > /etc/multipath/multipath.conf
defaults {
    polling_interval        2
    path_selector           "round-robin 0"
    path_grouping_policy    multibus
    uid_attribute           ID_SERIAL
    rr_min_io               100
    failback                immediate
    no_path_retry           queue
    user_friendly_names     yes
}

blacklist {
    wwid .*
}

blacklist_exceptions {
    # use the same wwid from prev steps
    wwid "3624a9370afbab306b7884d260001fcc7"
    .
    .
}
EOF

# restart multipath
systemctl restart multipathd.service 

# validate 
multipath -ll

# get base volid
pvesm list purex20

# Add LVM storage with ID 'lvm-iscsi-01' on top of the iSCSI target
pvesm add lvm purelvm --vgname purevg1 --base purex20:0.0.1.scsi-3624a9370afbab306b7884d260001fcc7

# user helper script to build a vm
bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/vm/ubuntu2504-vm.sh)"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment