benutzerdefinierten Namen / Alias ​​für Multipath-Geräte ohne /etc/multipath.conf einstellen?

383
Zopper

Ich muss zu Testzwecken eine Multipfad-Konfiguration in einem Skript erstellen, aber ich möchte bestimmte Namen mit einem Präfix für die erstellten Geräte verwenden - so kann ich die Testnamen leicht aus dem filtern, was möglicherweise bereits vorhanden ist. Ich weiß, dass ich bearbeiten kann, /etc/multipath.confum einen Alias ​​einzurichten, aber das Bearbeiten von Systemkonfigurationsdateien aus einem Test ist verrückt. Ist das überhaupt möglich?

Das Bash-Skript, das ich zum Einrichten verwende:

iqn="iqn.2006-04.com.example:444"  mpath_setup_targets() { # $1 is the device which is going to be provided through multipath  filename="$1" hostiqn=$(cat /etc/iscsi/initiatorname.iscsi | grep -o "iqn.*$") targetcli backstores/block create md_block0 "$filename" targetcli /iscsi create $iqn  targetcli /iscsi/$iqn/tpg1/luns create /backstores/block/md_block0 targetcli /iscsi/$iqn/tpg1/portals delete 0.0.0.0 3260 targetcli /iscsi/$iqn/tpg1/portals create 127.0.0.1 3260 targetcli /iscsi/$iqn/tpg1/portals create 127.0.0.2 3260 targetcli /iscsi/$iqn/tpg1/portals create 127.0.0.3 3260 targetcli /iscsi/$iqn/tpg1/acls create $hostiqn targetcli /iscsi/$iqn/tpg1 set attribute authentication=0  # find the multiple paths to $filename iscsiadm -m discovery -t sendtargets -p 127.0.0.1 -o new -o delete >/dev/null iscsiadm -m node -L all >/dev/null  # give it few seconds to propagate and fail if nothing appears tries=5 while [ $tries -gt 0 ]; do found=$(multipath -ll | wc -l) tries=$((tries - 1)) if [ $found -gt 0 ]; then return 0 fi sleep 1 done return 1 } 
0

0 Antworten auf die Frage