天天看点

多路径配置udev_学习笔记:Linux多路径配置 multipath实现设备用户组绑定详细设置...

天萃荷净

Linux多路径软件配置,通过multipath实现设备用户组绑定详细设置

现在的Linux系统中,很多都会使用系统自带的multipath多路径软件,在以前的版本中,我们一般通过multipath+udev或者multipath+rc.local来实现多路径和权限设置,而在redhat 5.3-5.11的版本中multipath就直接可以实现多路径聚合、设备持久化、用户组设置

1.查看Linux操作系统版本

[[email protected] dev]# uname -r

2.6.39-300.26.1.el5uek

[[email protected] dev]# more /etc/issue

Oracle Linux Server release 5.9

Kernel \r on an \m

fdisk记录

[[email protected] dev]# fdisk -l

…………

Disk /dev/sdh: 134.2 GB, 134217728000 bytes

255 heads, 63 sectors/track, 16317 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System

Disk /dev/sdi: 33.5 GB, 33554432000 bytes

64 heads, 32 sectors/track, 32000 cylinders

Units = cylinders of 2048 * 512 = 1048576 bytes

Device Boot Start End Blocks Id System

2.安装多路径multipath包

检查安装multipath相关包(该版本系统默认安装)

[[email protected] dev]# rpm -aq|grep mapper

device-mapper-multipath-libs-0.4.9-56.0.3.el5

device-mapper-event-1.02.67-2.el5

device-mapper-1.02.67-2.el5

device-mapper-multipath-0.4.9-56.0.3.el5

3.获取硬盘的wwid值

[[email protected] dev]# /sbin/scsi_id -g -u -s /block/sdh

14f504e46494c45527049754962662d395751372d68356743

[[email protected] dev]# /sbin/scsi_id -g -u -s /block/sdi

14f504e46494c4552484d486249782d464471382d354f4b58

获取uid和gid

[[email protected] dev]# id grid

uid=1100(grid) gid=54321(oinstall) groups=54321(oinstall),1020(asmadmin),1021(asmdba)

multipath.conf配置

[[email protected] dev]# vi /etc/multipath.conf

defaults {

user_friendly_names no

queue_without_daemon no

flush_on_last_del yes

max_fds max

}

blacklist {

devnode "^hd[a-z]"

devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"

devnode "^cciss.*"

}

devices {

device {

vendor "OPNFILER "

product "LUN"

path_grouping_policy group_by_prio

features "3 queue_if_no_path pg_init_retries 50"

getuid_callout "/sbin/scsi_id -g -u -s /block/%n"

path_checker tur

path_selector "round-robin 0"

hardware_handler "1 alua"

failback immediate

rr_weight uniform

rr_min_io 128

}

}

multipaths {

multipath {

wwid 14f504e46494c45527049754962662d395751372d68356743 #wwid

alias oracleplus128

uid 1100 #uid

gid 1020 #gid

}

multipath {

wwid 14f504e46494c4552484d486249782d464471382d354f4b58 #wwid

alias oracleplus32

uid 1100 #uid

gid 1020 #gid

}

}

4.启动multipath多路径软件

[[email protected] dev]# modprobe dm-multipath

[[email protected] dev]# modprobe dm-round-robin

[[email protected] dev]# chkconfig multipathd on

[[email protected] dev]# service multipathd start

Starting multipathd daemon: [ OK ]

[[email protected] dev]# multipath -F

[[email protected] dev]# multipath -v2

create: oracleplus128 (14f504e46494c45527049754962662d395751372d68356743) undef OPNFILER,VIRTUAL-DISK

size=125G features='0' hwhandler='0' wp=undef

`-+- policy='round-robin 0' prio=1 status=undef

`- 3:0:0:9 sdh 8:112 undef ready running

create: oracleplus32 (14f504e46494c4552484d486249782d464471382d354f4b58) undef OPNFILER,VIRTUAL-DISK

size=31G features='0' hwhandler='0' wp=undef

`-+- policy='round-robin 0' prio=1 status=undef

`- 3:0:0:10 sdi 8:128 undef ready running

5.查看生成多路径设备

注意设备名称、组、用户

[[email protected] dev]# ls -l /dev/mapper/oracleplus*

brw-rw---- 1 grid asmadmin 252, 2 Jan 7 21:21 /dev/mapper/oracleplus128

brw-rw---- 1 grid asmadmin 252, 3 Jan 7 21:21 /dev/mapper/oracleplus32

补充Linux 6.x中udev设置所属组和权限

对于linux 6.x,multipath不能设置磁盘所属组和权限,可以通过udev进行实现,类似配置如下

[[email protected] mapper]#cat 99-diskownership.rules

SUBSYSTEM!="block", GOTO="quickexit"

KERNEL!="dm-*", GOTO="quickexit"

PROGRAM=="/sbin/dmsetup info -c --noheadings -o name -m %m -j %M"

RESULT=="*ocr*", OWNER="grid", GROUP="oinstall", MODE="0660"

RESULT=="*oradata", OWNER="grid", GROUP="oinstall", MODE="0660"

RESULT=="*backup", OWNER="grid", GROUP="oinstall", MODE="0660"

LABEL="quickexit"

其中RESULT和dm的别名向匹配

--------------------------------------ORACLE-DBA----------------------------------------

最权威、专业的Oracle案例资源汇总之学习笔记:Linux多路径配置 multipath实现设备用户组绑定详细设置