Verbinding maken naar elastische SAN-volumes - Linux

In dit artikel wordt uitgelegd hoe u verbinding maakt met een SAN-volume (Elastic Storage Area Network) vanaf een afzonderlijke Linux-client. Zie Verbinding maken naar Elastische SAN-volumes - Windows voor meer informatie over het maken van verbinding vanaf een Windows-client.

In dit artikel voegt u het storage-service-eindpunt toe aan het subnet van een virtueel Azure-netwerk. Vervolgens configureert u uw volumegroep om verbindingen vanuit uw subnet toe te staan. Ten slotte configureert u uw clientomgeving om verbinding te maken met een Elastisch SAN-volume en een verbinding tot stand te brengen.

U moet een clusterbeheerder gebruiken bij het verbinden van een afzonderlijk elastisch SAN-volume met meerdere clients. Zie Geclusterde toepassingen gebruiken in Azure Elastic SAN voor meer informatie.

Vereisten

Verbinding maken naar volumes

Uw clientomgeving instellen

iSCSI-initiator inschakelen

Als u iSCSI-verbindingen wilt maken vanaf een Linux-client, installeert u het iSCSI-initiatorpakket. De exacte opdracht kan variëren, afhankelijk van uw distributie, en raadpleeg indien nodig de bijbehorende documentatie.

Als voorbeeld, met Ubuntu die u zou gebruiken sudo apt install open-iscsi, met SUSE Linux Enterprise Server (SLES) die u zou gebruiken sudo zypper install open-iscsi en met Red Hat Enterprise Linux (RHEL) die u zou gebruiken sudo yum install iscsi-initiator-utils.

Multipath I/O installeren

Als u hogere IOPS en doorvoer naar een volume wilt bereiken en de maximale limieten wilt bereiken, moet u meerdere sessies maken van de iSCSI-initiator naar het doelvolume op basis van de mogelijkheden en prestatievereisten van uw toepassing. U hebt multipath I/O nodig om deze meerdere paden samen te voegen in één apparaat en om de prestaties te verbeteren door I/O optimaal te verdelen over alle beschikbare paden op basis van een taakverdelingsbeleid.

Installeer het Multipath I/O-pakket voor uw Linux-distributie. De installatie varieert op basis van uw distributie en u moet de bijbehorende documentatie raadplegen. Als voorbeeld: in Ubuntu zou de opdracht zijn sudo apt install multipath-tools, voor SLES de opdracht zou zijn sudo zypper install multipath-tools en voor RHEL zou de opdracht zijn sudo yum install device-mapper-multipath.

Zodra u het pakket hebt geïnstalleerd, controleert u of /etc/multipath.conf bestaat. Als /etc/multipath.conf niet bestaat, maakt u een leeg bestand en gebruikt u de instellingen in het volgende voorbeeld voor een algemene configuratie. Als voorbeeld mpathconf --enable maakt u /etc/multipath.conf op RHEL.

U moet enkele wijzigingen aanbrengen in /etc/multipath.conf. U moet de sectie apparaten toevoegen in het volgende voorbeeld en de sectie met standaardinstellingen in het volgende voorbeeld stelt dat sommige standaardinstellingen algemeen van toepassing zijn. Als u andere specifieke configuraties wilt maken, zoals het uitsluiten van volumes uit de topologie met meerdere paden, raadpleegt u de handmatige pagina voor 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"
  }
}

Nadat u het bestand hebt gemaakt of gewijzigd, start u Multipath I/O opnieuw op. Op Ubuntu is sudo systemctl restart multipath-tools.service de opdracht en op RHEL en SLES de opdracht.sudo systemctl restart multipathd

Volumes koppelen aan de client

U kunt het volgende script gebruiken om uw verbindingen te maken. U hebt de volgende parameters nodig om deze uit te voeren:

  • abonnement: abonnements-id
  • g: Naam van resourcegroep
  • e: Elastische SAN-naam
  • v: Naam volumegroep
  • n <vol1, vol2, ...>: Namen van volumes 1 en 2 en andere volumenamen die u mogelijk nodig hebt, door komma's gescheiden
  • s: Aantal sessies op elk volume (standaard ingesteld op 32)

Kopieer het script van hieruit en sla het op als een .py-bestand, bijvoorbeeld connect.py. Voer deze vervolgens uit met de vereiste parameters. Hier volgt een voorbeeld van hoe u het script uitvoert:

./connect.py --subscription <subid> -g <rgname> -e <esanname> -v <vgname> -n <vol1, vol2> -s 32

U kunt het aantal sessies controleren met behulp van sudo multipath -ll

Aantal sessies

U moet 32 sessies gebruiken voor elk doelvolume om de maximale IOPS- en/of doorvoerlimieten te bereiken.

Volgende stappen

Elastische SAN-netwerken configureren