RH2280主机映射LUN(SAS接口)后重启失败

发布时间:  2014-10-08 浏览次数:  154 下载次数:  0
问题描述
1、使用S2100阵列,SAS线连接RH2280主机(linux系统),登录OSM管理界面查看连接正常。给主机添加SAS端口,并映射了4个LUN给该主机。

2、  为使主机端发现刚才映射的LUN,重启服务器,发现系统进入grub引导阶段时出错,终端显示grub err.

告警信息
处理过程
进入BIOS管理界面,选择BOOT菜单,查看Hard Disk Drives子菜单,发现先前映射的4个LUN能被BIOS正常识别,但被放在了列表的前几位:

1、  手工将本地装有GRUB启动程序的硬盘改为Hard Disk 的第1个磁盘设备。完成设置后保存BIOS设置并重启。重启后系统就能正常进入grup引导程序,进入操作系统后,能正常发现先前给主机映射的LUN.。测试基本兼容性时,我使用上面的方法,但我发现只要动态再给主机多映射个LUN,再重启主机,BIOS启动阶段就会自动把该LUN的磁盘驱动置为第1位,又会导致启动失败。但测试到多路径时,我给主机映射了2个LUN,多路径下的一个LUN就要占用2个hard disk磁盘列表,6个LUN总共要占用12个hard disk 列表。RH2280       hard disk只能显示12个磁盘列表(好像华为的刀片服务器所用的bios也有此问题),重启后在hard disk就不能找到本地硬盘的设备驱动列表(其实该驱动存在,但不能在BIOS里显示处理),这种情况下就不能按第一种方式修改hard disk 列表了。

2、 修改LUN的ID,把6个LUN的ID改为1-6,即不使用ID 0。这样做的好处是每次重启后不会把LUN加载到hard disk 磁盘列表的前面,再加多少个LUN也不会出现启动问题。

根因
RH2280配有6块SAS接口的硬盘。在Linux启动程序GRUB启动引导阶段,需要读取hard disk 列表中第一块硬盘的下的MBR。MBR再引导装载grub启动引导管理软件,也就是读取该磁盘下的/boot/grub.conf文件。我的服务器上共有4个操作系统,先前分别装有2个windows和1个red hat 5.2。之后为了测试Suse10 sp2,将系统装在主机的第4块硬盘上,并把该系统的引导信息写入第1块硬盘的MBR中。

将同样使用SAS驱动的LUN映射过来,可能在bios发现硬件设备阶段把该SAS设备添加到hard disk 列表前段,把本地磁盘的列表序列后移了。系统启动后读取LUN上的MBR发现没有任何引导信息,所以启动失败
建议与总结

END