阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

DM多路径存储

413次阅读
没有评论

共计 3253 个字符,预计需要花费 9 分钟才能阅读完成。

什么是 multipath?

普通的电脑主机都是一个硬盘挂接到一个总线上, 这里是一对一的关系。而到了有光纤组成的 SAN 环境, 由于主机和存储通过了光纤交换机连接, 这样的话, 就构成了多对多的关系。也就是说, 主机到存储可以有多条路径可以选择。主机到存储之间的 IO 由多条路径可以选择。既 然, 每个主机到所对应的存储可以经过几条不同的路径, 如果是同时使用的话,I/O 流量如何分配? 其中一条路径坏掉了, 如何处理? 还有在操作系统的角度来 看, 每条路径, 操作系统会认为是一个实际存在的物理盘, 但实际上只是通向同一个物理盘的不同路径而已, 这样是在使用的时候, 就给用户带来了困惑。多路径软件就是为了解决上面的问题应运而生的。

多路径的主要功能就是和存储设备一起配合实现如下功能:

1) 故障的切换和恢复

2) IO 流量的负载均衡

3) 磁盘的虚拟化

DM 多路径存储

系统环境: RHEL6 x86_64 small install selinux and iptables disabled

主机规划:

主机网卡软件
station133eth0: 192.168.0.133
eth1: 192.168.0.132
scsi-target-utils
station28eth0: 192.168.0.28Iscsi-initiator-utils
device-mapper
device-mapper-multipath

可使用 DM-Multipath 提供:

•冗余

DM-Multipath 可在主动 / 被动配置中提供出错冗余。在主动 / 被动配置中, 只有一半的路径在每次 I/O 时都使用。如果 I/O 路径的任意元素 (电缆、交换机或者控制器) 出现故障, 就会将 DM-Multipath 切换到备用路径。

•改进性能

可将 DM-Multipath 配置为主动 / 主动模式, 其中将 I/O 以轮叫调度算法方式分布到所有路径中。在有些配置中,DM-Multipath 可在 I/O 路径中检测负载并动态重新平衡负载。

DM-Multipath 组件

组件
描述
dm-multipath 内核模式
为路径和路径组群重新指定 I / O 并支持出错冗余
mpathconf 命令
配置并启用设备器多路径
multipath 命令
列出并配置多路径设备。通常从 /etc/rc.sysinit 开始,还可以使用 udev 程序随时添加块设备,或者可用 initramfs 文件系统运行。
multipathd 守护进程
监视器路径,如果路径故障并返回,它可能会启动路径族群切换。可为多路径设备提供互动修改。对 /etc/multipathd.conf 文件的任何修改都必须启动它。
kpartx 命令
为设备中的分区生成设备映射器设备。这个命令对带 DM-MP 的 DOS 分区是很必要的,kpart 在其自身软件包中就存在,但 device-mapper-multipath 软件包要依赖它。

1. 软件安装
station133:
yum install scsi-target-utils -y
station28:
yum install Iscsi-initiator-utils ccs device-mapper device-mapper-multipath -y
2. ISCSI 配置
station133:
service tgtd start
tgtadm –lld iscsi –mode target –op new –tid 1 -T storage1
tgtadm –lld iscsi –mode logicalunit –op new –tid 1 –lun 1 -b /dev/xvdb1
tgtadm –lld iscsi –mode target –op bind –tid 1 -I ALL
station28:
service iscsid start
iscsiadm -m discovery -t st -p 192.168.0.133
iscsiadm -m node -T storage1 -p 192.168.0.133 -l
iscsiadm -m discovery -t st -p 192.168.0.132
iscsiadm -m node -T storage1 -p 192.168.0.132 -l
3. DM 配置
配置文件模板:
#/usr/share/doc/device-mapper-multipath-0.4.9/multipath.conf
你也可以使用:“mpathconf –enable”指令生成主配置文件, 并且会自动启用 multipathd.
vi /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 值表明立即失败, 无需排队。
}
#service multipathd start
当将 user_friendly_names 配置设定为 yes, 会将该多路径设备的名称设定为 mpathn。
当在 DM-Multipath 中添加新设备时, 这些新设备会位于 /dev 目录的两个不同位置:
/dev/mapper/mpathn 和 /dev/dm-n。
•/dev/mapper 中的设备是在引导过程中生成的。可使用这些设备访问多路径设备, 例如在生成逻辑卷时。
•所有 /dev/dm-n 格式的设备都只能是作为内部使用, 请不要使用它们。
# multipath -ll
mpatha (1IET00010001) 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 sda 8:0 active ready running
`-+- policy=’round-robin 0′ prio=1 status=enabled
`- 3:0:0:1 sdb 8:16 active ready running
注: 可以看到 sda 和 sdb 两条链路复合成一条链路 mpatha, 此为 Failover(主备)情况, 当你对 mpatha 设备读写时, 处于 active 状态的 sda 链路有数据流, 而处于 enabled 状态的 sdb 链路无数据流; 当 sda 链路出现问题时, 才会切换到 sdb 链路上。
4. 测试
用 dd 往磁盘读写数据, 然后用 iostat 观察各通道的流量和状态, 以判断 Failover 或负载均衡方式是否正常:
# dd if=/dev/zero of=/dev/mapper/mpatha
# iostat -k 2
如果成功你会发现, 当断开链路 sda 时, 等待片刻, 会自动切换到链路 sdb 上, 并不会造成写入失败。
手动切换模式:(如果需要永久生效直接修改 multipath.conf, 并重新 reload)
# multipath -F        # 刷新所有的多路径设备映射
# multipath -p multibus -v0 # 切换成负载均衡模式
# multipath -ll
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 sda 8:0 active ready running
`- 3:0:0:1 sdb 8:16 active ready running
如果成功你会发现它会根据轮叫方式调度链路 sda 和 sdb, 从而实现负载均衡。

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-20发表,共计3253字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19351
评论数
4
阅读量
7995620
文章搜索
热门文章
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见 zabbix!轻量级自建服务器监控神器在 Linux 的完整部署指南 在日常运维中,服务器监控是绕不开的...
飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛 NAS 中安装 Navidrome 音乐文件中文标签乱码问题解决、安装 FntermX 终端 问题背景 ...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
【开源神器】微信公众号内容单篇、批量下载软件

【开源神器】微信公众号内容单篇、批量下载软件

【开源神器】微信公众号内容单篇、批量下载软件 大家好,我是星哥,很多人都希望能高效地保存微信公众号的文章,用于...
免费领取huggingface的2核16G云服务器,超简单教程

免费领取huggingface的2核16G云服务器,超简单教程

免费领取 huggingface 的 2 核 16G 云服务器,超简单教程 前言 HuggingFace.co...
星哥带你玩飞牛NAS-13:自动追番、订阅下载 + 刮削,动漫党彻底解放双手!

星哥带你玩飞牛NAS-13:自动追番、订阅下载 + 刮削,动漫党彻底解放双手!

星哥带你玩飞牛 NAS-13:自动追番、订阅下载 + 刮削,动漫党彻底解放双手! 作为动漫爱好者,你是否还在为...
仅2MB大小!开源硬件监控工具:Win11 无缝适配,CPU、GPU、网速全维度掌控

仅2MB大小!开源硬件监控工具:Win11 无缝适配,CPU、GPU、网速全维度掌控

还在忍受动辄数百兆的“全家桶”监控软件?后台偷占资源、界面杂乱冗余,想查个 CPU 温度都要层层点选? 今天给...
从“纸堆”到“电子化”文档:用这个开源系统打造你的智能文档管理系统

从“纸堆”到“电子化”文档:用这个开源系统打造你的智能文档管理系统

从“纸堆”到“电子化”文档:用这个开源系统打造你的智能文档管理系统 大家好,我是星哥。公司的项目文档存了一堆 ...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
免费无广告!这款跨平台AI RSS阅读器,拯救你的信息焦虑

免费无广告!这款跨平台AI RSS阅读器,拯救你的信息焦虑

  免费无广告!这款跨平台 AI RSS 阅读器,拯救你的信息焦虑 在算法推荐主导信息流的时代,我们...
一句话生成拓扑图!AI+Draw.io 封神开源组合,工具让你的效率爆炸

一句话生成拓扑图!AI+Draw.io 封神开源组合,工具让你的效率爆炸

一句话生成拓扑图!AI+Draw.io 封神开源组合,工具让你的效率爆炸 前言 作为天天跟架构图、拓扑图死磕的...
浏览器自动化工具!开源 AI 浏览器助手让你效率翻倍

浏览器自动化工具!开源 AI 浏览器助手让你效率翻倍

浏览器自动化工具!开源 AI 浏览器助手让你效率翻倍 前言 在 AI 自动化快速发展的当下,浏览器早已不再只是...
150元打造低成本NAS小钢炮,捡一块3865U工控板

150元打造低成本NAS小钢炮,捡一块3865U工控板

150 元打造低成本 NAS 小钢炮,捡一块 3865U 工控板 一块二手的熊猫 B3 工控板 3865U,搭...
300元就能买到的”小钢炮”?惠普7L四盘位小主机解析

300元就能买到的”小钢炮”?惠普7L四盘位小主机解析

  300 元就能买到的 ” 小钢炮 ”?惠普 7L 四盘位小主机解析 最近...