ISCSI数据盘的多路径配置

本文分享自天翼云开发者社区《ISCSI数据盘的多路径配置》,作者:w****n

  • 多路径出现的背景

多路径,就是说,主机到存储可以有多条路径可以选择。主机到存储之间的IO由多条路径可以选择。每个主机到所对应的存储可以经过几条不同的路径,如果是同时使用的话,I/O流量如何分配?其中一条路径坏掉了,如何处理?从在操作系统的角度来看,每条路径,操作系统会认为是一个实际存在的物理盘,但实际上只是通向同一个物理盘的不同路径而已。而multipath软件正是为了解决这些问题而出现的,multipath提供了部署iscsi设备高可用功能的基础。

  • 多路径实现的功能

(1)故障的切换和恢复

(2)IO流量的负载均衡

(3)磁盘的虚拟化

  • multipath配置文件

multipath安装完成后,配置文件/etc/multipath.conf不存在,需要用户自己创建。安装完后会在/usr/share/doc/multipath-tools/examples 目录下生成multipath.conf.synthetic 模板文件可以将这个文件复制到/etc目录下并从命名为multipath.conf。可根据需求自行修改配置文件,在部署ceph-iscsi高可用方案时,相应的配置文件为

  • 关于wwid

多路径软件以块设备提供的scsi id为依据识别不同的路径,wwid中即包含了scsi id的信息每一个磁盘都有一个全球独一无二的编号(wwid),同一磁盘的不同路径其wwid相同 。可以通过dmsetupstatus查看;另外,可以在/etc/multipath/bindings中设置wwid的别名,如果在multipa.conf中也设置了别名,那么conf文件中的设置优先级更高。每一块一块iscsi磁盘对应一个wwid,与路径数目无关。

同时,需要在配置文件中修改开启别名功能,并重启multipathd服务。

配置成功后,multipath会自动识别路径,若未识别出,可尝试执行 multipath -v3 ,路径识别成功后可以看到两条状态为active ready running的路径,两条路径对应的别名为ligb-mpth2(策略为failover,也即主备)

如图所示为配置了两条路径的一个iscsi设备,设备为dm-0,路径有两条,对应/dev下新增的设备:

配置成功多路径以后,target中的每一块disk都会出现与网关数量相同的/dev路径,例如:配置了两个iscsi网关,并添加了一块disk,那么initiator登陆后会看到/dev下新增两个设备sdb与sdc,并且用blkid查看可以看到两者是有一样的uuid,并且同时只能mount一个设备,如果尝试同时挂载,会提示错误,同时从dmesg中可以看出报错信息是由于两者拥有duplicate的uuid。并且两者实际都是与/dev/dm-0所关联

  • multipath配置分析

(1)未配置multipath

场景:target配置了两个iscsi网关,提供一个2G的块设备;initiator端未配置多路径,在/dev下多出两个设备sdb与sdc,这两个设备可以进行分别的格式化与mount,但是不能同时操作,不然会报错(因为实际二者就是同一个iscsi设备),挂载成功后其中一个设备显示挂载点,而另一个没有。这种情况下若尝试multipath -v2,会提示ignoring map的错误

(2)已配置multipath

场景:target配置了两个iscsi网关,提供一个2G的块设备;initiator端配置多路径,在/dev下多出两个设备sdb与sdc,并且他们对应的是同一个ligb-mpth2,这两个设备不可以进行格式化与mount.

若要使用此iscsi设备,那么需要直接操作ligb-mpth-2这个设备,并且mount后可以发现sdb与sdc都显示了挂载点

  • 查看路径负载

发现dm-0上的io与sdc路径上的io相同,说明此时选取的路径为sdc。(路径组策略为failover)

将路径组策略设置为multibus后再次查看,可以发现IO的流量被分散到了两条路径上,并且IO

同时查看路径状态,发现两条路径均处于active

  • 清除多路径

退出iscsi登录后,multipath仍然残留在lsblk中,需要执行multipath -F才能清除

相关推荐
G皮T5 天前
【弹性计算】弹性裸金属服务器和神龙虚拟化(一):功能特点
阿里云·云计算·云服务器·弹性服务器·弹性计算·裸金属服务器
G皮T5 天前
【弹性计算】弹性裸金属服务器和神龙虚拟化(二):适用场景
阿里云·云计算·虚拟化·云服务器·弹性计算·裸金属服务器·弹性裸金属服务器
HaoHao_0106 天前
阿里云的 ECS(Elastic Compute Service)实例
阿里云·云计算·实例·ecs·云服务器·优惠
HaoHao_0106 天前
阿里云ECS通用计算
阿里云·云服务器·优势·价格表
天翼云开发者社区10 天前
数字先锋 | 天翼云xDeepSeek,赋能东莞开启智慧政务新篇章!
人工智能·大模型·政务·云服务器·deepseek
HaoHao_01010 天前
如何将MySQL数据库迁移至阿里云
服务器·数据库·阿里云·云计算·云服务器·迁移
HaoHao_01012 天前
边缘安全加速(Edge Security Acceleration)
阿里云·云计算·云服务器·加速·dcdn
G皮T15 天前
【弹性计算】IaaS 和 PaaS 类计算产品
阿里云·云计算·paas·iaas·云服务器·弹性服务器·弹性计算
HaoHao_01019 天前
AWS AppFabric
服务器·云计算·aws·云服务器