■Qlogic QLA2340 QLogic QLE2462

1500円のFCカード(2Gbps,1ch,pci-x)が手に入った。これをTomcat K7Mボードに差し込んで
CentOS5.6を起動したらdmesgに

QLogic Fibre Channel HBA Driver
ACPI: PCI Interrupt 0000:00:08.0[A] -> GSI 17 (level, low) -> IRQ 201
qla2xxx 0000:00:08.0: Found an ISP2312, irq 201, iobase 0xf8804000
qla2xxx 0000:00:08.0: Configuring PCI space...
qla2xxx 0000:00:08.0: Configure NVRAM parameters...
qla2xxx 0000:00:08.0: Verifying loaded RISC code...
qla2xxx 0000:00:08.0: Allocated (412 KB) for firmware dump...
scsi6 : qla2xxx
qla2xxx 0000:00:08.0:
 QLogic Fibre Channel HBA Driver: 8.03.01.05.05.06-k
  QLogic QLA2340 -
  ISP2312: PCI (33 MHz) @ 0000:00:08.0 hdma-, host#=6, fw=3.03.26 IPX
ACPI: PCI Interrupt Link [ALKC] enabled at IRQ 22
ACPI: PCI Interrupt 0000:00:11.5[C] -> Link [ALKC] -> GSI 22 (level, low) -> IRQ 193

と表記された。
OSレベルでの認識はできた模様。っで、このLinuxボックスをFC-Targetにしたいと思う。つまりFCのついたHDDね。

■方法
Linux+scstにて。
1.scstのパッチが入ったkernelを作り無事起動してFibre Channel HBAが見えること
2.その後、scstのkernelモジュールを作成、組み込み
3.scstの関連プログラムのbuild
本来なら最新のLinuxカーネルを使ってscstを組み込みべきなのでしょうが、古いTomcat K7Mボードなので
今使っているCentOS5.xのカーネルを基本とした。

■材料
scstのサイトが示しているように最新版を取得します。
cd /root
svn co https://scst.svn.sourceforge.net/svnroot/scst/trunk
linuxカーネル再構築を参考にCentOSが提供しているkernelのSRPMをベースにscstを組み込むべきであるが、
qla2x00tのコンパイルでlinux/semaphore.hがないとしてエラーが発生してしまう。擬似的に摸してもダメだった。
なので、kernelソースから作り上げることにする。
cd /usr/src
wget ftp://ftp.riken.jp/Linux/kernel/v2.6/linux-2.6.39.tar.bz2
bzip2 -cd linux-2.6.39.tar.bz2 | tar xf -
これでカーネルの準備は完了。ここで、ダウンロードしたscstのパッチを適用します。
cd /usr/src/linux-2.6.39
patch -p1 < /root/trunk/scst/kernel/scst_exec_req_fifo-2.6.39.patch
 patching file block/blk-map.c
 patching file include/linux/blkdev.h
 patching file include/linux/scatterlist.h
 patching file lib/scatterlist.c
これてscstのパッチは適用された。次に.configを用意します。
cd /usr/src/linux-2.6.39
cp /usr/src/kernels/`uname -r`-i686/.config .
make oldconfig (新しいパラメータで問われるがリターンで回答します)
make menuconfig
([General setup]->[Enable deprecated sysfs features to support old userspace tools]を選択)
([General setup]->[Enable deprecated sysfs features by default]を選択)
([Processor type and features]->[High Memory Suppor] -> OFFを選択)
([File systems]->[XFS filesystem support] -> Mを選択)
vi Makefile
 EXTRAVERSION = -scst (目印を付与)
そして、kernel再構築へ。
make bzImage;make modules;make modules_install;make install
cd /boot; rm -rf initrd-2.6.39-scst.img
/sbin/mkinitrd -v --with=raid456 initrd-2.6.39-scst.img 2.6.39-scst
その後、vi /boot/grub/grub.confを修正して、このカーネルイメージでbootするように調整します。reboot後、

scstのソースをリリースモードに変更して
cd /root/trunk
make 2release

っで、scstの管理プログラムを作ります
cd /root/trunk/scst/src
make all
make install
yum install redhat-lsb
cd /root/trunk/scstadmin
make install

次にscstのkernelモジュールを作ります。
rm -f /lib/modules/`uname -r`/{kernel/drivers/scsi/qla2xxx,extra}/qla2*
cd /root/trunk
BUILD_2X_MODULE=y CONFIG_SCSI_QLA_FC=y CONFIG_SCSI_QLA2XXX_TARGET=y make -s -C qla2x00t/qla2x00-target install

それの組み込み
modprobe scst
modprobe qla2x00tgt
modprobe scst_disk
modprobe scst_vdisk

scstadmin -list_handler
scstadmin -list_device
scstadmin -list_dgrp
scstadmin -list_tgrp
scstadmin -list_driver
scstadmin -list_target
scstadmin -list_group

scstadmin -Write_Config /etc/scst.conf

[root@c0 ~]# scstadmin -open_dev dev00 -handler vdisk_blockio -attributes filename=/dev/VG01/lv00
Collecting current configuration: done.
-> Making requested changes.
       -> Opening device 'dev00' using handler 'vdisk_blockio': done.
       -> Done.
All done.
[root@c0 ~]#

とすると、scstadmin -Write_Config /etc/scst.confの実行後、/etc/scst.confに反映される。

HANDLER vdisk_blockio {
       DEVICE dev00 {
               filename /dev/VG01/lv00
       }
}


scstadmin -add_lun 0 -driver qla2x00t -target 21:00:00:e0:8b:8d:57:e6 -device dev00

[root@c0 ~]# scstadmin -add_lun 0 -driver qla2x00t -target 21:00:00:e0:8b:8d:57:e6 -device dev00
Collecting current configuration: done.
-> Making requested changes.
       -> Adding device 'dev00' at LUN 0 to driver/target 'qla2x00t/21:00:00:e0:8b:8d:57:e6': done.
       -> Issuing LIP on fibre channel driver/target 'qla2x00t/21:00:00:e0:8b:8d:57:e6' (host6): done.
       -> Done.
All done.
[root@c0 ~]#

echo "1" > /sys/kernel/scst_tgt/targets/qla2x00t/21:00:00:e0:8b:8d:57:e6/enabled

2011y12m20d_210845669.png
2011y12m20d_210930893.png

■/etc/init.d/scstファイル
vi /etc/init.d/scst
SCST_MODULES="scst qla2x00tgt scst_disk scst_vdisk"

# /etc/init.d/scst start
以下その時のmessages:
scst: Attached to scsi0, channel 0, id 0, lun 0, type 0
scst: Attached to scsi1, channel 0, id 0, lun 0, type 0
scst: Attached to scsi2, channel 0, id 0, lun 0, type 0
scst: Attached to scsi3, channel 0, id 0, lun 0, type 0
scst: User interface thread started, PID 2356
scst: Processing thread scstd0 (PID 2357) started
scst: Init thread started, PID 2358
scst: Task management thread started, PID 2359
scst: SCST version 3.0.0-pre1 loaded successfully (max mem for commands 220MB, per device 88MB)
scst: Enabled features: TRACING
scst: Management thread started, PID 2360
qla2x00t: Initializing QLogic Fibre Channel HBA Driver target mode addon version 3.0.0-pre1
scst: Target 21:00:00:e0:8b:8d:57:e6 for template qla2x00t registered successfully
qla2x00t(0): Using 32 Bit PCI addressing
qla2x00t: Target mode driver for QLogic 2x00 controller registered successfully
scst: Target template qla2x00t registered successfully
scst: Device handler "dev_disk" for type 0 registered successfully
scst: Device handler "dev_disk_perf" for type 0 registered successfully
scst: Virtual device handler vdisk_fileio for type 0 registered successfully
scst: Virtual device handler vdisk_blockio for type 0 registered successfully
scst: Virtual device handler vdisk_nullio for type 0 registered successfully
scst: Virtual device handler vcdrom for type 5 registered successfully
scst: Removed all devices from group 21:00:00:e0:8b:8d:57:e6
dev_vdisk: Registering virtual vdisk_blockio device dev00 (BLOCKIO, ROTATIONAL)
dev_vdisk: Attached SCSI target virtual disk dev00 (file="/dev/VG01/lv00", fs=2048MB, bs=512, nblocks=4194304, cyln=2048)
scst: Attached to virtual device dev00 (id 1)
scst: Added device dev00 to group 21:00:00:e0:8b:8d:57:e6 (LUN 0, rd_only 0)
qla2x00t(0): Enabling target mode
qla2xxx 0000:00:08.0: Performing ISP abort - ha= f63382a4.
qla2xxx 0000:00:08.0: Cable is unplugged...

最新の60件
2024-07-25 2024-07-24 2024-07-16 2024-07-15 2024-07-12 2024-07-07 2024-06-29 2024-06-22 2024-06-21 2024-06-17 2024-06-14 2024-06-11 2024-06-10 2024-06-08 2024-06-07 2024-06-02 2024-06-01 2024-05-30 2024-05-16 2024-04-26 2024-04-15 2024-04-11 2024-04-06 2024-04-05 2024-03-30 2024-03-29 2024-03-19 2024-03-15 2024-03-06 2024-03-05 2024-03-03 2024-02-23 2024-02-22 2024-02-21 2024-02-20 2024-02-19 2024-02-18 2024-02-13 2024-02-12 2024-02-09 2024-02-04 2024-02-03

edit


トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2012-05-15 (火) 00:35:12