Targetcli Skript

Hi,

wenn man einen Standard-Linux-Server zur Bereitstellung von Speicher per Fibre-Channel nutzen möchte, kann man das Tool Targetcli benutzen.
Ich habe ein Skript zum Konfigurieren eines Fibre-Channel Targets auf einem Linux Host geschrieben.
Nachdem das Target angelegt ist, soll eine Lun angelegt werden und die entsprechend gezonten Server Zugriff erhalten.

Hinweis: Hier wird ein Qlogic 2562 HBA verwendet. Dieser funktioniert mit targetcli sehr gut.

addfclun.sh

#!/bin/bash
port1=`targetcli “/qla2xxx/ info” |awk ‘/Allowed WWNs list/’ |cut -d’:’ -f2 |awk -F’,’ ‘{print $1}’|cut -c2-21`
port2=`targetcli “/qla2xxx/ info” |awk ‘/Allowed WWNs list/’ |cut -d’:’ -f2 |awk -F’,’ ‘{print $2}’|cut -c2-21`

function createtarget {
targetcli /qla2xxx create $port1
targetcli /qla2xxx create $port2
}
function createlun {
read -p “Bitte den Namen der Lun angeben: ” lunname
ls /dev/mapper
read -p “Bitte Logical-Volume angeben (voller Pfad): ” lv
targetcli /backstores/block create $lunname $lv
targetcli /qla2xxx/$port1/luns create /backstores/block/$lunname
targetcli /qla2xxx/$port2/luns create /backstores/block/$lunname
}
function maplun {
read -p “Bitte die WWN des ersten Ports des anzubindenden Servers angeben: ” wwn1
targetcli /qla2xxx/$port1/acls create $wwn1
read -p “Bitte die WWN des zweiten Ports des anzubindenden Servers angeben: ” wwn2
targetcli /qla2xxx/$port2/acls create $wwn2
}

PS3=”Auswahl: ”
echo “Was moechten sie tun: ”
select aufgabe in “Target anlegen” “Lun anlegen” “Lun mappen” “beenden”;
do
case $aufgabe in
“Target anlegen”) createtarget;;
“Lun anlegen”) createlun ;;
“Lun mappen”) maplun ;;
“beenden”) break;;
esac
done

Leave a Reply

Your email address will not be published.