admin 管理员组文章数量: 887021
2024年3月9日发(作者:数的笔顺笔画顺序)
S
T
A
R
S
I
N
O
LINUX multi-path安装配置
测试报告
RenYang
2013.12
第 1页 共 11页
目 录
一、测试环境摘要.................................................... 4
二、检查安装multipath .............................................. 4
2.1检查是否已安装............................................... 4
2.2若未安装则安装............................................... 4
2.2.1搭建yum源 ............................................. 4
2.2.2通过yum源安装并自启动 ................................. 4
2.3核查安装是否成功............................................. 5
2.4设为开机自动启动............................................. 5
三、配置multipath .................................................. 5
3.1创建配置脚本................................................. 5
3.2赋予脚本执行权限............................................. 7
3.3执行脚本..................................................... 8
3.4确认配置结果................................................. 8
3.5正常使用磁盘................................................. 9
四、测试............................................................ 9
4.1负载均衡测试................................................. 9
4.2路径切换测试................................................. 9
五、常用操作命令................................................... 10
5.1启停mulitipath服务......................................... 10
5.2删除现有路径................................................ 10
5.3格式化路径(重新扫描)...................................... 10
5.4查看多路径.................................................. 10
5.5重载multipathd服务......................................... 10
5.6查看所有磁盘wwid ........................................... 10
5.7显示当前device mapper信息.................................. 11
第 2页 共 11页
说明:
本文档中安装部署部分所提到的步骤都在测试环境中通过。可以作为安装部署参考手册。但因环境不同而无法保证在其他环境中准确无误(配置请按照特定环境自行修改)。
蓝色字体 — 命令行
绿色字体 — 脚本或输出结果
暗红字体 — 表示变量(可更改)
红色字体 — 需注意之处
# — root用户下执行
本文档仅供参考,建议按照官方手册安装配置。
第 3页 共 11页
一、测试环境摘要
FreeNAS模拟iSCSI存储并划分空间分配给Linux5系统
二、检查安装multipath
2.1检查是否已安装
[root@linux5 ~]# rpm -qa|grep mapper
5
5
5
5
2.2若未安装则安装
2.2.1搭建yum源
mkdir -p /mnt/yum
mount /dev/cdrom /mnt/yum
如果从ISO挂载,则使用如下命令:
mount -o loop -t iso9660 /tmp/Redhat_5.0_U6_ /mnt/yum
echo "[yum]">/etc/.d/
echo "name=yum">>/etc/.d/
echo "baseurl=file:///mnt/yum/Server">>/etc/.d/
echo "enabled=1">>/etc/.d/
echo "gpgcheck=1">>/etc/.d/
echo
"gpgkey=file:///mnt/yum/RPM-GPG-KEY-redhat-release">>/etc/.d/
2.2.2通过yum源安装并自启动
yum –y install device-mapper device-mapper-multipath
第 4页 共 11页
2.3核查安装是否成功
[root@linux5 ~]# lsmod |grep dm_multipath
dm_multipath 56921 0
scsi_dh 42177 1 dm_multipath
dm_mod 101393 4 dm_mirror,dm_multipath,dm_raid45,dm_log
如果模块没有加载成功请使用下列命初始化DM,或重启系统:
modprobe dm-multipath
modprobe dm-round-robin
service multipathd start
multipath –v2
2.4设为开机自动启动
chkconfig --level 2345 multipathd on
三、配置multipath
3.1创建配置脚本
Multipath的配置文件是/etc/,为了快速进行配置,可直接在linux系统任意目录创建一个脚本并将以下内容复制到脚本中:
cp /etc/ /etc/
echo 'blacklist {
devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
devnode "^hd[a-z]"
devnode "^cciss!c[0-9]d[0-9]*"
devnode "^sd[a-b]"
}
defaults {
udev_dir /dev
polling_interval 10
failback immediate
no_path_retry 5
rr_min_io 100
path_checker tur
第 5页 共 11页
selector "round-robin 0"
path_grouping_policy failover
user_friendly_names yes
}
multipaths {'>/etc/
for pv in `cat /proc/partitions|awk '{print $4}'|grep sd|grep [a-z]$`;do
echo "`scsi_id -g -u -s /block/$pv`">>$$.wwid; done
for wwid in `awk 'NF' $$.wwid|sort|uniq|awk '{print $1}'`;do
echo "Found a device:"
for pv in `cat /proc/partitions|awk '{print $4}'|grep sd|grep
[a-z]$`;do
if [[ `scsi_id -g -u -s /block/$pv` = $wwid ]];then echo " $pv:
`scsi_id -g -u -s /block/$pv`";fi
done
stop=0
while [[ $stop -lt 1 ]];do
read -p "Whether to add $wwid? [y,n,q] (y) " add
if [[ -z "$add" || "$add" = "y" ]];then
echo " multipath {">>/etc/
echo " wwid $wwid">>/etc/
read -p "alias: (none) " alias
if [[ -n "$alias" ]];then echo " alias
$alias">>/etc/;fi
read -p "gid: (none) " gid
if [[ -n "$gid" ]];then echo " gid
$gid">>/etc/;fi
read -p "uid: (none) " uid
if [[ -n "$uid" ]];then echo " uid
$uid">>/etc/;fi
read -p "mode: [0600,none] (none) " mode
if [[ $mode = "0600" ]];then echo " mode
$mode">>/etc/;fi
echo " }">>/etc/
stop=1
else if [[ $add = "n" ]];then stop=1
else if [[ $add = "q" ]];then rm -fr $$.wwid;break 2;
fi fi fi
done
done
echo "}">>/etc/
rm -fr $$.wwid
第 6页 共 11页
备注:
1、红色字体部分根据现场环境进行修改;
2、也可以按wwid或device进行排除(示例如下):
➢ 按wwid方式:
blacklist {
wwid 26353900f02796769
}
➢ 按device方式:
blacklist {
device {
vendor "IBM"
product "3S42" #DS4200 Product 10
}
device {
vendor "HP"
product "*"
}
}
3、 也可以选择性使用blacklist_exceptions进行排除:
例如:如果有大量设备,但只有一个需要多路径(WWID为 6),此时不需要将想要使用多路径的设备之外的每个设备单独加入黑名单,只需要将所有设备都加入黑名单,然后只允许想要使用多路径的设备即可:
blacklist {
wwid "*"
}
blacklist_exceptions {
wwid "6"
}
3.2赋予脚本执行权限
chmod +x
第 7页 共 11页
3.3执行脚本
[root@linux5 ~]# ./
Found a device:
sdd: 3300000001f548fca
Whether to add 3300000001f548fca? [y,n,q] (y) 回车
alias: (none) test1
gid: (none) 1300
uid: (none) 1101
mode: [0600,none] (none) 0600
略去N字……
备注:根据提示操作即可,alias、gid、uid、mode非强制要求,根据具体环境及需求选择。
3.4确认配置结果
1、启动服务:
/etc/init.d/multipathd restart
2、查看多路径:
[root@linux5 mapper]# multipath -ll
test2 (330000000c2112572) dm-0 FreeBSD,iSCSI DISK
[size=2.0G][features=1 queue_if_no_path][hwhandler=0][rw]
_ round-robin 0 [prio=1][active]
_ 31:0:0:0 sdc 8:32 [active][ready]
test1 (3300000001f548fca) dm-1 FreeBSD,iSCSI DISK
[size=100G][features=1 queue_if_no_path][hwhandler=0][rw]
_ round-robin 0 [prio=1][active]
_ 32:0:0:0 sdd 8:48 [active][ready]
3、其他核查方式
✓ 会在/dev/mapper/目录下多出类似mpath0、mpath1之类设备(如果指定了alias则以别名方式显示)
✓ 用fdisk -l命令可以看到多路径软件创建的磁盘,如/dev/dm-[0-3]等
第 8页 共 11页
3.5正常使用磁盘
要使用多路径生成的磁盘直接操作/dev/mapper/目录下的磁盘就便可。
在对多路径软件生成的磁盘进行分区之前最好运行一下pvcreate命令:
pvcreate /dev/mapper/test1
fdisk /dev/mapper/test1
备注:如果磁盘数目较多,可采用for循环操作:
for disk in ocrvote1 ocrvote2 oradata1 oradata2;do
pvcreate /dev/mapper/$disk
done
四、测试
4.1负载均衡测试
1、 使用dd命令来对设备进行写操作,并同时通过iostat来查看I/0状态:
dd if=/dev/zero of=/dev/mapper/test1
2、 另开启一个终端令查看IO情况:
iostat 10 10
说明:当对/dev/mapper/test1读写时,实际上是对其所包含的所有设备(当前active)的写过程。
4.2路径切换测试
拔掉服务器或存储任意一根光纤跳线,稍等一会通过multipath -ll查看路径状态。
第 9页 共 11页
五、常用操作命令
5.1启停mulitipath服务
/etc/init.d/multipathd start // 启动
/etc/init.d/multipathd start // 停止
/etc/init.d/multipathd restart // 重启
5.2删除现有路径
multipath -F
5.3格式化路径(重新扫描)
multipath -v2
multipath -v3
备注:以上命令任选其一,-v3输出更详细。
5.4查看多路径
multipath -ll
5.5重载multipathd服务
当更新/etc/文件后,必须手动让 multipathd 守护进程重新载入该文件。
service multipathd reload
5.6查看所有磁盘wwid
for i in `cat /proc/partitions|awk '{print $4}'|grep sd|grep [a-z]$`;
do echo "$i: `scsi_id -g -u -s /block/$i`";done
第 10页 共 11页
5.7显示当前device mapper信息
dmsetup ls|sort
dmsetup info
dmsetup status
第 11页 共 11页
版权声明:本文标题:linux多路径multipath安 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/free/1709916384h550459.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论