服務器qlogic光纖卡驅動崩潰的問題
軟硬件信息:
機型: 超強K620-M1
處理器:鯤鵬920
內存:512G
整機類型/架構:服務器
系統(tǒng)版本:Kylin-Server-10-SP1-Release-Build04-20200711-arm64
內核版本:4.19.90-17.ky10.aarch64
復現(xiàn)步驟:
服務器通過qlogic HBA卡連接存儲服務器,并設置多路徑,當進行路徑切換的時候,就有可能出現(xiàn)崩潰。
服務器qlogic光纖驅動initor掛載崩潰的問題
軟硬件信息:
系統(tǒng)版本:V10-SP1-Release-Build10-20201202
內核版本:4.19.90-21.2.ky10.*
復現(xiàn)步驟:
服務器環(huán)境
服務器1:target端
OS: 麒麟V10系統(tǒng)Kylin-Server-10-SP1-Release-Build20-20210518-aarch64.iso
內核:4.19.90-25.2-aarch64-base-version
FC HBA卡:QLogic QLE2560
WWN: 21:00:00:24:ff:1c:0d:b6
服務器2:initiator端
OS: 麒麟V10系統(tǒng)Kylin-Server-10-SP1-Release-Build20-20210518-aarch64.iso
內核:4.19.90-25.2-aarch64-base-version
FC HBA卡:QLogic QLE2560
WWN: 21:00:00:24:ff:1c:2d:fa
(備注:target端和initiator端通過光纖線直連,要求initiator端FC HBA卡的WWN要大于target端FC HBA卡的WWN)
1、服務器1配置:
1.1獲取BHA卡物理地址
#cd /sys/class/fc_host
#ls
host9 // 有1個端口
# cat /host9/port_name //查看端口9的名稱下面1.4用到
0x21000024ff1c0db6
1.2設置HBA卡位target模式
#vi /etc/modprobe.d/qla2xxx.conf //創(chuàng)建配置文件
新增:options qla2xxx qlini_mode=”disabled” //重啟后生效
#cat /sys/module/qla2xxx/parameters/qlini_mode
//查看HBA卡模式,應該為disable
如果不是disable,且重啟沒有生效,需要禁用/啟用一下qla2xxx模塊:
#rmmod qla2xxx
//如果有其他模塊占用,可以用lsmod查看占用模塊tcm_qla2xxx
#rmmod tcm_qla2xxx //再執(zhí)行rmmod qla2xxx
#modprobe qla2xxx //重新加載模塊
#modprobe tcm_qla2xxx
//重新加載模塊,再查看模式變成disable
1.3設置存儲對象
#targetcli //進入targetcli管理軟件
/> /backstores/fileio create my_fileio /tmp/disk1.img 200M
//創(chuàng)建200M
/> /backstores/block create name=block_backend dev=/dev/sdb //sdb盤作為共享
1.4創(chuàng)建FC target(映射到HBA卡)
#targetcli
/>cd qla2xxx
/qla2xxx>create 21:00:00:24:ff:1c:0d:b6 //服務器1地址
/qla2xxx/21:00:00:24:ff:1c:0d:b6>luns/ create /backstores/fileio/my_fileio
1.5設置ACLS(將本地共享盤連接到遠端HBA卡)
/qla2xxx/21:00:00:24:ff:1c:0d:b6>acls/ create 21:00:00:24:ff:1c:2d:fa //服務器2地址
/qla2xxx/21:01:00:1b:32:35:b0:31>cd ../../ //返回根目錄
/>saveconfig //保存配置
/>ls //查看配置
2、服務器2配置
2.1 獲取BHA卡物理地址
#cd /sys/class/fc_host
#ls
host9 // 有1個端口
# cat ./host9/port_name //查看端口9的名稱上面1.5用到
0x21:00:00:24:ff:1c:2d:fa
2.2 重啟服務器2,查看
#reboot
#fdisk –l //多出一個200M的硬盤,設置成功
3、將服務器1和服務器2分別作為target和initiator端連接;
4、在target端創(chuàng)建存儲盤共享到initiator端成功 ;
5、在target端的targetcli中執(zhí)行如下命令清除配置:
clearconfig confirm=True
saveconfig
6、在initiator端執(zhí)行如下命令重新掃描:
echo 1 > /sys/class/fc_host/host11/issue_lip
結果:target端服務器死機,使用25.5和27.rc1.test的內核都有復現(xiàn)死機現(xiàn)象
上述qlogic光纖卡的兩個問題都是qla2xxx本身驅動問題,通過升級qla2xxx驅動源碼到v10.02.00.106-k版本即可解決問題。目前麒麟內核4.19.90-23.17.v2101已修復這個問題。
需要安裝以下必要內核rpm包升級內核到4.19.90-23.17.v2101或者4.19.90-23.17.v2101以上版本。
下面以安裝4.19.90-23.17.v2101內核版本為例:
kernel-4.19.90-23.17.v2101.ky10.aarch64.rpm
kernel-core-4.19.90-23.17.v2101.ky10.aarch64.rpm
kernel-devel-4.19.90-23.17.v2101.ky10.aarch64.rpm
kernel-headers-4.19.90-23.17.v2101.ky10.aarch64.rpm
kernel-modules-4.19.90-23.17.v2101.ky10.aarch64.rpm
kernel-modules-extra-4.19.90-23.17.v2101.ky10.aarch64.rpm
kernel-modules-internal-4.19.90-23.17.v2101.ky10.aarch64.rpm
通過以下命令進行升級安裝:
rpm -ivh kernel-4.19* kernel-core* kernel-modules*
rpm -Uvh kernel-devel* kernel-headers*
安裝完后,需要重啟機器生效。