ホストをESXi 8.0 U3に上げたらEmulex SN30L22004メザニンHBAがストレージアダプタ一覧から消えた
ブレードシャーシ内の1台のホストをESXi 8.0 U3に上げたところ、ファイバーチャネルがまるごと消えて戻ってきました。データストアはなくなり、アダプタはストレージアダプタ一覧に出てこず、ファブリック側でもそのポートのログインが一切ありません。クラスタの他のホストは手を付けておらず、同じLUNが問題なく見えています。
- Emulex SN30L22004 Mezz 16Gb 2ポートファイバーチャネルアダプタを2枚積んだブレードホスト
- ESXi 7.0 U3から8.0 U3へアップグレード、ハードウェアの変更なし
- 16G SFP+オプティクスとパッチコードは変更なし、両ポートとも症状あり
[root@host:~] esxcli storage core adapter list
-> no vmhba entries for the FC ports, only the onboard storage controller
[root@host:~] lspci -v | grep -i emulex
-> both mezzanine ports are listed on the PCI bus
試したこと:
- メザニンカードを抜き差しし、片方のポートのオプティクスも交換した
- ストレージアダプタを再スキャンし、2回再起動した
- ファブリックスイッチ側を確認したが、ポートはそもそも一切上がってこない
カードがPCIバス上に存在しているのは明らかなので、これはアップグレードとたまたま重なったオプティクスかカード自体の故障なのか、それともESXi側の問題なのでしょうか。チケットを開く前に、自分がどちらを追いかけているのかをはっきりさせておきたいです。
Comments 3
どちらでもありません。
lspciには出てくるのにesxcli storage core adapter listには何も出てこないというのは、どのドライバにも掴まれていないデバイスに典型的な症状です。オプティクスはこの症状とは無関係です。ドライバに掴まれていないアダプタはそもそもトランシーバを駆動しないので、ファブリック側の沈黙は原因ではなく結果です。原因はカードではなくドライバです。ESXi 8.0にはこのアダプタ向けの認定ドライバが存在しません。サポートされていたのは7.0 U3までで、そこで打ち切りです。ホストに何をインストールしても8.0では復活しません。
短期と長期、2つの対応があります。
そしてこれをESXiのメジャーアップグレードすべてにおける定例の事前チェックにしてください。作業枠を予約する前に、すべてのストレージアダプタを互換性ガイドと照合するということです。カードが静かにそのリストから外れると、ホストはファイバーが切れたときとまったく同じ挙動になります。アダプタなし、データストアなし、ファブリックログインなし。そして大抵の人はそこに思い至るまで何日もオプティクスとケーブルに時間を溶かします。
こちらの状況と一致します。
lspci -v | grep -i emulexでは両ポートとも出てくるのに、ストレージアダプタ一覧には何もないので、オプティクスをいじるのはやめました。そのホストを7.0 U3に戻したところ、2枚のSN30L22004はストレージアダプタとして復活し、最初の再スキャンでデータストアもマウントされました。ファブリック側は何も変えていません。8.0でリストされている交換用アダプタは今見積もりを取っているところで、それが届くまではクラスタの残りも7.0 U3のままにしておきます。5分のHCLチェックで防げたはずのことにしては高い授業料でした。
同じ罠がもう1段下、オプティクス側にもあります。Cisco UCS C-series用のEmulexメザニンカードは電源投入時にモジュールをチェックし、気に入らないとBIOS画面に
Unsupported Optic Installedと表示します。Ciscoが受け付けるものは明記されていて、LPe31002-M6(UCSC-PCIE-BD16GF)は16GのAFBR-57F5MZ-ELXまたはFTLF8529P3BCV-EM、LPe32002-M2(UCSC-PCIE-BD32GF)は32GのAFBR-57G5MZ-ELXまたはFTLF8532P4BCV-EMです。末尾のアルファベットは飾りではなく、EEPROMがEmulexの望む形式で書かれていることを示す印で、同じFinisarやAvago製のガラスでも無印コード版は拒否されます。起動時にF2、Advancedタブ、adapter、Scan for Fibre Devicesと進めば、カード自身が何を見ているかが分かります。Brocade側もスイッチ側で同様のリストをプラットフォームごと、パーツナンバーごとに、最低FOSバージョン付きで持っています。SX6と7810のセキュアオプティクスはFOS 8.2.1eか8.2.2c以降を要求します。