企業空間 采購商城 存儲論壇
華為全閃存陣列 IBM云計算 Acronis 安克諾斯 安騰普 騰保數據
首頁 > HBA卡 > HBA卡知識 > 正文

Linux下HBA卡的連接配置過程分享

2017-02-05 22:16來源:中國存儲網
導讀:本文以Emulex HBA作為示例HBA,分享Linux下HBA卡的連接配置過程。

主機外接存儲的準備工作:

HBA卡與操作系統的安裝順序決定了主機外接存儲的操作步驟。如果HBA安裝在操作系統之前,那么連接磁盤還是比較簡單的。安裝程序檢測到發現的硬件并準備所需模塊。如果適配器安裝于操作系統之后,或在操作系統安裝之后有變更,則用戶需要手動安裝。本文以Emulex HBA作為示例HBA。

HBA安裝于操作系統之前:安裝程序發現硬件,準備模塊

HBA安裝或變更于操作系統之后:用戶手動安裝

查看HBA:

lspci (Linux command)

[[email protected]]# lspci

00:00.0 Host bridge: VIA Technologies, Inc. VT82C693A/694x [Apollo PRO133x] (rev c4)

00:01.0 PCI bridge: VIA Technologies, Inc. VT82C598/694x [Apollo MVP3/Pro133x AGP]

00:04.0 ISA bridge: VIA Technologies, Inc. VT82C686 [Apollo Super South] (rev 40)

00:04.1 IDE interface: VIA Technologies, Inc.

VT82C586A/B/VT82C686/A/B/VT8233/A/C/VT8235 PIPC Bus Master IDE (rev 06

00:04.2 USB Controller: VIA Technologies, Inc. USB (rev 16)

00:04.3 USB Controller: VIA Technologies, Inc. USB (rev 16)

00:04.4 Host bridge: VIA Technologies, Inc. VT82C686 [Apollo Super ACPI] (rev 40)

00:09.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+(rev 10)

00:0a.0 Ethernet controller: 3Com Corporation 3c905 100BaseTX [Boomerang]

00:0c.0 Fibre Channel: Emulex Corporation: Unknown device fa00 (rev 01)

00:0c.1 Fibre Channel: Emulex Corporation: Unknown device fa00 (rev 01)

01:00.0 VGA compatible controller: ATI Technologies Inc Rage XL AGP 2X (rev 27)

如果已經安裝了HBA,使用上述命令確認HBA芯片集的類型。此命令列出了適配器的芯片集。本例顯示,Fibre Channel Emulex card, device fa00 , rev 01。

在消息日志中查找HBA:

另一個在服務器中查找HBA類型的方法是查看消息日志文件最后一次啟動過程中保存的信息。本例中,在/var/log/目錄下執行“more messages |grep HBA”我們看見兩個Emulex LP10000 HBA。

[#/var/log/more messages |grep HBA

Oct 18 14:55:21 sandboxlinux kernel: scsi0 : HBA: Emulex LightPulse

LP10000 on PCI bus 00 device 60 irq 11

Oct 18 14:55:21 sandboxlinux kernel: scsi1 : HBA: Emulex LightPulse

LP10000 on PCI bus 00 device 61 irq 9

Emulex HBA驅動:

Emulex驅動位于/lib/modules/2.4.21-4.EL/kernel/drivers/scsi。SCSI驅動文件是lpfcdd.o。

/lib/modules/2.4.21-4.EL/kernel/drivers/scsi

3w-xxxx.o ata_piix.o ide-scsi.olpfcdd.origscsi_mod.ost.o

aacraidBusLogic.oips.o megaraid2.o sd_mod.o sym53c8xx_2

aic7xxx dpt_i2o.o libata.omegaraid.osg.o sym53c8xx.o

aic7xxx_old.o gdth.olpfcdd.o

lsmod命令驗證模塊已被加載。本例顯示驅動已被加載,名為lpfcdd。

/sbin/lsmod

Module Size Used by Tainted: P

ide-cd 34016 0 (autoclean)

cdrom 32576 0 (autoclean) [ide-cd]

mousedev 5624 1 (autoclean)

input 6144 0 (autoclean) [mousedev]

iptable_filter 2412 1 (autoclean)

ext3 89960 2

jbd 55060 2 [ext3]

lpfcdd 295016 18

aic7xxx 162064 4

sd_mod 13360 25 [emcp]

scsi_mod 112680 5 [emcpmpapemcpmp

如何使用Emulex lputil工具查找WWN:

通過執行lputil,可通過Emulex “lputil”工具查找HBA卡的WWN名。選擇2“Adapter Information”,之后選擇4“IEEE Address”。此地址將會被顯示成為2個8位16進制字符,即為WWN。

Linux下HBA卡的連接配置過程分享

Emulex永久綁定:

在光纖網絡環境下,推薦永久綁定驅動,但不強制要求,目的是限制網絡存儲只能通過預定義的端口進行通訊。如不綁定,則無法保證服務器端與存儲陣列通過光纖網絡通訊邏輯路由的一致性。如果交換機的物理配置發生變更(如調換線纜或主機重啟),邏輯路由將無法保持一致,這將會導致數據損壞。注意Emulex驅動的永久綁定是基于target的,而非LUN。可通過兩種方式來實現永久綁定,使用Emulex配置文件/etc/lpfc.conf,或在/etc/modules.conf文件中添加選項。

lpfc.conf文件包含所有控制驅動初始化的參數。此文件一經修改,需要經過重新編譯和加載才能使改動生效。也就是說,如果lpfc.conf文件中添加了永久綁定則必須重新加載。

配置lpfc.conf文件的步驟:

在lpfc.conf文件中配置永久綁定,首先在lpfc.conf文件中查找lpfc_bind_entries參數并將此參數設置成該主機實際的綁定數目。例如:intlpfc_bind_entries =4; 定義了4個綁定。

第二,選擇一種永久綁定的方式。Emulex有三種永久綁定的方法:

lpfc_fcp_bind_WWNN將指定的World Wide Node Name綁定至target ID

lpfc_fcp_bind_WWPN將指定的World Wide Port Name綁定至target ID

lpfc_fcp_bind_DID將指定的port ID綁定至target ID

推薦通過WWPN永久綁定。只能使用一種永久綁定方式。當指定target ID時,Target 0不能被使用,因為target 0是為控制器保留的。

第三步,查找lpfc_automap參數并將其設置為0。

第四步,查找lpfc_scandown參數并將其設置為0。

第五步,保存lpfc.conf文件。

第六步,使用make build命令編譯驅動。

第七步,使用make install命令在當前運行的內核安裝驅動。make install參數將驅動復制到/lib/modules/$myversion/kernel/drivers/scsi($myversion是內核版本)。

我們按照target device WWPN建立FCP綁定。lpfc_fcp_bind_WWPN將指定WWPN綁定至target ID。該綁定確保分配的target在重啟之后仍被保存。綁定內容格式為:“NNNNNNNNNNNNNNNN:lpfcXtY”,NNNNNNNNNNNNNNNN是16bit數代表著target WWPN。X是物理硬件適配器編號,Y是分配的target。多條語句之間以逗號相間隔,以分號為結束。目前無法將適配器target指定給特定的sd設備,/dev/sdX。

例如:char *lpfc_fcp_bind_WWPN[]={"21000020370cf8263:lpfc1t0"};

舉例1:

char *lpfc_fcp_bind_WWPN={.NNNNNNNNNNNNNNNN:lpfcXtY.};

vi /etc/lpfc.conf

intlpfc_bind_entries =4;

intlpfc_automap parameter=0;

intlpfc_scandown=0;

char *lpfc_fcp_bind_WWPN={"50060160006000ed:lpfc0t1",

"50060168006000ed:lpfc0t2","50060160006000ed:lpfc1t1",

"50060168006000ed:lpfc1t2"};

本例中我們修改了lpfc.conf文件,將參數lpfc_bind_entries,lpfc_automap和

lpfc_scandown設置為0,并通過lpfc_fcp_bind_WWPN綁定WWPN。

配置module.conf文件的步驟:

在module.conf文件中配置永久綁定,首先為系統中每一個adapter指定WWNN/WWPN以及target信息,之后通過在文件中添加永久綁定參數修改module.conf文件。

首先,將lpfc_bind_entries參數設置成主機實際綁定的數量:比如:lpfc_bind_entries=4。

第二步,將lpfc_scandown參數設置成“0”。

第三步,將lpfc_automap參數設置成“0”。

第四步,選擇lpfc_fcp_bind_WWPN, lpfc_fcp_bind_WWNN或lpfc_fcp_bind_DID, target ID設置綁定類型。推薦通過WWPN實現永久綁定。

第五步,保存對/etc/modules.conf文件的更改。

第六步,通過執行/sbin/#./modprobelpfcdd更新lpfcdd模塊。

舉例2:

#/etc/more modules.conf

aliasparport_lowlevelparport_pc

aliasscsi_hostadapter sym53c8xx

alias scsi_hostadapter1 lpfcdd

alias scsi_hostadapter2 lpfcdd

alias eth0 tlan

optionsscsi_modmax_scsi_luns=256 scsi_allow_ghost_devices=1

optionslpfcdd lpfc0_topology=0x02 lpfc1_topology=0x02

lpfc_network_on=0 lpfc_use_data_direction=0 lpfc_automap=0

lpfc_scandown=0 lpfc_bind_entries=4

lpfc_fcp_bind_WWPN={.50060160006000ed:lpfc0t1,50060168006000ed:lpfc0t2,50

060160006000ed:lpfc1t1,50060168006000ed:lpfc1t2.};

本例中我們修改了/etc/modules.conf文件,設置lpfc_automap=0, lpfc_scandown=0,

lpfc_bind_entries=4,并通過lpfc_fcp_bind_WWPN={“50060160006000ed:lpfc0t1,50060168006000ed:lpfc0t2,50060160006000ed:lpfc1t1,50060168006000ed:lpfc1t2”}綁定WWPN。  

識別存儲設備:

HBA安裝結束并重啟系統之后,用戶可以通過執行“more messages |grep SCSI”識別HBA發現的磁盤設備。本例中我們看到的設備從sda到sdf。

 

Linux下HBA卡的連接配置過程分享

 

繼續閱讀
關鍵詞 :
HBA卡
相關閱讀
產品推薦
頭條閱讀
欄目熱點

Copyright @ 2006-2019 ChinaStor.COM 版權所有 京ICP備14047533號

中國存儲網

存儲第一站,存儲門戶,存儲在線交流平臺

广西11选五走势图彩经网