当前位置: 首页 > news >正文

一篇文章快速上手linux系统中存储多路径multipath的配置

本篇文章关键字:linux、多路径、multipath、华为存储、redhat、centos

多路径multipath作用

使用设备映射器多路径(DM Multipath),您可以将服务器节点和存储阵列间的多个 I/O 路径配置为单一设备。这些 I/O 路径是可包含独立电缆、交换机和控制器的物理 SAN 连接。多路径聚合了 I/O 路径并生成由聚合路径组成的新设备。

比如按下图所示:

图片

server主机通过2个hba卡分别接到2台SAN交换机,2台SAN交换机又分别接了存储的控制器1和2.

此时从存储1映射给主机的1个LUN就会识别到多个路径,变成4块磁盘。为了达到高可用冗余的效果,就需要把多个磁盘聚合成一个设备来使用,这样任何一条路径发生故障,都不会影响业务运行。

多路径软件分为Linux操作系统自带的multipath和存储厂商提供的专用多路径软件。

常见的比如华为的UltraPath、EMC的power path、ibm存储的SDDPCM(AIX下特有)、Veritas的StorageFoundation

用存储厂商的好处就是能针对自家的存储做负载链路优化,可以自动屏蔽质量有问题的链路(这点multipathd不具备,经常会出现一条链路有问题,导致存储卡顿的情况)

当然也是有缺点的,就是一台主机只能安装一个厂商的多路径软件,这样的话,你一台服务器要是连多个厂家的存储就会出现问题。

此时multipath的高兼容性就体现出来了,用它可以配置同时连接多个厂家的存储。

我次就遇到了坑,华为的存储多路径软件最新居然只支持到oracle linux 7.6不支持7.9,真是让人大跌眼镜!oracle linux7.9都出了多少年了,居然没有人适配(估计改一下install.sh安装脚本里的版本校验就能安上。。。研发懒得改了),我一定要给他们提需求🤣。

我下面的示例就是用华为的OceanStor Dorado 2000连接Oracle linux7.9为例(这里的device配置和以前的V2/V3/V5完全不一样,因为dorado存储又做了改动)

安装multipath

首先先要检查、安装multipath

--检查是否安装了该软件包
rpm -q device-mapper-multipath

配置YUM安装

--增加本地YUM配置文件
cat >/etc/yum.repos.d/local.repo<<EOF
[local]
name=local
baseurl=file:///media/os
enabled=1
gpgcheck=0
EOF
--手动执行挂载系统ISO文件
mount /mnt/*.iso /medis/os
yum cleanmetadata
yum makecache
--执行安装
yum install device-mapper-multipath

配置multipathd服务

安装之后,需要启用multipath,执行如下命令初始化多路径配置文件。

mpathconf --enable

此时会生成默认的/etc/multipath.conf文件,配置multipath开机启动

systemctl enable multipathd.service

需要注意的是一定要配置多路径忽略本地磁盘,因为系统盘很有可能在下次重启的时候不是sda了,可以参考之前我写的文章《Linux解决multipath多路径磁盘盘符与系统盘盘符重叠问题》。这里我再说一下基本操作,需要先获取系统盘的WWID

====LINUX 5.0====
/sbin/scsi_id -g -u -s  /dev/sda
====Linux 6.0====
/sbin/scsi_id -g -u -d  /dev/sda 
====Linux 7.0/8.0/9.0====
/usr/lib/udev/scsi_id -g -u -d  /dev/sda

然后下一步就是要编辑多路径配置文件了,这里先把原来的配置备份,再按我配置好的模板新建一下。

--备份配置
mv /etc/multipath.conf /etc/multipath.conf.bak
--创建新的配置文件
touch /etc/multipath.conf
粘贴内容如下defaults {user_friendly_names yes}
blacklist {wwid <这里写刚才获取的SDA磁盘WWID>}
multipaths {multipath {wwid  3624974510092e319011e66c200000000alias crs01} }
devices {device {vendor                  "HUAWEI"product                 "XSG1"path_grouping_policy    multibuspath_checker            turprio                    constpath_selector           "round-robin 0"failback                immediatedev_loss_tmo            30fast_io_fail_tmo        5no_path_retry           6}}

简单说一下multipath.conf的配置文件分为几个部分

  • blacklist

    不视为多路径的特定设备列表。

  • defaults

    DM 多路径的常规默认设置。

  • devices

    各个存储控制器的设置。这些值覆盖了在 配置文件的 defaults 部分中指定的内容。如果您使用默认不支持的存储阵列,您可能需要为阵列创建 devices 子部分。

  • multipaths

    各个多路径设备特性的设置。这些值会覆盖在配置文件中的 overridesdevices, 和 defaults 部分指定的值。

具体各个部分的参数我就不详细说了,大家直接看红帽官方文档就行,我就不在这里水篇幅了。我只说我这个配置模板里的重要参数:

1、defaults里标注使用user_friendly_names,否则的话生成的设备文件就是WWID看起来不是很友好,这里对应下面multipahs里的alias标出设备别名

2、blacklist的WWID代表本地磁盘或都你想要屏蔽掉的磁盘WWID

3、multipaths里每个multipath{}代表一个生成的存储设备,按实际情况填写,具体磁盘的WWID可以用multipath -ll找到或者用scsi_id命令获取,这个建议是存储侧LUN的名称和要生成的多路径设备的名称对应,这样既避免用错盘,也方便日后排错。磁盘的WWID也可以在存储的管理界面匹配上LUN的WWID

4、devices里的每个device{}代表一个存储型号。这块可以直接找存储厂家要,不要自己瞎配置,会影响使用效果(比如多路径磁盘用来做oracle asm磁盘,你要不用厂商的配置自己瞎写可能就识别有问题)

最后配置完毕最后重新load multipathd服务配置文件即可,执行systemctl reloal multipathd。最后就是去/dev/mapper下直接使用生成的别名设备就行了。

关于更多配置

关于多路径常用的命令也是建议直接看红帽的官方文档就行,有中文

具体参考:

https://docs.redhat.com/zh-cn/documentation/red_hat_enterprise_linux/9/html-single/configuring_device_mapper_multipath/index#ignoring-local-disks-when-generating-multipath-devices_configuring-dm-multipath

相关文章:

  • MCP、RAG与Agent:下一代智能系统的协同架构设计
  • Cribl 中数据脱敏mask 的实验
  • 【HDFS】BlockPlacementPolicyRackFaultTolerant#getMaxNode方法的功能及具体实例
  • BufferedReader 终极解析与记忆指南
  • 使用python求函数极限
  • Java实现选择排序算法
  • 盛水最多的容器问题详解:双指针法与暴力法的对比与实现
  • vcast工具env环境问题二:<command-line>: error: stray ‘\’ in program
  • 深入解析 sklearn 中的 LabelEncoder:功能、使用场景与注意事项
  • 三、The C in C++
  • TV板卡维修技术【一】
  • 什么是GOTS认证,GOTS认证有什么要求?GOTS认证有什么作用
  • 基于动态注意力机制与双向融合的目标检测模型详解
  • 【树莓派 PICO 2 测评】采集 DS18B20 数据及 OLED 显示
  • Dockerfile项目实战-单阶段构建Vue2项目
  • vue动画
  • 索引语法SQL性能分析索引的使用
  • 依赖注入(DI)与自动装配:本质就是“赋值“吗?
  • PBKDF2全面指南(SpringBoot实现版)
  • AI agents系列之智能体框架介绍
  • 大理杨徐邱再审后上诉案将于下周开庭:案发已逾32年,故意杀人罪去年被撤销
  • 上海这台人形机器人完成半马:无故障、无摔倒,冲过终点不忘挥手致意
  • 海外考古大家访谈|马克·波拉德:以考古意识为本位的科技考古学家
  • 天工机器人获首个人形机器人半马冠军
  • 不降息就走人?特朗普试图开先例罢免美联储主席,有无胜算
  • 上海电网新能源发电功率首破400万千瓦,绿电交易规模跨越式增长