UDEV ASMDisk 配置
因为Oracle 不出支持 Redhat Enterprise 6 系列的 ASMLib,所以我们可以改为 Udev 的方式配置ASMDisk,详细如下:优先使用udev 的方式配置ASM存储的块设备信息。
1.确认udev包已安装
# rpm -qa | grep udev
udev-147-2.40.el6.x86_64
2.获得硬盘WWID系统信息
(1)Redhat Enterprise Linux 5 用如下命令
# /sbin/scsi_id -g -u -s /dev/sdb
1ATA_VBOX_HARDDISK_VBaef9fa71-c32978c8
# /sbin/scsi_id -g -u -s /dev/sdc
1ATA_VBOX_HARDDISK_VB50124785-6ee5af0b
(2)Redhat Enterprise Linux 6 用如下命令
# /sbin/scsi_id -g -u /dev/sdb
1ATA_VBOX_HARDDISK_VBaef9fa71-c32978c8
# /sbin/scsi_id -g -u /dev/sdc
1ATA_VBOX_HARDDISK_VB50124785-6ee5af0b
3.对/dev/sdb 4G的硬盘分2个主分区,每个区2G,以实现OCR信息的冗余
# fdisk /dev/sdb
4.对/dev/sdc 8G的硬盘分4个逻辑个,每个区2G,以存储数据文件
# fdisk /dev/sdc
5. 配置udev配置文件
重要:每个配置文件一行为一条规则,并且,(逗号)与下一个关键词之间有空格。
# cd /etc/udev/rules.d/
# vi 99-oracle-asmdisk.rules
(1)Redhat Enterprise Linux 5 用如下参数
KERNEL=="sd?", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -s %p", RESULT=="1ATA_VBOX_HARDDISK_VBaef9fa71-c32978c8", NAME="asm-ocr%n", OWNER="grid", GROUP="asmdba", MODE="0660"
KERNEL=="sd?", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -s %p", RESULT=="1ATA_VBOX_HARDDISK_VB50124785-6ee5af0b", NAME="asm-data%n", OWNER="grid", GROUP="asmdba", MODE="0660"
(2)Redhat Enterprise Linux 6 用如下参数
KERNEL=="sd?", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u /dev/$name", RESULT=="1ATA_VBOX_HARDDISK_VBaef9fa71-c32978c8", NAME="asm-ocr%n", OWNER="grid", GROUP="asmdba", MODE="0660"
KERNEL=="sd?", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u /dev/$name", RESULT=="1ATA_VBOX_HARDDISK_VB50124785-6ee5af0b", NAME="asm-data%n", OWNER="grid", GROUP="asmdba", MODE="0660"
6. 确认配置正常,块设备的权限正确
# cd /dev/
# ls -l asm*
brw-rw---- 1 grid asmdba 8, 37 Jan
8 10:36 asm-data5
brw-rw---- 1 grid asmdba 8, 38 Jan
8 10:36 asm-data6
brw-rw---- 1 grid asmdba 8, 39 Jan
8 10:36 asm-data7
brw-rw---- 1 grid asmdba 8, 40 Jan
8 10:36 asm-data8
brw-rw---- 1 grid asmdba 8, 17 Jan
8 10:36 asm-ocr1
brw-rw---- 1 grid asmdba 8, 18 Jan
8 10:36 asm-ocr2
后面的安装grid 和 asmca 的时候,指定使用 /dev/asm* 这些设备信息即可。
grid 安装指定使用 udev 配置的块设备,如下图:
grid 用户执行asmca 配置磁盘组信息,如下图:
[ 本帖最后由 铁钉 于 2012-1-9 12:43 编辑 ] 谢谢liu 谢谢铁钉 学习,有空我自己实践一下,谢谢!
回复 1# 的帖子
Good! 谢谢,动手是最好的方式! 给一个Oracle-Base 上udev 配置的Demohttp://oracle-base.com/articles/linux/UdevScsiRulesConfigurationInOracleLinux5and6.php 不错 ,有多路径的话 怎么搞 ,要先聚合再使用虚拟设备udev吗 既然使用UDEV绑定出来的也是BLOCK设备,那是否意味着ASM也能直接使用原始硬盘? 环境vbox 4.1.4, rhel 5 在/dev下有sda,sdb,sdc
但运行这命令没有任何提示
# /sbin/scsi_id -g -u -s /dev/sdb
#
没有任何提示,为什么? 你的 /dev/sdb 是 vbox 虚拟的Virtual shared Disk 吗?
cat /proc/scsi/scsi
贴出以上输出内容 # cat /proc/scsi/scsi
Attached devices:
Host: scsi0 Channel: 00 Id: 00 Lun: 00
Vendor: ATA Model: VBOX HARDDISK REV: 1.0
Type: Direct-Access ANSI SCSI revision:05
Host: scsi1 Channel: 00 Id: 00 Lun: 00
Vendor: ATA Model: VBOX HARDDISK REV: 1.0
Type: Direct-Access ANSI SCSI revision:05
#
回复 11# 的帖子
试一下:su - root
/sbin/scsi_id -g -u -s /block/sdb The "-s" option makes the paths relative to the "/sys" directory.
用/sbin/scsi_id -g -u -s /block/sdb就可以了。但/sbin/scsi/scsi_id -g -u -s /dev/sdb还是不行,为什么你可以呢? /sbin/scsi/scsi_id -g -u /dev/sdb 去掉-s,这样也不行 多谢楼主的帖子,我是安装grid时到create asm group看不到磁盘,还以为用udev没有配置对,搞了一天,看了你的帖子才醒悟要指定asm disk的路径。 一般都是/sbin/scsi/scsi_id -g -u /block/sdb(REDHAT 5), /sbin/scsi/scsi_id -g -u /dev/sdb(REDHAT 6)。
多路径的话,linux 先device-mapper聚合路径。
[ 本帖最后由 orafans 于 2012-3-20 20:03 编辑 ] # uname -a
Linux www.sqd.cn 2.6.32-300.11.1.el5uek #1 SMP Wed Mar 7 09:55:50 EST 2012 x86_64 x86_64 x86_64 GNU/Linux
vmware 需在.vmx文件中加参数 disk.EnableUUID = "TRUE"
# /sbin/scsi_id -g -u -s /block/sdf
36000c29bddd1befab579c4af70da4b18
# /sbin/scsi_id -g -u -s /block/sdg
36000c2931b1abe63ab78404e7783deac
KERNEL=="sd*",BUS=="scsi",PROGRAM=="/sbin/scsi_id -g -u -s %p",RESULT=="36000c29bddd1befab579c4af70da4b18",RUN+="/bin/raw /dev/raw/raw3 %N",NAME="asm-ocr",OWNER="grid",GROUP="asmdba",MODE="0660"
KERNEL=="sd*",BUS=="scsi",PROGRAM=="/sbin/scsi_id -g -u -s %p",RESULT=="36000c2931b1abe63ab78404e7783deac",RUN+="/bin/raw /dev/raw/raw4 %N",NAME="asm-votingdisk",OWNER="grid",GROUP="asmdba",MODE="0660"
# ls /dev/asm-ocr;ls /dev/asm-votingdisk
/dev/asm-ocr
/dev/asm-votingdisk
[ 本帖最后由 26856649 于 2012-5-2 09:39 编辑 ]
VMWARE+udev+ASM共享
cmdpath=path;E:\vmware8_xp510.com
#进入共享磁盘目录 安装时ocr过小 会提示小于1773M
vmware-vdiskmanager.exe -c -s 2Gb -a lsilogic -t 2 sharedisk1.vmdk
vmware-vdiskmanager.exe -c -s 2Gb -a lsilogic -t 2 sharedisk2.vmdk
vmware-vdiskmanager.exe -c -s 2Gb -a lsilogic -t 2 sharedisk3.vmdk
vmware-vdiskmanager.exe -c -s 2Gb -a lsilogic -t 2 sharedisk4.vmdk
#调整磁盘大小
# vmware-vdiskmanager -x 2Gb "asm-ocr1.vmdk"
打开虚拟机添加以上磁盘,都设为scsi1
修改 Red Hat Enterprise Linux 5 64-bit.vmx
disk.EnableUUID = "TRUE"
disk.locking = "FALSE"
scsi1.SharedBus = "Virtual"
scsi2.SharedBus = "Virtual"
diskLib.dataCacheMaxSize = "0"
diskLib.dataCacheMaxReadAheadSize = "0"
diskLib.dataCacheMinReadAheadSize = "0"
diskLib.dataCachePageSize = "4096"
diskLib.maxUnsyncedWrites = "0"
1.确认udev包已安装
# rpm -qa | grep udev
udev-147-2.40.el6.x86_64
2.获得硬盘WWID系统信息
/sbin/scsi_id -g -u -s /block/sdb # 36000c298271a5d43b60e7ef5c8b7c83b
/sbin/scsi_id -g -u -s /block/sdc # 36000c29891d7dacb333d90464e850669
/sbin/scsi_id -g -u -s /block/sdd # 36000c29b3776ac6d3aa0222f83775e26
/sbin/scsi_id -g -u -s /block/sde # 36000c29d209cf3b124b8f7117c2c5ce2
#分区,本例中各硬盘均只分了一个主分区
5. 配置udev配置文件
重要:每个配置文件一行为一条规则,并且,(逗号)与下一个关键词之间有空格。
cd /etc/udev/rules.d/
vim 99-oracle-asmdisk.rules
KERNEL=="sd?1",BUS=="scsi",PROGRAM=="/sbin/scsi_id -g -u -s %p",RESULT=="36000c298271a5d43b60e7ef5c8b7c83b",RUN+="/bin/raw /dev/raw/raw1 %N",NAME="asm-data1",OWNER="grid",GROUP="asmdba",MODE="0660"
KERNEL=="sd?1",BUS=="scsi",PROGRAM=="/sbin/scsi_id -g -u -s %p",RESULT=="36000c29891d7dacb333d90464e850669",RUN+="/bin/raw /dev/raw/raw2 %N",NAME="asm-data2",OWNER="grid",GROUP="asmdba",MODE="0660"
KERNEL=="sd?1",BUS=="scsi",PROGRAM=="/sbin/scsi_id -g -u -s %p",RESULT=="36000c29b3776ac6d3aa0222f83775e26",RUN+="/bin/raw /dev/raw/raw3 %N",NAME="asm-data3",OWNER="grid",GROUP="asmdba",MODE="0660"
KERNEL=="sd?1",BUS=="scsi",PROGRAM=="/sbin/scsi_id -g -u -s %p",RESULT=="36000c29d209cf3b124b8f7117c2c5ce2",RUN+="/bin/raw /dev/raw/raw4 %N",NAME="asm-data4",OWNER="grid",GROUP="asmdba",MODE="0660"
6. 确认配置正常,块设备的权限正确
ls -l /dev/asm*
[ 本帖最后由 26856649 于 2012-5-2 09:39 编辑 ] redhat 6.5 使用多路径聚合,/dev/mapper下的能否udev配置呢? 同上的问题,我也没找到/dev/mapper/下的东西能绑定成功, 最后还是
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="360002ac0000000000000000600012da1", NAME="asm-disk
c", OWNER="grid", GROUP="asmadmin", MODE="0660"
页:
[1]