SAS3041X-Rの最近のブログ記事

SAS3041X-R だめっぽ

| トラックバック(0)

ここ、数日、SAS3041X-R に構築した RAID 1E Volume が激しく degraded と resync を繰り返し、使い物にならなくなっていまつ。
Solaris の mpt driver では、 raidctl コマンドでしか各ディスクの状況がわからず、driver は、volume の報告しかしてくれません。
raidctl で、見ても、volume を構成している disk どもの status は OK とか抜かしてくれます。

ディスクが悪いのかと思いつつ、別な環境で利用している TK720 x3 を接続して RAID Volume を構築してみましたが、これでも発生。
HBA が壊れたかと思いつつ、RAID Volume は構築せず、zfs volume を構築してみると、write error がでます(´・ω・`)
もう、ダメです。

で、まさかと思い、Hitachi の Drive Fitness Test で check したところ、不良セクタがボロボロと orz
これですが?これが原因ですか?
6 台のディスクすべて、テストしてみますヽ(;´Д`)ノ

ディスク 1 個、failed しますた

| トラックバック(0)

快調に動いている SAS3041X-R 搭載の Blade 1000 ですが、昨日、ログインできなくなりますた。
ping には反応するものの、やっぱりログインできず。
どうしようもないので、電源落として再起動。
あらら、RAID Volume を構成している 3 台の disk のうち1個が FAILED になってますよ・・・
こいつが原因ですか? ってゆーか、1個壊れても動き続けないといけないんじゃないんですか!
むぅ。

でも、messages ファイルに、何も記録されてないんだよなー・・・
raidctl でみると確かに、FAILED になって、degraded になってるんですけど。
で、復旧させる方法ですが、電源落として disk 交換して再起動するということになりますが、換えのディスクなどなく・・・

確認のため、LSI logic の itmpt driver をインストールした環境を起動。
lsiutil でみると、やっぱり failed になっている。
とりあえず、exper tmode で、failed になっている disk を offline にし、それから online にしてみると、failed だったのが正常なディスクとして認識され、resync が開始されてしまいますた orz
うむむ、とりあえず様子見で orz

resync 完了後のメッセージ
--
May  9 12:15:12 empress scsi: [ID 107833 kern.notice] /pci@8,600000/LSILogic,sas@1 (mpt0):
May  9 12:15:12 empress         Physical disk 1 (target 1) is |online|
May  9 12:15:12 empress scsi: [ID 107833 kern.notice] /pci@8,600000/LSILogic,sas@1 (mpt0):
May  9 12:15:12 empress         Volume 0 is |enabled||degraded|
May  9 12:15:12 empress scsi: [ID 107833 kern.notice] /pci@8,600000/LSILogic,sas@1 (mpt0):
May  9 12:15:12 empress         Volume 0 is |enabled||optimal|
--

122165-02: Hardware/1064_FCode Sun Fire T2000 1064 FCode update

| トラックバック(0)

SAS3041X-R の FCode のパッチがリリースされてました。 修正内容は、volume を mix した場合の不具合? まぁいいや。というわけで、raidctl で firmware を流し込んで 1.00.39 → 1.00.40 へ。

 

         Node 0xf00972a4

            firmware-version:  '1.06.00.00'
            mpt-version:  '1.05'
            assigned-addresses:  81000810.00000000.00000400.00000000.00000100.83000814.00000000.00104000.00000000.00004000.8300081c.00000000.00110000.00000000.000100
00.82000830.00000000.00200000.00000000.00200000
            compatible: 'pci13e9,50' + 'pci1000,50' + 'AAPL,MPT'
            model:  'LSI,1064'
            reg:  00000800.00000000.00000000.00000000.00000000.01000810.00000000.00000000.00000000.00000100.03000814.00000000.00000000.00000000.00004000.0300081c.000
00000.00000000.00000000.00010000.02000830.00000000.00000000.00000000.00200000
            version: '1.00.40'
            wide:  00000010
            device_type:  'scsi-2'
            name:  'LSILogic,sas'
            fcode-rom-offset:  00000000
            66mhz-capable:  
            devsel-speed:  00000001
            class-code:  00010000
            interrupts:  00000001
            latency-timer:  00000040
            cache-line-size:  00000010
            max-latency:  0000000a
            min-grant:  00000040
            subsystem-id:  00003020
            subsystem-vendor-id:  00001000
            revision-id:  00000002
            device-id:  00000050
            vendor-id:  00001000

            Node 0xf00a2a78
                compatible: 'st'
                device_type:  'byte'
                name:  'tape'

            Node 0xf00a380c
                compatible: 'sd'
                device_type:  'block'
                name:  'disk'


RAID 1E で error block が出たわけだが

| トラックバック(0)

タイミングよく RAID Volume から、error block の報告があったわけだが・・・
--


Feb 26 12:50:14 empress scsi: [ID 365881 kern.info] /pci@8,600000/LSILogic,sas@1 (mpt0):
Feb 26 12:50:14 empress Rev. 2 LSI, Inc. 1064 found.
Feb 26 12:50:14 empress scsi: [ID 365881 kern.info] /pci@8,600000/LSILogic,sas@1 (mpt0):
Feb 26 12:50:14 empress mpt0 supports power management.
Feb 26 12:50:14 empress scsi: [ID 365881 kern.info] /pci@8,600000/LSILogic,sas@1 (mpt0):
Feb 26 12:50:14 empress mpt0: IOC Operational.
Feb 26 12:50:25 empress scsi: [ID 107833 kern.warning] WARNING: /pci@8,600000/LSILogic,sas@1/sd@0,0 (sd0):
Feb 26 12:50:25 empress Error for Command: read Error Level: Retryable
Feb 26 12:50:25 empress scsi: [ID 107833 kern.notice] Requested Block: 1711136 Error Block: 1711136
Feb 26 12:50:25 empress scsi: [ID 107833 kern.notice] Vendor: LSILOGIC Serial Number: LSI Internal
Feb 26 12:50:25 empress scsi: [ID 107833 kern.notice] Sense Key: Unit Attention
Feb 26 12:50:25 empress scsi: [ID 107833 kern.notice] ASC: 0x29 (power on, reset, or bus reset occurred), ASCQ: 0x0, FRU: 0x0


--

 やっぱ、どのディスクでとか出ないね。
 ディスク壊れても、どのディスクが壊れたか出なさそう。
 
まぁ、disk 壊れたら、raidctl の Disk Status で判断するしかないのかな。
--
# raidctl
RAID Volume RAID RAID Disk
Volume Type Status Disk Status
------------------------------------------------------
c2t0d0 IS OK c2t0d0 OK
c2t1d0 OK
c2t2d0 OK
--

 ちなみに、上記の error block は、電源管理が絡んでいるっぽい。
 なにげに mpt driver は、power management 対応。
 デバイスが、省電力モードから復帰するときに、希に発生するみたい。

一晩放置したり、100G のファイル作って遊んだりしてますが、パッチを適用してからは、panic や disk のエラーは出てません(´・ω・`)
電源管理もデフォルトにもどしました。
というわけで、パッチ必須ですね。

でも、謎なのは、なぜ、インストール時にエラーが発生しないのでせうか。
実は、119850-13 を適用したのがいけなかったのでしょうか。
わけわかんね。

resync も終わり、filesystem としては、快適に利用できる環境ができあがりますた。

残りは、障害発生時の動作確認にでつか・・・

RAID 1E を構築したので、裏では Resync しまくりなのでつが、そこに Solaris 10 1/06 をインストール中。
んー、パッチ必須というわりには、不思議と何も起きないで、80% 程度インストールが完了している。
インストール完了後、再起動前に mpt driver だけパッチのモノと手動で入れ替えておこう。

と、書いてる間に、インストール終了。
自動リブートしないように設定しておいたので、以下の画面で止まってる。
(シリアルコンソール経由のインストールでし)

--
<システムをリブートするには Return キーを押してください> {"!" 終了}
[]
--

「!」を入力して、インストーラを終了し、shell に落ちる。

Solaris 10 は、ネットワークの設定が、そのままインストール用のシステムに反映されるため、
適切に設定されていればネットワークに接続できてしまう。
(これは、default route を探したり LDAP, NIS client を設定する場合に必要になるので
そうなっているだけ。もちろん、login するための service はあがっていないので、リモート
から入るのは困難)

で、インストール先に指定したディスクは、/a に mount されるので、とりあえず /a/var/tmp へ。
ftp を使って、リモートのシステムから、パッチを持ってくる。
unzip もで使えるので、そのままもってきてもおk。
持ってきたら、unzip して、

--
# patchadd -R /a 119850-13
--

これで、インストール先に指定したディスクに存在するシステムにパッチを適用することが可能。
適用されているかどうか心配(;・∀・)なら、/a/var/sadm/patch を見てみるのもいいし、入れ替わる
モジュールの日付を確認してもいい。
無事に適用できたら、再起動すればおk。

とか言って。再起動したら、

--
# Feb 24 18:00:00 empress scsi: /pci@8,600000/LSILogic,sas@1 (mpt0):
Feb 24 18:00:00 empress Volume 0 is |enabled||optimal|
Feb 24 18:00:00 empress scsi: /pci@8,600000/LSILogic,sas@1 (mpt0):
Feb 24 18:00:00 empress Physical disk 0 (target 2) is |missing|
Feb 24 18:00:00 empress scsi: /pci@8,600000/LSILogic,sas@1 (mpt0):
Feb 24 18:00:00 empress Physical disk 0 (target 2) is |out of sync||missing|
Feb 24 18:00:00 empress scsi: /pci@8,600000/LSILogic,sas@1 (mpt0):
Feb 24 18:00:00 empress Volume 0 is |enabled||degraded|
Feb 24 18:00:00 empress scsi: /pci@8,600000/LSILogic,sas@1 (mpt0):
Feb 24 18:00:00 empress Physical disk 2 (target 0) is |missing|
Feb 24 18:00:00 empress scsi: /pci@8,600000/LSILogic,sas@1 (mpt0):
Feb 24 18:00:00 empress Volume 0 is |enabled||failed|
Feb 24 18:00:00 empress scsi: WARNING: /pci@8,600000/LSILogic,sas@1/sd@0,0 (sd0):
Feb 24 18:00:00 empress SCSI transport failed: reason 'incomplete': retrying command
Feb 24 18:00:00 empress scsi: /pci@8,600000/LSILogic,sas@1 (mpt0):
Feb 24 18:00:00 empress Physical disk 1 (target 1) is |missing|
Feb 24 18:00:00 empress scsi: WARNING: /pci@8,600000/LSILogic,sas@1/sd@0,0 (sd0):
Feb 24 18:00:00 empress SCSI transport failed: reason 'reset': retrying command
Feb 24 18:00:00 empress scsi: WARNING: /pci@8,600000/LSILogic,sas@1/sd@0,0 (sd0):
Feb 24 18:00:00 empress SCSI transport failed: reason 'incomplete': retrying command
Feb 24 18:00:01 empress scsi: WARNING: /pci@8,600000/LSILogic,sas@1/sd@0,0 (sd0):
Feb 24 18:00:01 empress disk not responding to selection
Feb 24 18:00:01 empress scsi: WARNING: /pci@8,600000/LSILogic,sas@1/sd@0,0 (sd0):
Feb 24 18:00:01 empress disk not responding to selection
Feb 24 18:00:02 empress scsi: WARNING: /pci@8,600000/LSILogic,sas@1/sd@0,0 (sd0):
Feb 24 18:00:02 empress disk not responding to selection
Feb 24 18:00:02 empress scsi: WARNING: /pci@8,600000/LSILogic,sas@1/sd@0,0 (sd0):
Feb 24 18:00:02 empress disk not responding to selection
Feb 24 18:00:02 empress scsi: WARNING: /pci@8,600000/LSILogic,sas@1/sd@0,0 (sd0):
Feb 24 18:00:02 empress disk not responding to selection
Feb 24 18:00:03 empress scsi: WARNING: /pci@8,600000/LSILogic,sas@1/sd@0,0 (sd0):
Feb 24 18:00:03 empress disk not responding to selection
Feb 24 18:00:03 empress scsi: WARNING: /pci@8,600000/LSILogic,sas@1/sd@0,0 (sd0):
Feb 24 18:00:03 empress disk not responding to selection
--

orz
 何かがくるった・・・
 壊れたのかな・・・
それとも、RAID 1E がいけないのか・・・

 itmpt driver をインストールしているシステムを起動し、lsiutil で Volume の確認。
 特に、fail しているわけでもなく resync in progress のまま・・・
 でもって、RAID volume を mount してみる。
 mount できる。
 うーん。
 
 nevada b33 の mpt driver と入れ替える。
 実は、nevada b33 の mpt driver は、Solaris 10 でも使えるのでした。
 で、再起動。
 ........
 出た orz

 また、itmpt driver のシステムで起動。
 lsiutil で状態確認。特に、Volume は、壊れていないようだ。
mount もできる。
 (ノ ゜Д゜)ノ ==== ┻━━┻

 いろいろ悩んだあげく、念のため、パッチを適用する。

  119578-16 SunOS 5.10: FMA Patch (118822-30 の required patch)
  118822-30 SunOS 5.10: kernel Patch ( /kernel/misc/sparcv9/scsi の修正が入ってる)
  119374-13 SunOS 5.10: sd and ssd patch (念のため)

 それから、電源管理もとめておく。
 なんでパッチを適用したかというと、最初に試験していたシステムは、Solaris 10 1/06 で、すでに118822-27 が
 適用されていたし、こんなエラーはでなかったからw

 single user で、起動して mkfile 10g 10g とかしたりいじってみるも、特に問題なさげ。
 でもって、run level 3 に移行。
 
 起動してから、30 分くらいたつかな。
 mkfile したり、tunefs -a したりいじってるけど、エラーがでない・・・いや、いいことなんだけどね。

 なんか、いい感じなので、一度 shutdown して、itmpt driver のシステムで起動する。
 そして、lsiutil で、write cache: on にして、RAID Volune から再起動。

--
Fri Feb 24 19:22:55 JST 2006
-- 

--
Fri Feb 24 19:51:16 JST 2006
--

おーし、いい感じでし。
/usr/bin/basicreg を起動して、画面飛ばして、ユーザ登録しちゃおうってことで、登録。
 いけましたねー。

--
Fri Feb 24 20:35:18 JST 2006
--

 1時間近く問題なく動いてます。
 放置(`・ω・´)シャキーン

OBP 上で RAID Volume を作成できますた

| トラックバック(0)


 できました。

必ず、auto-boot? を false にして起動する。
 どうも、起動後、STOP+ Aすると、select がうまく動かない。

 非公開のコマンドは、FCode patch に strings かけてみつけたもの。
 他に、port reset や bus reset 、persistent entry reset もあるっぽ。

こんな感じになる。

--
{1} ok select /pci@8,600000/LSILogic,sas@1
MPT Firmware Fault, code 2000
MPT Firmware Fault, code 2000
send-message / issue-port-enable failed
issue-port-enable failed
Can't open device
--

 ここからが作成手順です。

{0} ok show-disks ← 【まず、コントローラの確認】
a) /pci@8,600000/LSILogic,sas@1/disk
b) /pci@8,600000/SUNW,qlc@4/fp@0,0/disk
c) /pci@8,700000/scsi@6,1/disk
d) /pci@8,700000/scsi@6/disk
e) /pci@8,700000/ebus@5/floppy@1,3023f0
q) NO SELECTION
Enter Selection, q to quit: a ←【SAS コントローラを選択】
/pci@8,600000/LSILogic,sas@1/disk has been selected.
Type ^Y ( Control-Y ) to insert it in the command line.
e.g. ok nvalias mydev ^Y
for creating devalias mydev for /pci@8,600000/LSILogic,sas@1/disk

  *show-disks は、次の select 実行時に、device path の入力を
   簡単にするために実行しているだけです。
   select に続いて、直打ちで問題ありません。

{0} ok select /pci@8,600000/LSILogic,sas@1 ←【select 実行】
{0} ok show-children ←【接続されている disk を確認。非公開コマンドです】

MPT Version 1.05, Firmware Version 1.06.00.00

Target 0
Unit 0 Disk ATA HDT722525DLA380 A96A 488397168 Blocks, 250 GB
SATA device PhyNum 0
Target 1
Unit 0 Disk ATA HDT722525DLA380 A80A 488397168 Blocks, 250 GB
SATA device PhyNum 1
Target 2
Unit 0 Disk ATA HDT722525DLA380 A91A 488397168 Blocks, 250 GB
SATA device PhyNum 2
Target 3
Unit 0 Disk ATA HDT722525DLA380 A96A 488397168 Blocks, 250 GB
SATA device PhyNum 3

 *disk が4本接続されています。

{0} ok show-volumes
No volumes to show

 *RAID volume の確認です。この時点では、Volume がありません。

{0} ok 0 1 2 3 create-ime-volume ←【RAID Volume の作成です。】
Target 0 size is 488265728 Blocks, 249 GB
Target 1 size is 488265728 Blocks, 249 GB
Target 2 size is 488265728 Blocks, 249 GB
Target 3 size is 488265728 Blocks, 249 GB
The volume can be any size from 1 MB to 476822 MB
What size do you want? [476822]
Volume size will be 976531456 Blocks, 499 GB
PhysDisk 0 has been created for target 0
PhysDisk 1 has been created for target 1
PhysDisk 2 has been created for target 2
PhysDisk 3 has been created for target 3
Volume has been created

 RAID Volume の作成には、以下のコマンドを使います。

RAID 1: create-im-volume
RAID 1E: create-ime-volume (分散ミラーリング。非公開コマンドです)
RAID 0: create-is-volume

書式は、

target target target ... create-i[m,me,s]-volume

になります。
 

{0} ok show-volumes ←【作成した volume 情報の参照】
Volume 0 Target 0 Type IME (Integrated Mirroring Extended)
Degraded Enabled Resync In Progress
4 Members 976531456 Blocks, 499 GB
Disk 0
Member 0 Online
Target 4 ATA HDT722525DLA380 A96A
Disk 1
Member 1 Online
Target 1 ATA HDT722525DLA380 A80A
Disk 2
Member 2 Online
Target 2 ATA HDT722525DLA380 A91A
Disk 3
Member 3 Online
Target 3 ATA HDT722525DLA380 A96A
{0} ok


 作成した Volume は、以下のコマンドで削除できます。

delete-volume

 こんな感じ。

OBP 上で RAID Volume を作成する方法

| トラックバック(0)

Fcode 搭載っていいね。
OBP 上で SAS3041X-R の Volume 作る方法用意してるなんて、やるな。
というわけで、徐々にまとまりつつありますが、itmpt driver は、どうしようかな・・・
個人的には、mpt driver でうごかしつつ、賛否両論はあるものの、Volume の write cache を有効にするのと、
何かのときのため用に itmpt driver で認識されせる。くらいでいいのかなーと思ってたり。

ただし、OBP から RAID Vollume を作成する場合は、Fcode の update が必須になってる。

122165-01 Hardware/1064_FCode Sun Fire T2000 1064 FCode update

が、しかし。Fcode は raidctl コマンドから実行する必要がある。raidctl を動かすには、

119850-13 SunOS 5.10: mpt radioictl libpiclsbl libpiclfrudr patch

が必要になる。
ヽ(;´Д`)ノ マンドクセ

LSI Logic SAS3041X-R

| トラックバック(0)

( ;´Д`)いやぁぁぁぁぁー!
こんなの出てるし orz

本当は、こっちのほうがほしかったなんて・・・いまさら・・・言う!
はやまったなー。ちょっとへこんでいいですか?

これ、形的にも、使われてるコントローラも、あきらかにアレに入ってるやつなんですけど・・・

http://www.watch.impress.co.jp/akiba/hotline/20060218/ni_i_ic.html

: Twitter Updates

    follow me on Twitter

    ウェブページ

    タグクラウド

    Techonrati

    Technorati search

    » リンクしているブログ

    Powered by Movable Type 4.23-ja