SLES10 SP2 mit EMC iSCSI AX4-5i Multipathing mit EMC PowerPath
Hinweis: Bitte beachten Sie, dass dieser Artikel / diese Kategorie sich entweder auf ältere Software/Hardware Komponenten bezieht oder aus sonstigen Gründen nicht mehr gewartet wird. Diese Seite wird nicht mehr aktualisiert und ist rein zu Referenzzwecken noch hier im Archiv abrufbar. |
---|
Dieser Artikel beschreibt die Konfiguration von Multipathing mit EMC PowerPath unter SLES10SP2. Die notwendige Basiskonfiguration zeigt der Ariktel SLES10 SP2 mit EMC iSCSI AX4-5i Multipathing Basiskonfiguration.
Hinweis: Bei diesem Beispiel wird die Standard-iSCSI-Konfiguration verwendet (mit node.session.timeo.replacement_timeout von 120 Sekunden). Um eine schnellere Umschaltzeit bei einem Pfadausfall zu bekommen, kann dieser Wert verringert werden. Siehe dazu auch die weiteren Informationen im Artikel ISCSI Multipathing unter Linux.
Performance über einen Pfad ohne PowerPath
Wie im Artikel zur Basiskonfiguration gezeigt, stehen im Beispiel vier logische Pfade zur Verfügung. Davon sind zwei Pfade (jene die zum aktiven Controller für das logical drive gehen) aktiv nutzbar. Ein kurzer Performance-Test über einen dieser Pfade liefert knapp 87 MB/sec:
sles10sp2:~ # dd if=/dev/zero of=/dev/sdd bs=1G count=1 oflag=direct 1+0 records in 1+0 records out 1073741824 bytes (1.1 GB) copied, 12.4124 seconds, 86.5 MB/s sles10sp2:~ #
PowerPath installieren
PowerPath kann von EMC Kunden über PowerLink[1] heruntergeladen werden. Danach wird PowerPath installiert und gestartet:
sles10sp2:~ # rpm -ihv EMCpower.LINUX-5.3.0.00.00-185.sles10sp2.x86_64.rpm Preparing... ########################################### [100%] 1:EMCpower.LINUX ########################################### [100%] All trademarks used herein are the property of their respective owners. NOTE:License registration is not required to manage the CLARiiON AX series array. sles10sp2:~ # /etc/init.d/PowerPath start Starting PowerPath: done sles10sp2:~ # powermt version EMC powermt for PowerPath (c) Version 5.3 (build 185) sles10sp2:~ #
Hinweis: Um den PowerPath Management Daemon nutzen zu können ist der snmpd notwendig. Ansonsten kommt folgender Hinweis in /var/log/messages:
Jun 5 13:55:13 sles10sp2 root: PowerPath: Unable to start PowerPath Management Daemon. You must configure and start net-snmp snmpd
PowerPath Informationen
Das Kommando powermt display dev=all
zeigt Informationen zu den verbundenen Devices:
sles10sp2:~ # powermt display dev=all Pseudo name=emcpowera CLARiiON ID=SL7E2080300038 [sles10sp2.thomas-krenn.com] Logical device ID=600601609711200044E7CF4E0751DE11 [Virtual Disk 1] state=alive; policy=CLAROpt; priority=0; queued-IOs=0 Owner: default=SP A, current=SP A Array failover mode: 1 ============================================================================== ---------------- Host --------------- - Stor - -- I/O Path - -- Stats --- ### HW Path I/O Paths Interf. Mode State Q-IOs Errors ============================================================================== 3 iSCSI Initiator over TCP/I sdb SP B0 active alive 0 0 5 iSCSI Initiator over TCP/I sdc SP B1 active alive 0 0 4 iSCSI Initiator over TCP/I sdd SP A1 active alive 0 0 6 iSCSI Initiator over TCP/I sde SP A0 active alive 0 0 sles10sp2:~ #
Performance mit PowerPath
Der Zugriff auf das logical drive erfolgt nun über das Device /dev/emcpowera. Der kurze Performance-Test hier ergibt nun 108 MB/sec:
sles10sp2:~ # dd if=/dev/zero of=/dev/emcpowera bs=1G count=1 oflag=direct 1+0 records in 1+0 records out 1073741824 bytes (1.1 GB) copied, 9.97066 seconds, 108 MB/s sles10sp2:~ #
Ausfall eines Pfades
Um einen Ausfall zu simulieren, wird das Netzwerkkabel vom Server zum ersten Switch abgesteckt. Gleichzeitig läuft wieder der obige Performance-Test damit das System während des Tests unter I/O Last steht. In /var/log/messages sind folgende Informationen zu sehen:
Jun 5 14:25:46 sles10sp2 kernel: e1000: eth1: e1000_watchdog_task: NIC Link is Down Jun 5 14:25:52 sles10sp2 kernel: ping timeout of 5 secs expired, last rx 4296444002, last ping 4296445252, now 4296446502 Jun 5 14:25:52 sles10sp2 kernel: connection1:0: iscsi: detected conn error (1011) Jun 5 14:25:53 sles10sp2 iscsid: semop up failed 22 Jun 5 14:25:55 sles10sp2 kernel: ping timeout of 5 secs expired, last rx 4296444698, last ping 4296445948, now 4296447198 Jun 5 14:25:55 sles10sp2 kernel: connection4:0: iscsi: detected conn error (1011) Jun 5 14:25:55 sles10sp2 iscsid: semop up failed 22 Jun 5 14:26:22 sles10sp2 iscsid: semop up failed 22 [...] Jun 5 14:27:48 sles10sp2 iscsid: semop up failed 22 Jun 5 14:27:53 sles10sp2 kernel: session1: iscsi: session recovery timed out after 120 secs Jun 5 14:27:53 sles10sp2 iscsid: semop up failed 22 Jun 5 14:27:54 sles10sp2 iscsid: semop up failed 22 Jun 5 14:27:55 sles10sp2 kernel: session4: iscsi: session recovery timed out after 120 secs Jun 5 14:27:55 sles10sp2 kernel: iscsi: cmd 0x2a is not queued (8) [...] Jun 5 14:27:57 sles10sp2 kernel: iscsi: cmd 0x12 is not queued (8) Jun 5 14:27:57 sles10sp2 kernel: iscsi: cmd 0x12 is not queued (8) Jun 5 14:27:57 sles10sp2 kernel: Error:Mpx:Path Bus 6 Tgt 0 Lun 0 to SL7E2080300038 is dead. Jun 5 14:27:57 sles10sp2 kernel: Error:Mpx:Killing bus 6 to Clariion SL7E2080300038 port SP A0. Jun 5 14:27:57 sles10sp2 kernel: iscsi: cmd 0x12 is not queued (8) Jun 5 14:27:57 sles10sp2 kernel: iscsi: cmd 0x12 is not queued (8) Jun 5 14:27:57 sles10sp2 kernel: Error:Mpx:Path Bus 3 Tgt 0 Lun 0 to SL7E2080300038 is dead. Jun 5 14:27:57 sles10sp2 kernel: Error:Mpx:Killing bus 3 to Clariion SL7E2080300038 port SP B0. Jun 5 14:27:59 sles10sp2 iscsid: semop up failed 22 Jun 5 14:28:00 sles10sp2 iscsid: semop up failed 22 Jun 5 14:28:05 sles10sp2 kernel: iscsi: cmd 0x12 is not queued (8) Jun 5 14:28:05 sles10sp2 kernel: iscsi: cmd 0x12 is not queued (8) Jun 5 14:28:05 sles10sp2 kernel: iscsi: cmd 0x12 is not queued (8) Jun 5 14:28:05 sles10sp2 kernel: iscsi: cmd 0x12 is not queued (8) Jun 5 14:28:05 sles10sp2 iscsid: semop up failed 22 Jun 5 14:28:06 sles10sp2 iscsid: semop up failed 22 [...]
Zum Zeitpunkt des Pfadausfalles bleibt der I/O für ca. knapp 2 Minuten stehen. Anschließend läuft der I/O wieder weiter. Auch Performance-Test läuft weiter und wird schließlich ohne Fehler (allerdings natürlich mit geringerer Performance) beendet.
powermt zeigt nun folgenden Status:
sles10sp2:~ # powermt display dev=all Pseudo name=emcpowera CLARiiON ID=SL7E2080300038 [sles10sp2.thomas-krenn.com] Logical device ID=600601609711200044E7CF4E0751DE11 [Virtual Disk 1] state=alive; policy=CLAROpt; priority=0; queued-IOs=129 Owner: default=SP A, current=SP A Array failover mode: 1 ============================================================================== ---------------- Host --------------- - Stor - -- I/O Path - -- Stats --- ### HW Path I/O Paths Interf. Mode State Q-IOs Errors ============================================================================== 3 iSCSI Initiator over TCP/I sdb SP B0 active dead 0 1 5 iSCSI Initiator over TCP/I sdc SP B1 active alive 0 0 4 iSCSI Initiator over TCP/I sdd SP A1 active alive 129 0 6 iSCSI Initiator over TCP/I sde SP A0 active dead 0 1 sles10sp2:~ #
weiterer Ausfall
Nun wird noch die Kabelverbindung vom Switch 2 zum Port SP A1 entfernt. Somit ist der aktive Controller SPA nicht mehr übers Netzwerk erreichbar. PowerPath erkennt dies und schaltet dazu das logical drive auf den Controller SPB. Auch dieser Test erfolgte wieder unter I/O Last. Hier der zugehörige Ausschnitt aus /var/log/messages:
Jun 5 14:37:30 sles10sp2 iscsid: semop up failed 22 Jun 5 14:37:31 sles10sp2 iscsid: semop up failed 22 Jun 5 14:37:33 sles10sp2 kernel: ping timeout of 5 secs expired, last rx 4296619217, last ping 4296616024, now 4296621717 Jun 5 14:37:33 sles10sp2 kernel: connection2:0: iscsi: detected conn error (1011) Jun 5 14:37:33 sles10sp2 iscsid: semop up failed 22 Jun 5 14:38:05 sles10sp2 kernel: iscsi: cmd 0x12 is not queued (8) Jun 5 14:38:05 sles10sp2 kernel: iscsi: cmd 0x12 is not queued (8) Jun 5 14:38:05 sles10sp2 kernel: iscsi: cmd 0x12 is not queued (8) Jun 5 14:38:05 sles10sp2 kernel: iscsi: cmd 0x12 is not queued (8) Jun 5 14:38:38 sles10sp2 iscsid: semop up failed 22 Jun 5 14:38:42 sles10sp2 iscsid: semop up failed 22 [...] Jun 5 14:40:35 sles10sp2 iscsid: semop up failed 22 Jun 5 14:40:36 sles10sp2 iscsid: semop up failed 22 Jun 5 14:40:38 sles10sp2 kernel: session2: iscsi: session recovery timed out after 120 secs Jun 5 14:40:38 sles10sp2 kernel: iscsi: cmd 0x2a is not queued (8) Jun 5 14:40:38 sles10sp2 kernel: iscsi: cmd 0x2a is not queued (8) [...] Jun 5 14:40:45 sles10sp2 kernel: iscsi: cmd 0x12 is not queued (8) Jun 5 14:40:45 sles10sp2 kernel: Error:Mpx:Path Bus 4 Tgt 0 Lun 0 to SL7E2080300038 is dead. Jun 5 14:40:45 sles10sp2 kernel: Error:Mpx:Killing bus 4 to Clariion SL7E2080300038 port SP A1. Jun 5 14:40:45 sles10sp2 kernel: iscsi: cmd 0x12 is not queued (8) Jun 5 14:40:45 sles10sp2 kernel: iscsi: cmd 0x12 is not queued (8) Jun 5 14:40:45 sles10sp2 kernel: iscsi: cmd 0x12 is not queued (8) Jun 5 14:40:45 sles10sp2 kernel: iscsi: cmd 0x12 is not queued (8) Jun 5 14:40:45 sles10sp2 kernel: Info:Mpx:Assigned volume 600601609711200044E7CF4E0751DE11 to SPB Jun 5 14:40:46 sles10sp2 iscsid: semop up failed 22 Jun 5 14:40:47 sles10sp2 iscsid: semop up failed 22 Jun 5 14:40:48 sles10sp2 kernel: iscsi: cmd 0x12 is not queued (8) Jun 5 14:40:48 sles10sp2 kernel: iscsi: cmd 0x12 is not queued (8) Jun 5 14:40:49 sles10sp2 iscsid: semop up failed 22 [...]
Auch in diesem Test läuft der I/O nach einer kurzen Unterbrechung wieder weiter.
Konfiguration sichern
Mittels
powermt save
kann die PowerPath Konfiguration gesichert werden.
weitere powermt Optionen
Das PowerPath Management Utility powermt bietet die folden Optionen und Parameter:
sles10sp2:~ # powermt --help Usage: powermt <command> [class=all|clariion|ess|hitachi|hphsx|hpxp|invista|symm] powermt check [force] [hba=<hba#>|all] [dev=<device>|all] powermt check_registration powermt config powermt disable hba=<hba#> powermt display nonvirtual {dev=<device>|all} [every=<#seconds>] [class=invista|all] [width=<#col>] powermt display [ports] [dev=<device>|all] [every=<#seconds>] [width=<#col>] powermt display hba_mode powermt display latency [dev=<device>|all] [every=<#seconds>] [width=<#col>] powermt display options powermt display paths [every=<#seconds>] [width=<#col>] powermt display port_mode powermt display unmanaged powermt enable hba=<hba#> powermt load [file=<filename>] powermt manage {dev=<device> | class=<storage array class>} powermt release powermt remove [force] hba=<hba#>|all | dev=<device>|all powermt restore [hba=<hba#>|all] [dev=<device>|all] powermt save [file=<filename>] powermt set mode=active|standby [hba=<hba#>|all] [dev=<device>|all] powermt set path_latency_monitor=on|off powermt set path_latency_threshold=<seconds> powermt set periodic_autorestore=on|off powermt set policy={ad|bf|co|lb|li|nr|re|rr|so|si} [dev=<device>|all] powermt set port_disable={true|false} dev=<device> powermt set priority=<priority> [dev=<device>|all] powermt unmanage {dev=<device> | class=<storage array class>} powermt update lun_names powermt version [format={verbose|legacy}] sles10sp2:~ #
Referenzen
Weitere Informationen
Weitere Informationen finden Sie in folgenden EMC Dokumenten:
- EMC PowerPath für Linux Version 5.3 (300-008-344.pdf)
- PowerPath Family Version 5.2 and 5.3 CLI and System Messages Reference (300-008-343.pdf)
Autor: Werner Fischer Werner Fischer arbeitet im Product Management Team von Thomas-Krenn. Er evaluiert dabei neueste Technologien und teilt sein Wissen in Fachartikeln, bei Konferenzen und im Thomas-Krenn Wiki. Bereits 2005 - ein Jahr nach seinem Abschluss des Studiums zu Computer- und Mediensicherheit an der FH Hagenberg - heuerte er beim bayerischen Server-Hersteller an. Als Öffi-Fan nutzt er gerne Bus & Bahn und genießt seinen morgendlichen Spaziergang ins Büro.
|