Benutzer-Werkzeuge

Webseiten-Werkzeuge


fibre_channel_von_qlogic_corp

Fibre Channel von QLogic Corp.

QLogic Corp. stellt auf seiner Download-Seite nur Pakete für die Enterprise-Linux-Distributionen bereit, will man eine Fibre Channel - Karte unter Ubuntu nutzen, dann ist schon etwas Handarbeit nötig.

SANSurfer FC HBA

Das Mediation-System enthält 4 Maschinen mit zwei von einer dieser beiden Karten:

# lspci
Fibre Channel: QLogic Corp. ISP2312-based 2Gb Fibre Channel to PCI-X HBA (rev 02)
Fibre Channel: QLogic Corp. ISP2312-based 2Gb Fibre Channel to PCI-X HBA (rev 02)
# lspci
Fibre Channel: QLogic Corp. ISP2432-based 4Gb Fibre Channel to PCI Express HBA (rev 03)
Fibre Channel: QLogic Corp. ISP2432-based 4Gb Fibre Channel to PCI Express HBA (rev 03)

benötigt wird der Treiber "qla2xxx":

# lsmod
qla2xxx               404541  8
scsi_transport_fc      54395  1 qla2xxx

Installation vom Konfigurationswerkzeug

Das Ubuntu-Paket "scli" ist etwas ganz anderes!

Jetzt müssen wir das RPM-Paket auseinandernehmen:

# mkdir /tmp/qlogic
# cd /tmp/qlogic
# aptitude install alien
# gunzip scli-1.7.3-40.i386.rpm.gz
# alien -g scli-1.7.3-40.i386.rpm
Warning: Skipping conversion of scripts in package scli: postinst postrm preinst
Warning: Use the --scripts parameter to include the scripts.
Directories scli-1.7.3 and scli-1.7.3.orig prepared.

jetzt sind noch ein paar Anpassungen notwendig:

# cd scli-1.7.3
# mv debian DEBIAN
# sed -i 's/^KERNEL=.*/KERNEL="2.6"/' usr/local/lib/qlogic/lib/libinstall
# echo '#!/bin/bash' > usr/local/bin/scli
# echo 'export LD_LIBRARY_PATH="/usr/local/lib/qlogic/lib/ia32/2.6"' >> usr/local/bin/scli
# echo '/opt/QLogic_Corporation/SANsurferCLI/scli' >> usr/local/bin/scli
# chmod 0755 usr/local/bin/scli
# cd ..

DEB-Paket-Control bearbeiten:

So sieht die Datei noch aus:

# vi scli-1.7.3/DEBIAN/control
Source: scli
Section: alien
Priority: extra
Maintainer: root <root@mm00>

Package: scli
Architecture: i386
Depends: ${shlibs:Depends}
Description: SANsurfer FC HBA CLI
 QLogic FC HBA Command Line Interface application
 .
 (Converted from a rpm package by alien version 8.86.)

Und so soll die Datei aussehen:

# vi scli-1.7.3/DEBIAN/control
Source: scli
Section: admin
Priority: optional
Maintainer: Your Name <yourname@your.host.com>
Version: 1.7.3-40
Package: scli
Architecture: i386
Depends: 
Description: SANsurfer FC HBA CLI
 QLogic FC HBA Command Line Interface application
 .
 (Converted from a rpm package by alien version 8.86.)

DEB-Paket bauen:

# dpkg -b scli-1.7.3 scli-qla-1.7.3-40.i386.deb
dpkg-deb: Paket »scli:i386« wird in »scli-1.7.3-40.i386.deb« gebaut.

DEB-Paket installieren:

# aptitude install d-shlibs glibc-2.13-1:i386
# aptitude remove scli
# dpkg -i scli-1.7.3-40.i386.deb
(Lese Datenbank ... 60513 Dateien und Verzeichnisse sind derzeit installiert.)
Vorbereitung zum Ersetzen von scli:i386 1.7.3-40 (durch scli-1.7.3-40.i386.deb) ...
Ersatz für scli:i386 wird entpackt ...
scli:i386 (1.7.3-40) wird eingerichtet ...

Anwendung vom Konfigurationswerkzeug

# scli
Scanning QLogic FC HBA(s) and device(s), please wait... 
-
        SANsurfer FC/CNA HBA CLI

        v1.7.3 Build 40

    Main Menu

    1:  General Information
    2:  HBA Information 
    3:  HBA Parameters
    4:  Target/LUN List
    5:  iiDMA Settings
    6:  Boot Device
    7:  Utilities
    8:  Beacon
    9:  Diagnostics
   10:  Statistics
   11:  Help
   12:  Exit


        Enter Selection: 2
# multipath -ll
3600508b4000e419b00006000008e0000 dm-3 HP,HSV400
size=100G features='1 queue_if_no_path' hwhandler='0' wp=rw
|-+- policy='round-robin 0' prio=50 status=active
| |- 7:0:2:1 sdd 8:48 active ready running
| `- 7:0:3:1 sde 8:64 active ready running
`-+- policy='round-robin 0' prio=10 status=enabled
  |- 7:0:0:1 sdb 8:16 active ready running
  `- 7:0:1:1 sdc 8:32 active ready running
# sg_map -x
/dev/sg0  6 2 0 0  0  /dev/sda
/dev/sg1  7 0 0 0  12
/dev/sg2  7 0 0 1  0  /dev/sdb
/dev/sg3  7 0 1 0  12
/dev/sg4  7 0 1 1  0  /dev/sdc
/dev/sg5  7 0 2 0  12
/dev/sg6  7 0 2 1  0  /dev/sdd
/dev/sg7  7 0 3 0  12
/dev/sg8  7 0 3 1  0  /dev/sde
# /lib/udev/scsi_id -g -u -d /dev/mapper/*
3600508b4000e419b00006000008e0000
# ls -la /dev/mapper/
lrwxrwxrwx  1 root root       7 Jun 19 12:24 3600508b4000e419b00006000008e0000 -> ../dm-3

eigentlich gehört hier noch eine "device"-Sektion rein:

# vi /etc/multipath.conf
#
# multipath.conf file generated by mkmpconf
#
# MAKE EDITS WHERE APPROPRIATE BEFORE PLACING IN SERVICE!
#  Look for the "EDIT_ME" string for appropriate places to change
#

defaults {
        udev_dir                /dev
        polling_interval        10
        selector                "round-robin 0"
        path_grouping_policy    multibus
        #getuid_callout          "/sbin/scsi_id -g -u -s /block/%n"
        getuid_callout          "/lib/udev/scsi_id -g -u -d /dev/mapper/*"
        prio_callout            /bin/true
        path_checker            readsector0
        rr_min_io               100
        rr_weight               priorities
        failback                immediate
        no_path_retry           fail
        user_friendly_name      yes
        multipath_tool          "/sbin/multipath -v0"
}

devnode_blacklist {
     # Standard "defaults"
     #devnode "^sda$" # EDIT_ME: Insert internal disk and virtual floppy
     devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
     devnode "^hd[a-z]\"
     devnode "^cciss!c[0-9]d[0-9]*"
}

multipaths {
     multipath {
          #  100GB-Vol auf dem SAN
          wwid  3600508b4000e419b00006000008e0000
          alias san_vol_01
     }
}
# /etc/init.d/multipath-tools reload
 * Reloading multipath daemon multipathd                       

jetzt (aber spätestens nach einem Reboot) ist hier das neue Gerät zu sehen:

# ls -la /dev/mapper/
lrwxrwxrwx  1 root root       7 Jun 19 13:22 san_vol_01 -> ../dm-2

weitere Kommandos zur Anzeige der SAN-Volumen:

# dmsetup -v deps
# dmsetup -v table
# dmsetup status -v
# dmsetup ls

SAN-Volumen nutzen

partitionieren:

# fdisk /dev/mapper/san_vol_01

formatieren:

# mkfs -t ext4 -m 0 /dev/mapper/san_vol_01-part1
/home/http/wiki/data/pages/fibre_channel_von_qlogic_corp.txt · Zuletzt geändert: von 127.0.0.1