当前位置:首页>Linux>Linux Multipath多路径安装配置

Linux Multipath多路径安装配置

  • 2026-10-11 05:46:38
Linux Multipath多路径安装配置

服务器通过双HBA光纤卡/双网卡连接外置存储,同一块存储逻辑盘被系统识别成/dev/sdb、/dev/sdc多块盘符。多盘符容易分区错乱、挂载错误;单根光纤断线,磁盘直接离线业务宕机。Multipath把多条物理链路聚合为1个逻辑设备,链路故障自动切换,保障存储高可用。

一、多路径底层原理

1. SCSI层识别机制

存储LUN通过多条物理链路上报系统,内核SCSI子系统按链路数量生成多个独立sd设备,实际指向同一个存储卷,这就是盘符重复的根源。

2. Device-Mapper内核框架

multipath依托Linux内核dm(设备映射器)驱动,在块设备上层做虚拟化:接收上层IO,根据负载策略分发到多条物理链路;某链路故障,自动切至剩余可用通道。

3. 三大核心工作模块

- dm-multipath:内核驱动,实现链路聚合、故障切换;

- multipathd:后台守护进程,定时巡检链路健康状态;

- multipath命令:用户层管理工具,生成映射、刷新配置。

4. IO调度策略

- round-robin轮询:IO轮流分发所有链路,负载均衡(最常用);

- group_by_prio:按ALUA优先级选路径,高端存储标配。

二、离线搭建本地YUM源(机房无外网)

mount -o loop /系统镜像.iso /mnt

vim /etc/yum.repos.d/local.repo

[local]

name=LocalOS

baseurl=file:///mnt

gpgcheck=0

enable=1

yum makecache

三、安装软件、加载内核模块

#安装多路径全套组件

yum install device-mapper-multipath* -y

#加载多路径、轮询调度内核模块

modprobe dm-multipath

modprobe dm-round-robin

#验证内核模块载入

lsmod |grep multipath

四、生成配置文件+详解配置项

mpathconf --enable  #自动生成/etc/multipath.conf

vim /etc/multipath.conf

通用标准配置(华为/浪潮/HP/宏杉存储通用)

defaults {

    polling_interval    30          #每30秒探测一次链路状态

    failback            immediate  #故障链路恢复后立即切回

    no_path_retry       5          #链路异常重试5次后禁用路径

    rr_min_io           100        #累计100个IO再切换下一条链路

    path_checker        tur        #tur协议检测链路在线状态

    user_friendly_names yes        #自动生成mpath别名/dev/mapper/mpathN

}

blacklist {

    devnode "^sda"                 #黑名单,排除本地系统盘,防止误聚合

}

devices {

    device {

        vendor "HP"                #存储厂商,multipath -v3查看

        product "P9500"            #存储型号

        path_grouping_policy group_by_prio

        prio_callout "/sbin/mpath_prio_alua /dev/%n" #ALUA优先级

    }

}

自定义别名(固定盘符,生产常用)

multipaths {

    multipath {

        wwid 36000c29xxxxxxx     #multipath -v3查询WWID

        alias storage-data       #自定义映射名称/dev/mapper/storage-data

        path_selector "round-robin 0"

    }

}

五、启动服务并开机自启

systemctl restart multipathd

systemctl enable multipathd

六、在线扫盘、生成多路径映射

#FC HBA卡在线刷新存储,host序号看/sys/class/fc_host/

echo "1" > /sys/class/fc_host/host0/issue_lip

echo "1" > /sys/class/fc_host/host1/issue_lip

multipath -v2   #扫描链路,生成mpath映射

multipath -ll   #查看链路状态,active为在用链路,ready备用链路

成功后:多块sd盘聚合为  /dev/mapper/mpath0 ,直接挂载使用。

七、日常运维常用命令

multipath -r        #修改配置后重载生效

multipath -v3       #查询WWID、厂商型号、黑名单详情

multipath -F        #清空全部多路径映射

multipathd -k       #进入交互,show conf查看当前生效配置

注意事项

搭建本地YUM→安装包→内核加载→编写conf配置→启动multipathd→在线刷新FC磁盘→生成多路径→multipath -ll验收→格式化挂载使用

1. 本地系统盘sda务必加入黑名单,否则会被多路径接管导致系统异常;

2. 更换存储只需要修改devices里vendor、product字段,整体配置结构不变;

3. 改完配置必须 multipath -r 重载,不用重启服务;

4. 拔掉一根光纤测试:一条链路离线不影响mpath设备读写,自动切换备用链路。

最新文章

随机文章