Fibre-Channel
Emulex FC HBA 未重置
帶有老式 Emulex HBA 的 Solaris 11 機器似乎存在一些問題:
# dmesg | egrep emlxs Dec 29 15:31:10 san2 emlxs: [ID 349649 kern.info] [ 5.0608]emlxs1: NOTICE: 730: Link reset. (Disabling link...) Dec 29 15:31:10 san2 emlxs: [ID 349649 kern.info] [ 5.0333]emlxs1: NOTICE: 710: Link down. Dec 29 15:31:11 san2 emlxs: [ID 349649 kern.info] [ B.1FD3]emlxs1: NOTICE: 930: Packet transport failed. (*Node not found. did=10300)
當我嘗試使用 emlxadm(它是雙 HBA PCI-X 卡)重置受影響的適配器時,它會引發錯誤並且不會重置:
# /opt/EMLXemlxu/bin/emlxadm Available Emulex HBA's: 1. FCT:emlxs0 : /devices/pci@0,0/pci8086,25e2@2/pci8086,350c@0,3/pci1014,1a7@1/pci10df,f980@4 (CONNECTED) 2. FCT:emlxs1 : /devices/pci@0,0/pci8086,25e2@2/pci8086,350c@0,3/pci1014,1a7@1/pci10df,f980@5 (NOT CONNECTED) Enter an HBA number or zero to exit: 2 HBA 2: /devices/pci@0,0/pci8086,25e2@2/pci8086,350c@0,3/pci1014,1a7@1/pci10df,f980@5 emlxadm> get_fw_rev Firmware revision: LP9802DC 1.92a1 emlxadm> reset_hard ioctl: FCIO_RESET_HARD: Device busy fcio: FCIO_RESET_HARD: Operation successful. > exit # fcadm force-lip 10000000c93a3e6b Error: Failed to reinitialize the link of HBA 10000000c93a3e6b
fmdump
沒有記錄錯誤。重新啟動似乎可以解決問題,並且它很少出現。HBA 通過 5.30 版本的 FabricOS 連接到 Brocade Silkworm。更新:韌體是最新/最好的,驅動程序版本是 2.60f。
我嘗試過重置埠,甚至重啟 Silkworm,但埠仍處於離線狀態,顯然是因為 Emulex HBA 已關閉 GBIC PHY:
SW3014BC2_B:admin> portshow 13 portName: portHealth: No Fabric Watch License Authentication: None portDisableReason: None portCFlags: 0x1 portFlags: 0x4001 PRESENT U_PORT LED portType: 4.2 portState: 2 Offline portPhys: 4 No_Light
關於可能的原因或如何在不重新啟動的情況下恢復連接的任何想法?
我最終更換了 HBA,因為問題在我看來是“硬體”。
該 HBA 埠已連接到目標埠,只需將其斷開片刻,將其重置然後重新連接。不知道您執行此操作的最簡單方法是什麼,因為我不知道您的 SAN 設計,但我想您的交換機上的埠關閉可能是最簡單/最快的方法。