Linux multipath-tools mit Sun StorageTek 6540

Linux-Systeme an einer Sun StorageTek 6540 zu betreiben ist gar nicht so einfach. Für Redhat und Suse gibt es von Sun zwar RDAC-Treiber, aber eine funktionierende Konfiguration für die multipath-tools habe ich nirgends gefunden.

Die 6540-Storage sieht stark nach dem Nachfolger der StorageTek FlexLine FLX380 aus. Unter der Haube steckt wohl das LSI/Engenio 6998 System (gibts z.B. auch von IBM als DS4800).

Hardware

  • Sun StorageTek 6540 (Engenio/LSI)
  • Sun Fire X4150 mit 32 GByte RAM und 2xQuadCore Xeon E5440
  • 2x Sun/Qlogic 2460 4 GBit HBAs

Software

  • Ubuntu LTS 8.04.1 AMD64
  • multipath-tools 0.4.8

Multipath-tools

Es werden unbedingt die multipath-tools in der Version 0.4.8 benötigt, da hier der Path-Checker rdac (mpath_prio_rdac) enthalten ist (früher mal mpath_prio_tur).
Die Storage selbst meldest sich als „STK FLEXLINE 380“.

Konfiguration /etc/multipath.conf (Beispiel)


defaults {
      multipath_tool                  "/sbin/multipath -v0"
      udev_dir                        /dev
      polling_interval                5
      default_selector                "round-robin 0"
      default_path_grouping_policy    failover
      default_features                "1 queue_if_no_path"
      default_getuid_callout     "/lib/udev/scsi_id -g -u -s /block/%n"
      rr_weight                       priorities
      failback                        immediate
}
blacklist {
   devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
   devnode "^hd[a-z][[0-9]*]"
   devnode "^cciss!c[0-9]d[0-9]*[p[0-9]*]"
   devnode "^sda"  # local disk
}
multipaths {
     multipath {
        alias           stk-test-lun
        wwid            3600a0b80004725e800000570xxxxxxxxx
        path_selector   "round-robin 0"
        failback        immediate
    }
}
devices {
    device {
      vendor                  "STK"
      product                 "FLEXLINE 380"
      product_blacklist       "Universal Xport"
      path_grouping_policy    group_by_prio
      prio_callout            "/sbin/mpath_prio_rdac /dev/%n"
      path_checker            rdac
      hardware_handler        "1 rdac"
    }
}

Test

Da der Server 2 Single-Port-HBAs hat und zudem an 2 FC-Switches an der Storage angebunden ist, gibt es vier Pfade, 2 über HBA-A (sdc/sdt) und 2 HBA-B (sdbs/sdcj).

# multipath -ll
stk-test-lun (3600a0b80004725e800000570xxxxxxxxx) dm-1 STK     ,FLEXLINE 380
[size=200G][features=1 queue_if_no_path][hwhandler=1 rdac]
\_ round-robin 0 [prio=6][active]
 \_ 1:0:0:1  sdc  8:32    [active][ready]
 \_ 1:0:1:1  sdt  65:48   [active][ready]
\_ round-robin 0 [prio=0][enabled]
 \_ 2:0:0:1  sdbs 68:96   [active][ghost]
 \_ 2:0:1:1  sdcj 69:112  [active][ghost]

Links

3 Gedanken zu „Linux multipath-tools mit Sun StorageTek 6540

  1. Hallo

    Wir haben diese Konstellation auch im Einsatz.
    Multipath-tools an sich funktioniert mit deiner Konfig wie gewünscht. Allerdings stört noch eines: Beim laden des qla2xxx Moduls (ist ja nötig, dass die Platten und nativen Pfade gefunden werden) dauert es ca 15 minuten bis alle gefunden wurden. Und das bei „nur“ 16 Pfaden:

    [5:0:0:0] disk STK FLEXLINE 380 0760 /dev/sdd
    [5:0:1:0] disk STK FLEXLINE 380 0760 /dev/sde
    [5:0:2:0] disk STK FLEXLINE 380 0760 /dev/sdf
    [5:0:3:0] disk STK FLEXLINE 380 0760 /dev/sdg
    [5:0:4:0] disk STK FLEXLINE 380 0760 /dev/sdh
    [5:0:5:0] disk STK FLEXLINE 380 0760 /dev/sdi
    [5:0:6:0] disk STK FLEXLINE 380 0760 /dev/sdj
    [5:0:7:0] disk STK FLEXLINE 380 0760 /dev/sdk
    [6:0:0:0] disk STK FLEXLINE 380 0760 /dev/sdl
    [6:0:1:0] disk STK FLEXLINE 380 0760 /dev/sdm
    [6:0:2:0] disk STK FLEXLINE 380 0760 /dev/sdn
    [6:0:3:0] disk STK FLEXLINE 380 0760 /dev/sdo
    [6:0:6:0] disk STK FLEXLINE 380 0760 /dev/sdp
    [6:0:7:0] disk STK FLEXLINE 380 0760 /dev/sdq
    [6:0:8:0] disk STK FLEXLINE 380 0760 /dev/sdr
    [6:0:9:0] disk STK FLEXLINE 380 0760 /dev/sds

    Ist das bei dir auch so? Wenn nicht, wie gehst du dabei vor?

    Danke,
    Robert

  2. Hallo Robert,

    ja das kann ich leider so bestätigen. Beim Booten gehen allein 10-15 Minuten nur für die Plattensuche verloren. Je mehr Pfade und LUNs desto länger…

    Da die Server stabil laufen und sehr selten rebootet werden, hab‘ ich keine weitere Ursachenforschung betrieben. Das gleiche System hing mit den gleichen Controllern auch schon an einer EMC-Storage – dort traten diese Probleme nicht auf.

    Gruß
    Alexander

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.