共计 3317 个字符,预计需要花费 9 分钟才能阅读完成。
系统环境 RedHat6.5 selinux and ipitables disabled
所需主机:网卡 所装软件
vm5 eth0:172.25.254.5 scsi-target-utils
eth1:172.25.254.15
vm6 eth0:172.25.254.6 iscsi-initiator-utils
device-mapper-multipath
1. 给主机 vm5 添加一块网卡,配置其 IP,并添加一块硬盘通过 iscsi 服务用作 vm6 主机的远程存储
[root@vm5 ~]# yum install scsi-target-utils -y
[root@vm5 ~]# vim /etc/tgt/targets.conf
38 <target iqn.2015-07.com.example:server.target1>
39 backing-store /dev/vda
40 initiator-address 172.25.254.6
41 </target>
42
[root@vm5 ~]# /etc/init.d/tgtd start
Starting SCSI target daemon: [OK]
2. 切换到 vm6 主机,iscsi 配置
[root@vm6 ~]# yum install Iscsi-initiator-utils device-mapper-multipath -y
[root@vm6 ~]# iscsiadm -m discovery -t st -p 172.25.254.5
[root@vm6 ~]# iscsiadm -m node -l
[root@vm6 ~]# iscsiadm -m discovery -t st -p 172.25.254.15
[root@vm6 ~]# iscsiadm -m node -l
3.DM 配置
配置文件模板:
#/usr/share/doc/device-mapper-multipath-0.4.9/multipath.conf
[root@vm6 ~]# mpathconf –enable #生成主配置文件, 并且会自动启用 multipathd.
[root@vm6 ~]# vim /etc/multipath.conf
blacklist {
devnode “vda” #禁止使用 /dev/vda 设备
}
defaults {
user_friendly_names yes
udev_dir /dev #生成 udev 设备节点的目录, 默认值为 /dev。
path_grouping_policy failover #failover 为主备模式; multibus 为负载均衡模式
failback immediate #指定立即恢复到包含活跃路径的最高级别路径族群
no_path_retry fail #这个属性的数字值指定系统在禁用队列前应该试图使用失败的路径的次数.fail 值表明立即失败, 无需排队。
}
[root@vm6 ~]# /etc/init.d/multipathd start
[root@vm6 ~]# cat /proc/partitions
major minor #blocks name
8 0 8388608 sda
8 1 512000 sda1
8 2 7875584 sda2
253 0 7036928 dm-0
253 1 835584 dm-1
8 16 8388608 sdb
8 32 8388608 sdc
253 2 8388608 dm-2
[root@vm6 ~]# multipath -l
mpathb (1IET 00010001) dm-2 IET,VIRTUAL-DISK
size=8.0G features=’0′ hwhandler=’0′ wp=rw
|-+- policy=’round-robin 0′ prio=0 status=active
| `- 2:0:0:1 sdb 8:16 active undef running
`-+- policy=’round-robin 0′ prio=0 status=enabled
`- 3:0:0:1 sdc 8:32 active undef running
可以看到 sdb 和 sdc 两条链路复合成一条链路 mpatha, 此为 Failover(主备)情况, 当你 mpatha 设备读写时, 处于 active 状态的 sdb 链路有数据流, 而处于 enabled 状态的 sdc 链路无数据流; 当 sdb 链路出现问题时, 才会切换到 sdc 链路上。
4. 测试
安装 sysstat 监控个通道流量
[root@vm6 ~]# yum install -y sysstat
[root@vm6 ~]# mount /dev/mapper/mpathb /mnt
[root@vm6 ~]# cd /mnt/
[root@vm6 mnt]# dd if=/dev/zero of=bigfile bs=1M count=1000
[root@vm6 mnt]# iostat -k 2
如果成功你会发现, 当断开链路 sdb 时, 等待片刻, 会自动切换到链路 sdc 上, 并不会造成写
入失败。
手动切换模式:(如果需要永久生效直接修改 multipath.conf, 并重新 reload)
[root@vm6 mnt]# multipath -F # 刷新所有的多路径设备映射
[root@vm6 mnt]# multipath -p multibus -v0 # 切换成负载均衡模式
[root@vm6 mnt]# multipath -l
mpatha (1IET
00010001) dm-0 IET,VIRTUAL-DISK
size=2.0G features=’0′ hwhandler=’0′ wp=rw
`-+- policy=’round-robin 0′ prio=1 status=active
|- 2:0:0:1 sdb 8:0 active ready running
`- 3:0:0:1 sdc 8:16 active ready running
如果成功你会发现它会根据轮叫方式调度链路 sdb 和 sdc, 从而实现负载均衡。
————————————– 分割线 ————————————–
CentOS 6.4 挂载 iSCSI 网络存储 http://www.linuxidc.com/Linux/2014-01/95130.htm
基于 RHCS+iSCSI+CLVM 实现 Web 服务的共享存储集群架构 http://www.linuxidc.com/Linux/2013-05/84888.htm
Linux 环境 iSCSI 存储及多路径功能配置 http://www.linuxidc.com/Linux/2013-05/84635.htm
构建基于 IP SAN 的 iSCSI 存储系统 http://www.linuxidc.com/Linux/2013-05/84570.htm
iSCSI 连接不上解决 http://www.linuxidc.com/Linux/2013-01/78462.htm
Citrix XenServer 中安装 CentOS 6.0 并配置 iSCSI 服务 http://www.linuxidc.com/Linux/2013-01/78461.htm
CentOS 5.3 使用 iSCSI 挂载存储磁盘柜 http://www.linuxidc.com/Linux/2011-01/31529.htm
带你 3 步快速掌握 iSCSI 搭建 http://www.linuxidc.com/Linux/2014-09/106853.htm
————————————– 分割线 ————————————–
本文永久更新链接地址:http://www.linuxidc.com/Linux/2015-08/121956.htm