web-dev-qa-db-ja.com

ファイバーチャネルLUNの再スキャンとQLogic

SANストレージアレイがファイバーチャネルを介してLinuxボックスに接続されている場合、深刻な問題が発生します。これが構成です。

  • プレーンなVanilla Linux 2.6.27.25を使用したDebian
  • ファイバーコントローラーQLogic 4Gbデュアルポート(ISP2432ベース)

基本的に問題は、これを取得する方法です。 FCコントローラー/ドライバーは、ストレージアレイの構成変更(新規または削除されたLUN)を正しく認識しますか?

  1. アレイに新しいLUN(通常は既存のいくつかのLUNのスナップショット)を作成してHBAにマッピングすると、正しく認識されません:rescan-scsi-bus -l -w -rは実際に何か(一般的な/ dev/sgXXデバイス)を検出しますが、ブロックデバイスは作成されません(/ dev/sdXX)。
  2. lIPを発行して手動で再スキャンする場合も同様です。

    エコー1>/sys/class/fc_Host/host6/issue_lip

    echo "---">/sys/class/scsi_Host/host6/scan

  3. 既存のLUNを削除すると、LIPの発行と再スキャンまたはrescan-scsi-busのどちらも効果がありません。以前のデバイスはそのまま残り、もちろん機能しません( "file -s/dev/sdXX-> I/O error")。

  4. qla2xxxドライバーのリロードは機能します。ただし、実稼働環境ではまったく機能しません。

どうやらこれは QLogicの非常に一般的な問題 です。 RedHatおよびSuseエンタープライズディストリビューションでのみ使用可能なQLogic発行のドライバーを使用する場合にのみ機能する、ある種のソリューションが存在します。詳細は この説明 をご覧ください。

追加情報 :

LIPと再スキャンの前のSCSIデバイスは次のとおりです。

# sg_map -x
/dev/sg0  0 0 0 0  0  /dev/sda
/dev/sg1  0 0 1 0  5  /dev/scd0
/dev/sg2  1 0 0 0  0  /dev/sdb
/dev/sg3  6 0 0 0  0  /dev/sdc
/dev/sg4  6 0 0 1  0  /dev/sdd
/dev/sg5  6 0 0 2  3

LIPと再スキャンの後、新しいsgデバイスがありますが、対応するドライブがありません。ドライバをリロードすると、ドライブが表示されます:

# sg_map -x
/dev/sg0  0 0 0 0  0  /dev/sda
/dev/sg1  0 0 1 0  5  /dev/scd0
/dev/sg2  1 0 0 0  0  /dev/sdb
/dev/sg3  6 0 0 0  0  /dev/sdc
/dev/sg4  6 0 0 1  0  /dev/sdd
/dev/sg5  6 0 0 2  3
/dev/sg6  6 0 0 3  3

~# sg_map -x
/dev/sg0  0 0 0 0  0  /dev/sda
/dev/sg1  0 0 1 0  5  /dev/scd0
/dev/sg2  1 0 0 0  0  /dev/sdb
/dev/sg3  8 0 0 0  0  /dev/sdc
/dev/sg4  8 0 0 1  0  /dev/sdd
/dev/sg5  8 0 0 2  0  /dev/sde
/dev/sg6  8 0 0 3  3

編集:わかりました、明らかにこれはクラックするのが難しいナットです。 LKMLに聞いて、ここで報告します。

8
wazoox

ブロックデバイスが検出されていても、/ dev /デバイスが作成されていない場合は、手動でデバイスを作成できます。これは最適な方法ではありませんが、問題が発生する可能性があります。メジャー番号とマイナー番号は/ proc/partitionsにあり、mknodコマンドを使用して独自のブロックデバイスを作成できます。

 # mknod /dev/sdg4 104 17

しかし、私はあなたの痛みを感じます。 QLogicはRHELおよびSUSE用のドライバーダウンロードを提供していますが、他のディストリビューションはないようです。 OpenSUSEにはQLogicブランドのドライバーがあるだけかもしれませんが、確信が持てません。仕事に着いたらよく調べます。

編集:仕事中です。SLESボックスのQLogicドライバーはすべてQLogicが提供しているようです。 OSサポートグリッド:

http://filedownloads.qlogic.com/files/Driver/71098/readme_driver_80223.html#os_support

それでも、bog標準の2.6.27.25カーネルをダウンロードして./drivers/scsi/qla2xxx/qla_version.hファイルを見ると、Novellディストリビューション(SLESと無料のopenSUSE)。これは、SLES/RHELで見つけたソリューションが実際には標準の2.6.27.25カーネルで動作する可能性があることを示唆しています。

2
sysadmin1138

Hey Wazoox SANボックスで同じプロに直面していました。私はグーグルといくつかのヒントがあります。試してみると機能し始めると思います。1emcgrabツールを呼び出すツールが1つあります。このツールを実行できます。 qlogicドライバーのドライバーが機能しているかどうかを確認します。

どのsanボックスを使用していますか?

以下のようにいくつかのヒントがあります。 http://forums.novell.com/novell-product-support-forums/suse-linux-enterprise-server-sles/sles-configure-administer/362473-lun- not-visible.html

http://forums13.itrc.hp.com/service/forums/bizsupport/questionanswer.do?admit=109447627+1250262043169+28353475&threadId=1154098

http://www.linuxquestions.org/questions/linux-enterprise-47/connect-debian-etch-to-ibm-san-meaning-of-sns-scan-failed-570598/

http://solutions.qlogic.com/KanisaSupportSite/search.do?cmd=displayKC&docType=kc&externalId=9223615&sliceId=SAL_Public&dialogID=4725381&stateId=0%200%20471137

1
Rajat