Anslut till elastiska SAN-volymer – Linux
Den här artikeln beskriver hur du ansluter till en SAN-volym (Elastic Storage Area Network) från en enskild Linux-klient. Mer information om hur du ansluter från en Windows-klient finns i Anslut till elastiska SAN-volymer – Windows.
I den här artikeln ska du lägga till lagringstjänstslutpunkten i ett virtuellt Azure-nätverks undernät. Sedan konfigurerar du volymgruppen så att den tillåter anslutningar från undernätet. Slutligen konfigurerar du klientmiljön så att den ansluter till en elastisk SAN-volym och upprättar en anslutning.
Du måste använda en klusterhanterare när du ansluter en enskild elastisk SAN-volym till flera klienter. Mer information finns i Använda klustrade program i Azure Elastic SAN.
Förutsättningar
- Använd antingen den senaste Azure CLI eller installera den senaste Azure PowerShell-modulen
- Distribuera ett elastiskt SAN
- Konfigurera en slutpunkt för virtuellt nätverk
- Konfigurera regler för virtuellt nätverk
Anslut till volymer
Konfigurera din klientmiljö
Aktivera iSCSI-initierare
Om du vill skapa iSCSI-anslutningar från en Linux-klient installerar du iSCSI-initierarpaketet. Det exakta kommandot kan variera beroende på din distribution, och du bör läsa deras dokumentation om det behövs.
Med Ubuntu skulle du till exempel använda sudo apt install open-iscsi
, med SUSE Linux Enterprise Server (SLES) som du skulle använda sudo zypper install open-iscsi
och med Red Hat Enterprise Linux (RHEL) som du skulle använda sudo yum install iscsi-initiator-utils
.
Installera Multipath I/O
För att uppnå högre IOPS och dataflöde till en volym och nå dess maxgränser måste du skapa flera sessioner från iSCSI-initieraren till målvolymen baserat på programmets funktioner och prestandakrav för flera trådar. Du behöver Multipath I/O för att aggregera dessa flera sökvägar till en enda enhet och för att förbättra prestandan genom att distribuera I/O optimalt över alla tillgängliga sökvägar baserat på en belastningsutjämningsprincip.
Installera Multipath I/O-paketet för din Linux-distribution. Installationen varierar beroende på din distribution och du bör läsa deras dokumentation. I Ubuntu skulle kommandot till exempel vara sudo apt install multipath-tools
, för SLES skulle kommandot vara sudo zypper install multipath-tools
och för RHEL skulle kommandot vara sudo yum install device-mapper-multipath
.
När du har installerat paketet kontrollerar du om /etc/multipath.conf finns. Om /etc/multipath.conf inte finns skapar du en tom fil och använder inställningarna i följande exempel för en allmän konfiguration. Till exempel mpathconf --enable
skapar /etc/multipath.conf på RHEL.
Du måste göra vissa ändringar i /etc/multipath.conf. Du måste lägga till avsnittet enheter i följande exempel, och standardavsnittet i följande exempeluppsättningar är allmänt tillämpliga. Om du behöver göra andra specifika konfigurationer, till exempel exkludering av volymer från multipath-topologin, kan du läsa den manuella sidan för multipath.conf.
defaults {
user_friendly_names yes # To create ‘mpathn’ names for multipath devices
path_grouping_policy multibus # To place all the paths in one priority group
path_selector "round-robin 0" # To use round robin algorithm to determine path for next I/O operation
failback immediate # For immediate failback to highest priority path group with active paths
no_path_retry 1 # To disable I/O queueing after retrying once when all paths are down
}
devices {
device {
vendor "MSFT"
product "Virtual HD"
}
}
När du har skapat eller modifierat filen startar du om Multipath I/O. På Ubuntu är sudo systemctl restart multipath-tools.service
kommandot och på RHEL och SLES är sudo systemctl restart multipathd
kommandot .
Koppla volymer till klienten
Du kan använda följande skript för att skapa dina anslutningar. För att köra den behöver du följande parametrar:
- prenumeration: Prenumerations-ID
- g: Namn på resursgrupp
- e: Elastiskt SAN-namn
- v: Namn på volymgrupp
- n <vol1, vol2, ...>: Namn på volym 1 och 2 och andra volymnamn som du kan kräva, kommaavgränsade
- s: Antal sessioner till varje volym (inställt på 32 som standard)
Kopiera skriptet härifrån och spara det som en .py fil, till exempel connect.py. Kör den sedan med de obligatoriska parametrarna. Följande är ett exempel på hur du skulle köra skriptet:
./connect.py --subscription <subid> -g <rgname> -e <esanname> -v <vgname> -n <vol1, vol2> -s 32
Du kan kontrollera antalet sessioner med hjälp av sudo multipath -ll
Antal sessioner
Du måste använda 32 sessioner till varje målvolym för att uppnå maximala IOPS- och/eller dataflödesgränser.