GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

Was ist die HBA-Warteschlangentiefe und wie überprüft man den aktuellen Wert der Warteschlangentiefe und wie ändert man ihn?

Was ist Fibre-Channel-HBA-Warteschlangentiefe

Die Warteschlangentiefe gibt die Anzahl der E/A-Anforderungen an, die „in Flight“ sind, die angefordert, aber noch nicht als abgeschlossen bestätigt wurden, wenn sie mit einem SAN-Speicher kommunizieren. Diese Anfragen können pro einzelne Logical Unit Number (LUN), auf die zugegriffen wird, oder basierend auf dem HBA konfiguriert werden. Die maximale Warteschlangentiefe beschreibt den Wert von Anfragen, der maximal im Flug sein darf. Die Einstellung für die maximale Warteschlangentiefe kann die Speicherleistung erheblich beeinflussen.

Die maximale Warteschlangentiefe sollte sorgfältig gewählt werden. Niedrige Werte können zu einer schlechten E/A-Leistung führen. Hohe Werte können auch zu schlechter Leistung führen, da das SAN-Ziel Caches/Scheduling nicht optimal nutzt. Nicht nur die Warteschlangentiefe eines einzelnen HBAs, sondern die Warteschlangentiefe aller HBAs, die mit einem Speicherport auf dem SAN-Ziel verbunden sind, beeinflussen die Leistung des anderen. Der Anbieter des SAN-Ziels hat möglicherweise Empfehlungen für die maximal zu verwendende Warteschlangentiefe. Weitere relevante Faktoren sind:

  • die Anzahl der mit dem Ziel verbundenen HBA-Ports
  • das E/A-Muster, das von Anwendungen generiert wird, die auf dem System ausgeführt werden

Ändern der Warteschlangentiefe von Qlogic HBA

Führen Sie den folgenden Befehl aus, um den aktuellen Warteschlangentiefenwert qdepth zu ermitteln:

# cat /sys/module/qla2xxx/parameters/ql2xmaxqdepth
32

Das obige Beispiel gibt „32“ zurück.

Um den qdepth-Wert einzustellen/zu ändern, kann sysfs verwendet werden, es ist nicht erforderlich, das Modul zu entladen/laden. Folgendes ändert die ql2xmaxqdepth:

# echo 16 > /sys/module/qla2xxx/parameters/ql2xmaxqdepth

Um den qdepth-Wert so einzustellen, dass er auch nach Neustarts des Systems konfiguriert ist, ändern Sie den Wert der ql2xmaxqdepth-Option im qla2xxx-Treiber:

# modinfo qla2xxx | grep ql2xmaxqdepth
parm: ql2xmaxqdepth:Maximum queue depth to set for each LUN. Default is 32. (int)

Der folgende Eintrag muss zu /etc/modprobe.conf hinzugefügt werden oder eine Datei im Verzeichnis /etc/modprobe.d und das initrd-Image neu erstellt, um die Änderung dauerhaft zu machen:

# vi /etc/modprobe.conf
alias scsi_hostadapter1 qla2xxx
options qla2xxx ql2xmaxqdepth=16
CentOS / RHEL 6:So erstellen Sie das ursprüngliche Ramdisk-Image neu

Ändern der Warteschlangentiefe von Emulex HBA

Für Emulex HBA ist derzeit keine dynamische Änderung der maximalen Warteschlangentiefe möglich, es ist erforderlich, das Modul mit neuen Parametern zu entladen/laden oder das gesamte System neu zu starten. Emulex HBA unterstützt die folgenden Optionen, um die Warteschlangentiefe zu beeinflussen:

# modinfo lpfc|grep queue_depth 
parm: lpfc_lun_queue_depth:Max number of FCP commands we can queue to a specific LUN (uint) 
parm: lpfc_hba_queue_depth:Max number of FCP commands we can queue to a lpfc HBA (uint)

Diese Optionen können in /etc/modprobe.conf verwendet werden oder eine Datei im Verzeichnis /etc/modprobe.d und das initrd-Image neu aufgebaut.

CentOS / RHEL 6:So erstellen Sie das ursprüngliche Ramdisk-Image neu

Der Standardwert von lpfc kann auch unter /sys/module/lpfc/parameters/ überprüft werden . Beachten Sie jedoch, dass diese Werte nicht geändert werden konnten (keine „w“-Berechtigung)

# ls -lrt /sys/module/lpfc/parameters/ 
-r--r--r--. 1 root root 4096 May 19 13:55 lpfc_hba_queue_depth
-r--r--r--. 1 root root 4096 May 19 13:55 lpfc_lun_queue_depth
-r--r--r--. 1 root root 4096 May 19 13:55 lpfc_tgt_queue_depth


Cent OS
  1. So ändern Sie den Hostnamen unter CentOS

  2. So ändern Sie die MAC-Adresse unter CentOS 8

  3. Wie ändere ich die Standardzeilenlänge für Od und Hexdump?

  4. Wie ändere ich den Hostnamen?

  5. So identifizieren Sie die HBA-Karten/Ports und den WWN in Linux

So überprüfen Sie die OpenSSL-Versionsnummer

Was ist Kubernetes DaemonSet und wie wird es verwendet?

Was ist UID in Linux, wie man es findet und ändert

So ändern Sie die Ordnerfarbe und das Emblem sofort in Ubuntu

So ändern Sie Datum, Uhrzeit und Zeitzone in Ubuntu 20.04 LTS

So ändern Sie den Hostnamen unter CentOS 8