单台机器模拟multipath

举报
snowofsummer 发表于 2021/12/15 17:56:13 2021/12/15
【摘要】 本文中在linux通过iscsi模拟存储多路径。#安装iscsi服务yum -y install targetcli#创建磁盘targetcli#创建设备/> cd /backstores/fileio/backstores/fileio> create disk01 /disk/disk01.img 10Gbackstores表示支持的存储对象的后端类型,主要由block:block类型存...

本文中在linux通过iscsi模拟存储多路径。

#安装iscsi服务

yum -y install targetcli
#创建磁盘
targetcli
#创建设备
/> cd /backstores/fileio
/backstores/fileio> create disk01 /disk/disk01.img 10G

backstores表示支持的存储对象的后端类型,主要由

block:block类型存储对象适用于本地块设备和逻辑设备
fileio:fileio类型存储对象适用于存储在本地磁盘上的常规文件(镜像文件,稀疏文件)
pscsi:pscsi类型存储对象适用于直接通过SCSI命令访问的资源
ramdisk:ramdisk类型存储对象适用于临时缓存设备,支持多session


#创建目标

 cd /iscsi
#配置ISCSITarget命名(iqn)
/iscsi> create iqn.2021-10.snow.com:st01
#创建lun
/iscsi> cd iqn.2021-10.snow.com:st01/tpg1/luns
/iscsi/iqn.20...t01/tpg1/luns> create /backstores/fileio/disk01
#创建ACL允许ISCSI客户机连接:(输入客户端的InitiatorName)
cd /iscsi/iqn.2021-10.snow.com:st01/tpg1/acls
/iscsi/iqn.20...t01/tpg1/acls> create iqn.1994-05.com.redhat:e087af342dee
#保存配置
/> saveconfig


systemctl enable target
systemctl start  target



#安装客户端

yum -y install iscsi-initiator-utils
cat /etc/iscsi/initiatorname.iscsi
InitiatorName=iqn.1994-05.com.redhat:e087af342dee

systemctl enable iscsi
systemctl start iscsi

发现磁盘:

#发现
 iscsiadm -m discovery -t st -p 192.168.0.15
192.168.0.15:3260,1 iqn.2021-10.snow.com:st01
#登录
iscsiadm -m node -T iqn.2021-10.snow.com:st01 -p 192.168.0.15:3260 -l

#服务端添加磁盘
cd /backstores/fileio
/backstores/fileio> create disk02 /disk/disk02.img 20G
/backstores/fileio> cd /iscsi/iqn.2021-10.snow.com:st01/tpg1/luns/
/iscsi/iqn.20...t01/tpg1/luns> create /backstores/fileio/disk02

#客户端重新扫描磁盘:(发现20G磁盘)
[root@hecs-66a2 host2]# lsscsi
[2:0:0:0]    disk    LIO-ORG  disk01           4.0   /dev/sda
##[2:0:0:0]中的数字2,host2代表的主机号。
[root@hecs-66a2 host2]# echo "- - -" > /sys/class/scsi_host/host2/scan
[root@hecs-66a2 host2]# lsblk
NAME   MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda      8:0    0  10G  0 disk
sdb      8:16   0  20G  0 disk
vda    253:0    0  40G  0 disk
└─vda1 253:1    0  40G  0 part /


#多路径软件安装

yum install device-mapper-multipath -y
lsmod |grep multipath
modprobe dm-multipath
modprobe dm-round-robin
lsmod |grep multipath
#生成默认配置文件
/sbin/mpathconf --enable
#修改配置文件规则(注释find_multipaths)
sed -i 's/find_multipaths/#find_multipaths/'   /etc/multipath.conf
#否则单条路径磁盘,聚合失败。
#find_multipaths如置为yes,则将为3种场景创建多路径设备(不在黑名单的两个路径的wwid相同;用户手动强制创建;一个路径的wwid与之前已经创建的多路径设备相同)
#user_friendly_names:如为yes,则用/etc/multipath/bindings中的设置命名;
#加载路径配置文件
multipath -r
#查看聚合路径信息
multipath -ll
#启动多路径软件
systemctl enable  multipathd.service
systemctl restart multipathd.service

#常用命令参考:
/usr/lib/udev/scsi_id -g -u /dev/sda(手动检查wwid)
multipath -r (修改multipath.conf配置文件之后重新加载)
multipath -ll (查看多路径状态)
multipath -v2 (格式化路径,检测路径,合并路径)
multipath -v3 (查看多路径详情blacklist、whitelist和设备wwid)
multipath -F (删除现有链路)


多路径测试:

添加多个ip地址:
ip a a 10.10.10.10/24 dev eth0
ip a a 20.20.20.20/24 dev eth0
扫描每条路径:
iscsiadm -m discovery -t st -p 10.10.10.10
iscsiadm -m node -T iqn.2021-10.snow.com:st01 -p 10.10.10.10:3260 -l
iscsiadm -m discovery -t st -p 20.20.20.20
iscsiadm -m node -T iqn.2021-10.snow.com:st01 -p 20.20.20.20:3260 -l
显示多路径清空:
mpathb (36001405a8111ea8e7e54c8fb25613092) dm-1 LIO-ORG ,disk02
size=20G features='0' hwhandler='0' wp=rw
`-+- policy='service-time 0' prio=0 status=active
  |- 2:0:0:1 sdb 8:16 active undef running
  |- 3:0:0:1 sdd 8:48 active undef running
  `- 4:0:0:1 sdf 8:80 active undef running
mpatha (360014054170ebd76f8b4cd69600e1ba9) dm-0 LIO-ORG ,disk01
size=10G features='0' hwhandler='0' wp=rw
`-+- policy='service-time 0' prio=0 status=active
  |- 2:0:0:0 sda 8:0  active undef running
  |- 3:0:0:0 sdc 8:32 active undef running
  `- 4:0:0:0 sde 8:64 active undef running


###############

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。