RedHat6.4 用UDEV配置ASM所需磁盘
同事在装一套RAC测试环境,结果发现原来用ASMLIB来配置磁盘,在安装GRID的时候,最终报错了,经过检查发现居然两边的磁盘不匹配。A机的sdb,sdc分别对应OCRVOL1,OCRVOL2,但是B机却反过来了,导致最终B机没有成功。磁盘时通过ISCSI共享过来的,本来想通过指定认盘顺序的方式让两边能够认出序号一样的盘,结果折腾了好久死活两边的盘序都是不一样的。因此,决定换一种方式来做,用UDEV来进行设备绑定,这样应该就不会受到盘序的影响了。处理过程如下:
1、查找唯一标识ID:
/lib/udev/scsi_id -g -u /dev/sdb
得到结果:2dbc4d8bf64a149ff
/lib/udev/scsi_id -g -u /dev/sdc
得到结果:24202f2f49fee1f5e
/lib/udev/scsi_id -g -u /dev/sdd
得到结果:294125132c2b3fd39
/lib/udev/scsi_id -g -u /dev/sde
得到结果:23f42527e7aca03d9
2、配置规则文件。
vi /etc/udev/rules.d/99-oracle-asmdevices.ru
填写内容如下:
KERNEL=="sd*", SUBSYSTEM=="block", PROGRAM=="/lib/udev/scsi_id -g -u /dev/$name",
RESULT=="2dbc4d8bf64a149ff", NAME="asmdiska", OWNER="grid",
GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", SUBSYSTEM=="block", PROGRAM=="/lib/udev/scsi_id -g -u /dev/$name",
RESULT=="24202f2f49fee1f5e", NAME="asmdiskb", OWNER="grid",
GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", SUBSYSTEM=="block", PROGRAM=="/lib/udev/scsi_id -g -u /dev/$name",
RESULT=="294125132c2b3fd39", NAME="asmdiskc", OWNER="grid",
GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", SUBSYSTEM=="block", PROGRAM=="/lib/udev/scsi_id -g -u /dev/$name",
RESULT=="23f42527e7aca03d9", NAME="asmdiskd", OWNER="grid",
GROUP="asmadmin", MODE="0660"
3、重启服务
start_udev
4、检查结果
[root@ywbrac1 ~]# ll /dev/asm*
brw-rw---- 1 grid asmadmin 8, 16 4月 11 22:32 /dev/asmdiska
brw-rw---- 1 grid asmadmin 8, 32 4月 11 22:32 /dev/asmdiskb
brw-rw---- 1 grid asmadmin 8, 48 4月 11 22:32 /dev/asmdiskc
brw-rw---- 1 grid asmadmin 8, 64 4月 11 22:32 /dev/asmdiskd
OK,大功告成。
在安装的过程中,到配置ASM磁盘的界面,默认情况下可能会看不到这几块盘。可以通过修改“发现路径”就可以了,比如在本例中将发现路径更改为:/dev/asm*