Linux

Linux 光纖通道主機設置基本

  • December 19, 2012

我已經在Google上搜尋了大約 4 個小時,但沒有運氣。我正在嘗試將執行 Oracle Server 6.3 的 Linux 伺服器設置為光纖通道主機。然後將其連接到包含 500GB 卷的戴爾 Compellent 光纖通道主機。

Oracle 伺服器本身包含兩個 Brocade 815 FC HBA。我通過以下方式發現了他們的 WWN(我認為)

cat /sys/class/fc_host/host1/port_name
0x100000051efc3d85

cat /sys/class/fc_host/host2/port_name
0x100000051efc3d9f

下一部分是我不知所措的地方。我以前用過 iSCSI……FC 和你有一個啟動器和一個目標的交易一樣嗎?如果是這樣,我在哪裡可以在 linux 中具體說明?

我也是光纖通道協議的新手,所以我不確定進行交易需要什麼?WWN 和埠號?類似於乙太網世界中的 IP:Port 組合。

我已經閱讀了很多關於使用 systool、multipath、fc_transport 命令的內容,但是這些命令都不是來自 Oracle Server 6.3 的有效命令

感謝指導和幫助。

我安裝了 sccsi-target-utils,現在可以執行 rescan-scsi-bus 和 sg_map -x。

rescan-scsi-bus.sh -l -w -r
Host adapter 0 (megaraid_sas) found.
Host adapter 1 ((null)) found.
Host adapter 2 ((null)) found.
Host adapter 3 (ata_piix) found.
Host adapter 4 (ata_piix) found.
Scanning SCSI subsystem for new devices
and remove devices that have disappeared
Scanning host 0 for  SCSI target IDs  0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15, LUNs  0 1 2 3 4 5 6 7
Scanning for device 0 2 0 0 ....
OLD: Host: scsi0 Channel: 02 Id: 00 Lun: 00
     Vendor: DELL     Model: PERC H700        Rev: 2.30
     Type:   Direct-Access                    ANSI SCSI revision: 05
Scanning for device 0 2 1 0 ...
OLD: Host: scsi0 Channel: 02 Id: 01 Lun: 00
     Vendor: DELL     Model: PERC H700        Rev: 2.30
     Type:   Direct-Access                    ANSI SCSI revision: 05
Scanning host 1 for  all SCSI target IDs, LUNs  0 1 2 3 4 5 6 7
Scanning for device 1 0 3 1 ...
OLD: Host: scsi1 Channel: 00 Id: 03 Lun: 01
     Vendor: COMPELNT Model: Compellent Vol   Rev: 0505
     Type:   Direct-Access                    ANSI SCSI revision: 05
Scanning host 2 for  all SCSI target IDs, LUNs  0 1 2 3 4 5 6 7
Scanning host 3 for  all SCSI target IDs, LUNs  0 1 2 3 4 5 6 7
Scanning for device 3 0 0 0 ...
REM: Host: scsi3 Channel: 00 Id: 00 Lun: 00
DEL:  Vendor: TEAC     Model: DVD-ROM DV-28SW  Rev: R.2A
     Type:   CD-ROM                           ANSI SCSI revision: 05
Scanning host 4 channels  0 for  SCSI target IDs  0, LUNs  0 1 2 3 4 5 6 7
0 new device(s) found.
1 device(s) removed.

sg_map -x
/dev/sg0  0 0 32 0  13
/dev/sg1  0 2 0 0  0  /dev/sda
/dev/sg2  0 2 1 0  0  /dev/sdb
/dev/sg4  1 0 3 1  0  /dev/sdc

多路徑 -ll

multipath -ll
Dec 19 09:33:57 | DM multipath kernel driver not loaded
Dec 19 09:33:57 | multipath.conf line 14, invalid keyword: device
Dec 19 09:33:57 | multipath.conf line 15, invalid keyword: vendor
Dec 19 09:33:57 | multipath.conf line 16, invalid keyword: product
Dec 19 09:33:57 | multipath.conf line 17, invalid keyword: path_grouping_policy
Dec 19 09:33:57 | multipath.conf line 18, invalid keyword: getuid_callout
Dec 19 09:33:57 | multipath.conf line 19, invalid keyword: path_selector
Dec 19 09:33:57 | multipath.conf line 20, invalid keyword: path_checker
Dec 19 09:33:57 | multipath.conf line 21, invalid keyword: features
Dec 19 09:33:57 | multipath.conf line 22, invalid keyword: hardware_handler
Dec 19 09:33:57 | multipath.conf line 23, invalid keyword: failback
Dec 19 09:33:57 | multipath.conf line 24, invalid keyword: rr_weight
Dec 19 09:33:57 | multipath.conf line 25, invalid keyword: no_path_retry
Dec 19 09:33:57 | multipath.conf line 26, invalid keyword: rr_min_io
Dec 19 09:33:57 | multipath.conf line 27, invalid keyword: }
Dec 19 09:33:57 | DM multipath kernel driver not loaded

我不確定這一切意味著什麼……

看起來 /dev/sdb 和 /dev/sdc 是 SAN 卷的兩條路徑。因此,您可以選擇其中一個分區,對其進行格式化並直接掛載。然而,這是一個壞主意,因為您將沒有任何故障轉移支持。

下一步是device-mapper-multipath安裝和配置 - 請參閱此 RedHat 文件(我假設 Oracle 6 與 RHEL 6 相同)。我不確定/etc/multipath.conf戴爾 Compellent 陣列究竟需要什麼。這可能有效:

device {
vendor "COMPELNT"
product "Compellent Vol"
path_grouping_policy multibus
getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
path_selector "round-robin 0"
path_checker tur
features "0"
hardware_handler "0"
failback immediate
rr_weight uniform
no_path_retry queue
rr_min_io 1000
}

它來自http://pig.made-it.com/multipath.html

啟動多路徑服務後,您應該能夠執行multipath -ll並查看到 SAN 的兩條路徑。此外,此輸出中的 mpath 名稱應映射到/dev/mapper. 映射器磁碟您要格式化、分區、掛載等的路徑。

僅供參考,您不必搞亂所有 SCSI 重新掃描的東西。如果您只是將 1 回顯到兩個 FC 主機 sys 條目,則會顯示 /dev/sdx 條目。類似的東西echo "1" > /sys/class/fc_host/host1/issue_lip會做到這一點。您的系統上的主機號可能不同。確保你也回顯到所有主機埠。

引用自:https://serverfault.com/questions/459155