如何安装配置IBM存储多路径软件

   在安装多路径软件之前需要确认系统版本及内核版本,根据系统的版本号与内核版本号下载对应版本的多路径软件安装设置。www.lsi.com/rdac站点可以下载到DS3000、DS4000 、 DS5000系统存储多路径软件。以下为DS5020存储为例进行配置,操作系统为RHEL5.6。


1.安装配置


1)、下载软件

查看系统内核版本

[root@jason1~]# uname -a

Linuxjason1 2.6.18-238.el5 #1 SMP Sun Dec 19 14:22:44EST 2010 x86_64 x86_64 x86_64 GNU/Linux

[root@jason1~]#

知道了系统内核版本可以登录www.lsi.com/rdac站点下载对应内核版本的多路径软件(DS5020、DS5040同属DS5000系列,可以下载DS5000系列版本多路径软件)。


上图可以看到对应的内核2.6.18-238.el5版本的多路径软件为09.03.0C05.0504版本


下载rdac-LINUX-09.03.0C05.0504-source.tar.gz。

譬如当前系统连接存储DS5020划有3个LUN。在没有安装多路径软件之前fdisk –l可以看到如下信息:

[root@jason1~]#fdisk -l


Disk/dev/sda: 298.9 GB, 298999349248 bytes

255heads, 63 sectors/track, 36351 cylinders

Units= cylinders of 16065 * 512 = 8225280 bytes


  Device Boot      Start         End      Blocks  Id  System

/dev/sda1   *          1          13      104391  83  Linux

/dev/sda2              14         274    2096482+  82  Linux swap / Solaris

/dev/sda3             275       36351  289788502+  83  Linux


Disk/dev/sdb: 536.8 GB, 536870912000 bytes

255heads, 63 sectors/track, 65270 cylinders

Units= cylinders of 16065 * 512 = 8225280 bytes


Disk/dev/sdb doesn't contain a valid partition table


Disk/dev/sdd: 536.8 GB, 536870912000 bytes

255heads, 63 sectors/track, 65270 cylinders

Units= cylinders of 16065 * 512 = 8225280 bytes


Disk/dev/sdd doesn't contain a valid partition table


Disk/dev/sdj: 1861.4 GB, 1861481775616 bytes

255heads, 63 sectors/track, 226312 cylinders

Units= cylinders of 16065 * 512 = 8225280 bytes


Disk/dev/sdj doesn't contain a valid partition table


Disk/dev/sdk: 4998.3 GB, 4998330467328 bytes

255heads, 63 sectors/track, 607679 cylinders

Units= cylinders of 16065 * 512 = 8225280 bytes


Disk/dev/sdk doesn't contain a valid partition table


Disk/dev/sdl: 1861.4 GB, 1861481775616 bytes

255heads, 63 sectors/track, 226312 cylinders

Units= cylinders of 16065 * 512 = 8225280 bytes


Disk/dev/sdl doesn't contain a valid partition table


Disk/dev/sdm: 4998.3 GB, 4998330467328 bytes

255heads, 63 sectors/track, 607679 cylinders

Units= cylinders of 16065 * 512 = 8225280 bytes


Disk/dev/sdm doesn't contain a valid partition table

[root@jason1~]#


2)、编译安装

编译安装rdac-LINUX-09.03.0C05.0504-source.tar.gz

[root@JASON1mnt]#tar zxvf rdac-LINUX-09.03.0C05.0504-source.tar.gz

[root@JASON1mnt]#cd linuxrdac-09.03.0C05.0504/

[root@JASON1linuxrdac-09.03.0C05.0504]# make install

make[1]: Entering directory`/usr/src/kernels/2.6.18-238.el5-x86_64'

 CC [M] /mnt/linuxrdac-09.03.0C05.0504/MPP_hba.o

 CC [M] /mnt/linuxrdac-09.03.0C05.0504/mppLnx26p_upper.o

 CC [M] /mnt/linuxrdac-09.03.0C05.0504/mppLnx26p_sysdep.o

 CC [M] /mnt/linuxrdac-09.03.0C05.0504/mppCmn_s2tos3.o

 CC [M] /mnt/linuxrdac-09.03.0C05.0504/mppCmn_SysInterface.o

 CC [M] /mnt/linuxrdac-09.03.0C05.0504/mppLnx26p_vhbamisc.o

 CC [M] /mnt/linuxrdac-09.03.0C05.0504/mppLnx26p_vhbatask.o

 CC [M] /mnt/linuxrdac-09.03.0C05.0504/mppLnx26p_vhba.o

 CC [M] /mnt/linuxrdac-09.03.0C05.0504/mppLnx26p_vhbaproc.o

 CC [M] /mnt/linuxrdac-09.03.0C05.0504/mppLnx26p_vhbalib.o

 CC [M] /mnt/linuxrdac-09.03.0C05.0504/mppLnx26p_vhbaio.o

 LD [M] /mnt/linuxrdac-09.03.0C05.0504/mppUpper.o

 LD [M] /mnt/linuxrdac-09.03.0C05.0504/mppVhba.o

 Building modules, stage 2.

 MODPOST

 CC     /mnt/linuxrdac-09.03.0C05.0504/mppUpper.mod.o

 LD [M] /mnt/linuxrdac-09.03.0C05.0504/mppUpper.ko

 CC     /mnt/linuxrdac-09.03.0C05.0504/mppVhba.mod.o

 LD [M] /mnt/linuxrdac-09.03.0C05.0504/mppVhba.ko

make[1]:Leaving directory `/usr/src/kernels/2.6.18-238.el5-x86_64'

make[1]:Entering directory `/usr/src/kernels/2.6.18-238.el5-x86_64'

 Building modules, stage 2.

 MODPOST

make[1]:Leaving directory `/usr/src/kernels/2.6.18-238.el5-x86_64'

gcc  -I/mnt/linuxrdac-09.03.0C05.0504-I/mnt/linuxrdac-09.03.0C05.0504/mpp_linux_headers/-I/mnt/linuxrdac-09.03.0C05.0504/mpp_linux_sys_headers/-c ./utility/mppUtil.c  -o mppUtil.o

/bin/bash./genfileattributes bld

gcc  -I/mnt/linuxrdac-09.03.0C05.0504-I/mnt/linuxrdac-09.03.0C05.0504/mpp_linux_headers/-I/mnt/linuxrdac-09.03.0C05.0504/mpp_linux_sys_headers/-c ./utility/mppUtil26p_sysdep.c -o mppUtilSysdep.o

gccmppUtil.o mppUtilSysdep.o -o mppUtil

gcc-o genuniqueid genuniqueid.c

CheckingHost Adapter Configuration...

Detected2 Emulex Host Adapter Port(s) on the system

Detected1 LSI Host Adapter Port(s) on the system

HostAdapters from different supported vendors co-exists on your system.

Pleasewait while we modify the system configuration files.

Yourkernel version is 2.6.18-238.el5

Preparingto install MPP driver against this kernel version...

Generatingmodule dependencies...

Creatingnew MPP initrd p_w_picpath...

       You must now edit your boot loaderconfiguration file, /boot/grub/menu.lst, to

       add a new boot menu, which uses mpp-2.6.18-238.el5.imgas the initrd p_w_picpath.

       Now Reboot the system for MPP to takeeffect.

       The new boot menu entry should looksomething like this (note that it may

       vary with different systemconfiguration):


       ...


               title Red Hat Linux (2.6.18-238.el5)with MPP support

               root (hd0,5)

               kernel /vmlinuz-2.6.18-238.el5ro root=LABEL=RH9

               initrd /mpp-2.6.18-238.el5.img

       ...

MPPdriver package has been successfully installed on your system.

[root@JASON1linuxrdac-09.03.0C05.0504]#

3)、配置grub


按照以上提示修改grub.conf文件,修改前grub.conf文件如下:

[root@JASON1 grub]# vi grub.conf

#grub.conf generated by anaconda

#

#Note that you do not have to rerun grub after making changes to this file

#NOTICE:  You have a /boot partition.  This means that

#          all kernel and initrd paths are relativeto /boot/, eg.

#          root (hd0,0)

#          kernel /vmlinuz-version roroot=/dev/sda3

#          initrd /initrd-version.img

#boot=/dev/sda

default=1

timeout=5

splashp_w_picpath=(hd0,0)/grub/splash.xpm.gz

hiddenmenu

titleRed Hat Enterprise Linux Server (2.6.18-238.el5xen)

       root (hd0,0)

       kernel /xen.gz-2.6.18-238.el5

       module /vmlinuz-2.6.18-238.el5xenro root=LABEL=/ rhgb quiet

       module /initrd-2.6.18-238.el5xen.img

titleRed Hat Enterprise Linux Server-base (2.6.18-238.el5)

       root (hd0,0)

       kernel /vmlinuz-2.6.18-238.el5ro root=LABEL=/ rhgb quiet

       initrd /initrd-2.6.18-238.el5.img


修改后grub.conf配置文件内容如下:

[root@JASON1grub]# vi grub.conf

#grub.conf generated by anaconda

#

#Note that you do not have to rerun grub after making changes to this file

#NOTICE:  You have a /boot partition.  This means that

#          all kernel and initrd paths arerelative to /boot/, eg.

#          root (hd0,0)

#          kernel /vmlinuz-version roroot=/dev/sda3

#          initrd /initrd-version.img

#boot=/dev/sda

default=2

timeout=5

splashp_w_picpath=(hd0,0)/grub/splash.xpm.gz

hiddenmenu

titleRed Hat Enterprise Linux Server (2.6.18-238.el5xen)

       root (hd0,0)

       kernel /xen.gz-2.6.18-238.el5

       module /vmlinuz-2.6.18-238.el5xenro root=LABEL=/ rhgb quiet

       module /initrd-2.6.18-238.el5xen.img

titleRed Hat Enterprise Linux Server-base (2.6.18-238.el5)

       root (hd0,0)

       kernel /vmlinuz-2.6.18-238.el5ro root=LABEL=/ rhgb quiet

       initrd /initrd-2.6.18-238.el5.img

title Red Hat Linux (2.6.18-238.el5)with MPP support

               root (hd0,0)

               kernel/vmlinuz-2.6.18-238.el5 root=LABEL=/ rhgb quiet

               initrd /mpp-2.6.18-238.el5.img


注:1、红色字体为修改内容。

   2、修改grub.conf文件建议在原有文件后加入新的启动条目或修改文件之前对grub.conf进行备份。


修改成功保存之后重新启动系统,启动成功之后fdisk -l查看内容如下:

[root@jason1~]# fdisk -l

Disk/dev/sda: 298.9 GB, 298999349248 bytes

255heads, 63 sectors/track, 36351 cylinders

Units= cylinders of 16065 * 512 = 8225280 bytes


  Device Boot      Start         End      Blocks  Id  System

/dev/sda1   *          1          13      104391  83  Linux

/dev/sda2              14         274    2096482+  82  Linux swap / Solaris

/dev/sda3             275       36351  289788502+  83  Linux


Disk/dev/sdb: 536.8 GB, 536870912000 bytes

255heads, 63 sectors/track, 65270 cylinders

Units= cylinders of 16065 * 512 = 8225280 bytes


Disk/dev/sdb doesn't contain a valid partition table


Disk/dev/sdc: 1861.4 GB, 1861481775616 bytes

255heads, 63 sectors/track, 226312 cylinders

Units= cylinders of 16065 * 512 = 8225280 bytes


Disk/dev/sdc doesn't contain a valid partition table


Disk/dev/sdd: 4998.3 GB, 4998330467328 bytes

255heads, 63 sectors/track, 607679 cylinders

Units= cylinders of 16065 * 512 = 8225280 bytes


Disk/dev/sdd doesn't contain a valid partition table

[root@jason1~]#

备注:修改grub.conf文件前,应对grub.conf配置文件进行备份。

2.常见问题


1)、问题一

[root@jason1 linuxrdac-09.03.0C05.0504]#make install

This Version of MPP build is not supported on this Version of Redhat Kernel2.6.18-238.el5.

make: *** [kernelvercheck.REDHAT] 错误 1

[root@jason1 linuxrdac-09.03.0C05.0504]#


解决方法:

/etc/redhat-release文件设置有系统的版本号,执行makeinstall操作会读取该文件来判定是否支持本系统内核。由于在安装oracle时,修改系统版本号为4所以出现以上错误,可以修改回系统版本号为5.6(使用时根据自己系统实际版本号进行修改。)

[root@jason1 ~]# vi /etc/redhat-release

Red Hat Enterprise Linux Server release 5.6 (Tikanga)

2)、问题二

编译时报错如下:

[root@jason1 linuxrdac-09.03.0C05.0504]#make install

Kernel source is not installed

make: *** [kernelsrccheck] 错误 1

[root@jason1 linuxrdac-09.03.0C05.0504]#


解决方法:

   执行make install 或make操作其实包括对该多路径软件进行编译,编译内核时需要链接Kernel source文件进行编译,所以需要安装kernel-devel-2.6.18-238.el5.x86_64.rpm

(本系统为64位系统,如果你的系统为32位请安装32为的包)

[root@jason1 mnt]# rpm -ivh kernel-devel-2.6.18-238.el5.x86_64.rpm

warning: kernel-devel-2.6.18-238.el5.x86_64.rpm:Header V3 DSA signature: NOKEY, key ID 37017186

Preparing...               ########################################### [100%]

  1:kernel-devel          ########################################### [100%]

[root@jason1 mnt]#