Herstellen einer Verbindung mit Elastic SAN-Volumes: Linux
In diesem Artikel wird erläutert, wie Sie von einem Linux-Client aus eine Verbindung mit einem Elastic SAN-Volume (Storage Area Network) herstellen können. Einzelheiten zur Verbindungsherstellung von einem Windows-Client aus finden Sie unter Herstellen einer Verbindung mit Elastic SAN-Volumes – Windows.
In diesem Artikel fügen Sie dem Subnetz eines virtuellen Azure-Netzwerks den Storage-Dienstendpunkt hinzu und konfigurieren dann Ihre Volumegruppe, um Verbindungen von Ihrem Subnetz zuzulassen. Abschließend konfigurieren Sie Ihre Clientumgebung, um eine Verbindung mit einem Elastic SAN-Volume herzustellen und einzurichten.
Sie müssen einen Cluster-Manager verwenden, wenn Sie ein einzelnes elastisches SAN-Volume mit mehreren Clients verbinden. Ausführliche Informationen finden Sie unter Verwenden von gruppierten Anwendungen in Azure Elastic SAN.
Voraussetzungen
- Verwenden Sie entweder die neueste Version der Azure CLI, oder installieren Sie das neueste Azure PowerShell-Modul.
- Bereitstellen einer Elastic SAN-Instanz
- Konfigurieren eines virtuellen Netzwerkendpunkts
- Konfigurieren von Regeln für virtuelle Netzwerke
Herstellen einer Verbindung mit Volumes
Einrichten Ihrer Clientumgebung
Aktivieren des iSCSI-Initiators
Um iSCSI-Verbindungen von einem Linux-Client aus zu erstellen, installieren Sie das iSCSI-Initiator-Paket. Der genaue Befehl kann je nach Distribution variieren, und Sie sollten bei Bedarf die Dokumentation der Distribution zu Rate ziehen.
Beispielsweise würden Sie bei Ubuntu sudo apt install open-iscsi
, bei SUSE Linux Enterprise Server (SLES) sudo zypper install open-iscsi
und bei Red Hat Enterprise Linux (RHEL) sudo yum install iscsi-initiator-utils
verwenden.
Installieren von Multipfad-E/A
Um einen höheren IOPS und Durchsatz zu einem Volume zu erreichen und seine maximalen Grenzwerte zu erreichen, müssen Sie mehrere Sitzungen vom iSCSI-Initiator auf das Zielvolume basierend auf den Multithreadfunktionen und Leistungsanforderungen Ihrer Anwendung erstellen. Sie benötigen Multipfad-E/A, um diese mehreren Pfade in einem einzelnen Gerät zu aggregieren und die Leistung zu verbessern, indem Sie E/A optimal über alle verfügbaren Pfade basierend auf einer Lastenausgleichsrichtlinie verteilen.
Installieren Sie das Multipfad-E/A-Paket für Ihre Linux-Distribution. Die Installation variiert je nach Distribution, und Sie sollten die entsprechende Dokumentation konsultieren. Beispielsweise würde der Befehl unter Ubuntu sudo apt install multipath-tools
, bei SLES sudo zypper install multipath-tools
und bei RHEL sudo yum install device-mapper-multipath
lauten.
Überprüfen Sie nach der Installation des Pakets, ob /etc/multipath.conf vorhanden ist. Wenn /etc/multipath.conf nicht vorhanden ist, erstellen Sie eine leere Datei, und verwenden Sie die Einstellungen im folgenden Beispiel für eine allgemeine Konfiguration. Beispiel: mpathconf --enable
erstellt unter RHEL /etc/multipath.conf.
Sie müssen einige Änderungen an /etc/multipath.conf vornehmen. Im folgenden Beispiel müssen Sie den Abschnitt „devices“ hinzufügen, und im Abschnitt „defaults“ werden einige Standardeinstellungen festgelegt, die allgemein anwendbar sind. Wenn Sie andere spezifische Konfigurationen vornehmen müssen, wie z. B. den Ausschluss von Volumes aus der Multipfadtopologie, lesen Sie die Handbuchseite 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"
}
}
Starten Sie nach dem Erstellen oder Ändern der Datei Multipfad-E/A neu. Unter Ubuntu lautet der Befehl sudo systemctl restart multipath-tools.service
; unter RHEL und SLES lautet er sudo systemctl restart multipathd
.
Anfügen von Volumes an den Client
Sie können Ihre Verbindungen mithilfe des folgenden Skripts erstellen. Zum Ausführen benötigen Sie die folgenden Parameter:
- Abonnement: Abonnement-ID
- g: Ressourcengruppenname
- e: Elastic SAN-Name
- v: Volume-Gruppenname
- n <vol1, vol2, ...>: Namen der Volumes 1 und 2 und andere Volumenamen, die Sie möglicherweise benötigen, kommagetrennt
- s: Anzahl der Sitzungen für jedes Volume (standardmäßig auf 32 festgelegt)
Kopieren Sie das Skript von hier und speichern Sie es als .py-Datei, z. B. connect.py. Führen Sie es dann mit den erforderlichen Parametern aus. Im Folgenden sehen Sie ein Beispiel für die Ausführung des Skripts:
./connect.py --subscription <subid> -g <rgname> -e <esanname> -v <vgname> -n <vol1, vol2> -s 32
Sie können die Anzahl der Sitzungen mithilfe von sudo multipath -ll
überprüfen.
Anzahl von Sitzungen
Sie müssen 32 Sitzungen für jedes Zielvolume verwenden, um die maximalen IOPS- und/oder Durchsatzgrenzwerte zu erreichen.