LINUX下多路径MULTIPATH配置文档和相关概念

合集下载

DeviceMapperMultipath配置指导书全解

DeviceMapperMultipath配置指导书全解

Device Mapper Multipath配置指导书华为技术有限公司版权所有侵权必究Device Mapper Multipath配置指导书文档密级:内部公开修订记录目录目录 (1)前言 (3)1检查系统DM-Multipath (4)1.1检查DM-Multipath是否正确安装 (4)1.2查看DM-Multipath版本 (5)1.3检查DM-Multipath配置文件 (5)1.4检查DM-Multipath服务multipathd是否开机启动 (5)2修改DM-Multipath配置 (6)2.1修改multipath.conf文件 (6)2.1.1 CentOS 6.3 对接阵列S5800T 配置 (7)2.1.2 NeoKylin Advance Linux Server V5.6 对接阵列18500配置 (8)2.2 FAQ (9)2.2.1如何获取阵列vendor及product (9)2.2.2 DM-Multipath可用的磁盘在哪里 (9)3注意事项 (11)3.1集群应用 (11)3.2 DM-Multipath与UltraPath共存 (11)3.3设备屏蔽 (11)3.4驱动超时参数 (11)3.4.1 FC驱动 (11)3.4.2 ISCSI驱动 (12)附录A DM-Multipath盘符绑定 (13)附录B DM-Multipath磁盘屏蔽 (14)附录C 常用命令 (16)关键词:Device Mapper Multipath、配置摘要:本指导书是针对Linux系统自带多路径Device Mapper Multipath对接我司阵列,配置操作过程中需要的步骤、注意事项等提供的指导,本指导书描述了Multipath配置过程及注意事项。

缩略语清单:DM-Multipath(Device Mapper Multipath ):Linux系统自带多路径LUN(Logical Unit Number): 逻辑单元号ALUA(Asymmetric Logical Unit Access):非对称逻辑单元IALUA(Implicit Asymmetric Logical Unit Access):隐式ALUAEALUA(Explicit Asymmetric Logical Unit Access):显式ALUA参考资料清单:无。

linux多路径multipath 参数

linux多路径multipath 参数

linux多路径multipath 参数在Linux系统中,多路径是一种常见的冗余技术,用于提高系统的可靠性和稳定性。

Multipath则是Linux中实现多路径的一种机制,它能够自动选择最合适的路径来传输数据,从而提高了系统的性能和可靠性。

在本篇文章中,我们将介绍Linux多路径Multipath的参数。

一、Multipath工作原理Multipath是一种自动选择最佳路径来传输数据的机制,它使用多个路径来连接不同的存储设备或网络资源。

当系统需要访问存储设备上的数据时,Multipath会根据各个路径的性能和可靠性等因素,自动选择最合适的路径来传输数据。

这种机制提高了系统的性能和可靠性,因为即使某个路径出现故障,系统仍然可以使用其他路径来访问数据。

二、Multipath参数配置在Linux系统中,可以通过配置Multipath的参数来优化系统的性能和可靠性。

以下是一些常见的Multipath参数及其说明:1. `dm.multipath`:该参数用于启用或禁用Multipath机制。

将其设置为`1`以启用Multipath,设置为`0`以禁用。

2. `dm.scan`:该参数用于指定应搜索哪些设备以启用Multipath。

常见的值包括`all`(搜索所有设备)和`loop`(仅搜索loop设备)。

3. `dm.service_timeout`:该参数用于设置Multipath服务的超时时间。

默认值为60秒。

4. `dm.scan_tmo`:该参数用于设置扫描设备的超时时间。

默认值为3秒。

5. `multipath.scan_interval`:该参数用于设置Multipath自动扫描设备的间隔时间。

默认值为1秒。

6. `multipath.default_timeout`:该参数用于设置默认的块设备超时时间。

7. `multipath.find_tune`:该参数用于指定是否应该自动调整设备组的性能设置。

multipath多路径原理

multipath多路径原理

multipath多路径原理Multipath多路径原理是计算机网络中常见的一种技术,它通过使用多个路由路径来传输数据,从而提高数据传输的可靠性和性能,在数据传输中起到了至关重要的作用。

下面我们将详细阐述Multipath 多路径原理。

一、多路径技术概述传统的网络中,每个网络设备只有一种传输路径,数据只能通过这条路径进行传输。

但是,在现代网络环境中,单一路径无法满足高负载和高可用性的需求。

多路径技术允许在不同的路径上重复传输数据,从而使得数据传输更加灵活和高效。

二、Multipath多路径原理Multipath多路径原理是一种基于动态路由的技术,它通过将数据流分成多个流,每个流负责在不同的路径上传输数据。

在传输过程中,数据被拆分成多个数据包,每个数据包被分发到不同的路径上,通过各种高级路由协议计算出最优路径进行传输,重新组合成完整的数据包,最终传输到另一端,从而提高数据传输的速度和可靠性。

当数据包被发送时,传输协议会通过一系列路由算法计算出最佳路径,这些算法涉及到多种因素,包括网络拥塞、路由器负载、网络拓扑、网络带宽等。

然后,数据包将沿着这条路径传输,不过如果这条路径发生了阻塞,传输协议会选择另一条路径来传输数据包,这就保证了数据的可靠性和高可用性。

三、Multipath多路径技术的优势1、提高了网络传输的可靠性。

当一个路径被阻塞时,传输协议可以动态地选择另一条可用路径来传输数据,避免了数据丢失和传输延迟的问题。

2、提高了网络传输的性能。

多路径技术允许同时使用多个路径传输数据,因此可以实现更高的传输带宽和更低的传输延迟,从而提高了网络传输的性能和吞吐量。

3、提高了网络的可扩展性。

多路径技术可以有效地对网络进行分流,避免网络过载和拥塞,提高了网络的可扩展性和可维护性。

四、Multipath多路径技术的应用1、负载均衡:多路径技术可以用于实现负载均衡,同时利用多个路径来分配网络负载,保证每个路径都得到充分利用,提高了网络的效率和可靠性。

Linux DM multipath多路径配置问题汇总

Linux DM multipath多路径配置问题汇总
path_checker readsector0 //决定路径状态的方法
path_checker tur
path_selector "round-robin 0" //选择那条路径进行下一个IO操作的方法
prio_callout "/sbin/mpath_prio_alua/dev/%n" //获取有限级数值使用的默认程序
}
}
※千万不要写错path_checker(可能值有:readsector0, tur, emc_clariion, hp_sw, directio)。不清楚的,可从存储的官方资料查看
排错过程
# multipath -v3 -ll
# dmsetup ls
# multipathd -k
> > show config
/dev/mpath/mpathn 是udev设备管理器创建的,实际上就是指向下面的dm-n设备,仅为了方便,不能用来挂载;
/dev/dm-n 是软件内部自身使用的,不能被软件以外使用,不可挂载。
简单来说,就是我们应该使用/dev/mapper/下的设备符。对该设备即可用fdisk进行分区,或创建为pv。
测试multpath路径
然后用iostat观察各通道的流量和状态,以判断Failover或负载均衡方式是否正常:
# dd if=/dev/zero of=/dev/mapper/mpath0
# iostat -k 2
容错模式:
mpath18设备读写时,sdaf、sdv 会处于active状态,都有数据流,但sdb、sdl 组成的链路是enabled,作为ready情况。这为Failover(主备)情况

Linux_Device_Mapper_Multipathing多路径技术

Linux_Device_Mapper_Multipathing多路径技术

Linux Device Mapper Multipathing技术在SAN存储网络中,冗余地访问存储设备是整个系统的关键技术之一,在Linux平台,开源的解决方案之一是DM-Multipath。

Device Mapper Multipathing ( DM-Multipath )允许在服务器节点和存储阵列之间配置多个I/ O路径但仍视为一个单一存储设备。

这些I/O路径是物理SAN连接,可以包含独立的数据线,交换机和控制器。

多路径集成了I/O路径,创建了包含集成多路径的一个新设备。

本文主体是基于Red Hat管理手册Red Hat Enterprise Linux 5 DM Multipath –DM Mult ipath Configuration and Administration Edition 3结合项目实施过程中的实践撰写的。

文档以Re d Hat英文管理手册翻译为主,并完整经过实践。

DM-Multipath 概述DM-Multipath 可以提供:•冗余DM-Multipath 可以在active/passive 配置中提供failover。

在一个active/passive 配置中,对于I/O任何时候只使用一半的路径。

如果一个I/O路径的任何组成部分(数据线,交换机或控制器)出现故障,DM-Multipath将切换到一个替换路径上。

•性能提高DM-Multipath 可以配置为active/active 模式,这样I/O采用round-robin 方式分摊到多路径上。

在一些配置中,DM-Multipath 可以检测到I/O路径的负载并可以动态重平衡负载。

•Active/Passive Mulstipath Configuration with one RAID Devices配置说明:•o提供了HBA,FC cable,SAN switch和阵列控制器failovero不支持硬件存储阵列故障failover•更为复杂的Active/Passive Mulstipath Configuration with one RAID Devices配置说明:•o支持全冗余硬件failovero数据冗余需要通过软件来实现存储阵列支持默认情况下,DM-Multipath 支持大多数支持DM-Multipath 技术的常用存储。

十、Multipath多路径-基础知识

十、Multipath多路径-基础知识

⼗、Multipath多路径-基础知识10.1 多路径概述
• 当服务器到某⼀存储设备有多条路径时,每条路径都会识别为⼀个单独的设备
• 多路径允许您将服务器节点和储存阵列间的多个I/O路径配置为⼀个单⼀设备
• 这些 I/O 路径是可包含独⽴电缆、交换器和控制器的实体 SAN 链接
• 多路径集合了 I/O 路径,并⽣成由这些集合路径组成的新设备
10.2 多路径主要功能
• 冗余
– 主备模式,⾼可⽤
• 改进的性能
– 主主模式,负载均衡
10.3 多路径设备
• 若没有 DM Multipath,从服务器节点到储存控制器
的每⼀条路径都会被系统视为独⽴的设备,即使 I/O
路径连接的是相同的服务器节点到相同的储存控制器
也是如此
• DM Multipath 提供了有逻辑的管理 I/O 路径的⽅法,
即在基础设备顶端⽣成单⼀多路径设备。

multipath概念和配置文档

multipath概念和配置文档

一、什么是multipath普通的电脑主机都是一个硬盘挂接到一个总线上,这里是一对一的关系。

而到了有光纤组成的SAN环境,由于主机和存储通过了光纤交换机连接,这样的话,就构成了多对多的关系。

也就是说,主机到存储可以有多条路径可以选择。

主机到存储之间的IO由多条路径可以选择。

既然,每个主机到所对应的存储可以经过几条不同的路径,如果是同时使用的话,I/O流量如何分配?其中一条路径坏掉了,如何处理?还有在操作系统的角度来看,每条路径,操作系统会认为是一个实际存在的物理盘,但实际上只是通向同一个物理盘的不同路径而已,这样是在使用的时候,就给用户带来了困惑。

多路径软件就是为了解决上面的问题应运而生的。

多路径的主要功能就是和存储设备一起配合实现如下功能:1. 故障的切换和恢复2. IO流量的负载均衡3. 磁盘的虚拟化二、为什么使用multipath由于多路径软件是需要和存储在一起配合使用的,不同的厂商基于不同的操作系统,都提供了不同的版本。

并且有的厂商,软件和硬件也不是一起卖的,如果要使用多路径软件的话,可能还需要向厂商购买license才行。

比如EMC公司基于linux下的多路径软件,就需要单独的购买license。

其中,EMC提供的就是PowerPath,HDS提供的就是HDLM,更多的存储厂商提供的软件,可参考这里。

当然,使用系统自带的免费多路径软件包,同时也是一个比较通用的包,可以支持大多数存储厂商的设备,即使是一些不是出名的厂商,通过对配置文件进行稍作修改,也是可以支持并运行的很好的。

※请与IBM的RDAC、Qlogic的failover驱动区分开,它们都仅提供了Failover的功能,不支持Load Balance方式。

但multipath根据选择的策略不同,可支持多种方式,如:Failover、Multipath等。

三、multipath的组成我这里以红帽x86_64为例,虽然版本比较老,但下面的配置方式基本适用后面的所有版本。

multipath 删除路径

multipath 删除路径

multipath 删除路径摘要:一、multipath简介1.multipath的概念2.multipath的作用二、删除multipath路径的方法1.使用命令行删除2.使用图形界面删除三、删除multipath路径的注意事项1.确认删除操作2.备份重要数据正文:multipath是一种在计算机中用于实现多个路径同时传输数据的技术。

通过使用multipath,用户可以提高数据的传输速度和可靠性。

然而,有时你可能需要删除multipath路径,本文将介绍如何删除multipath路径以及删除时需要注意的事项。

首先,我们需要了解multipath的基本概念。

multipath,即多路径,允许一个设备同时使用多个路径与另一个设备进行通信。

在计算机领域,这通常应用于网络适配器和存储系统,以提高数据传输速度和可靠性。

multipath技术可以让数据在多个路径间自动切换,从而确保在某个路径发生故障时,数据仍然可以通过其他路径传输。

接下来,我们将介绍如何删除multipath路径。

有两种常见的方法可以实现这一目标:1.使用命令行删除:你可以通过在命令行中输入相应的命令来删除multipath路径。

具体操作取决于你使用的操作系统和multipath软件。

例如,在Linux系统中,你可以使用`ip link set`命令来删除multipath路径。

请注意,在执行此操作之前,请确保你了解命令的作用和可能产生的后果。

2.使用图形界面删除:对于那些不熟悉命令行的用户,也可以通过图形界面来删除multipath路径。

具体操作步骤因操作系统而异。

通常,你可以在系统设置或设备管理器中找到相关选项。

在执行删除操作之前,请确保你了解该操作的含义,并做好数据备份,以防误删。

在删除multipath路径时,有一些注意事项需要提醒:1.确认删除操作:在执行删除操作之前,请确保你了解multipath路径的作用,并确认需要删除该路径。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2. device-mapper
device-mapper包括两大部分:内核部分和用户部分。 内核部分由device-mapper核心(multipath.ko)和一些target driver(dm-multipath.ko) 构成。dm-mod.ko是实现multipath的基础,dm-multipath其实是dm的一个target驱动。核
一、什么是multipath
普通的电脑主机都是一个硬盘挂接到一个总线上,这里是一对一的关系。而到了有光纤组 成的SAN环境,由于主机和存储通过了光纤交换机连接,这样的话,就构成了多对多的关系。 也就是说,主机到存储可以有多条路径可以选择。主机到存储之间的IO由多条路径可以选 择。 既然,每个主机到所对应的存储可以经过几条不同的路径,如果是同时使用的话,I/O流量 如何分配?其中一条路径坏掉了,如何处理?还有在操作系统的角度来看,每条路径,操 作系统会认为是一个实际存在的物理盘,但实际上只是通向同一个物理盘的不同路径而已, 这样是在使用的时候,就给用户带来了困惑。多路径软件就是为了解决上面的问题应运而 生的。多路径的主要功能就是和存储设备一起配合实现如下功能: 1. 故障的切换和恢复 2. IO流量的负载均衡 3. 磁盘的虚拟化
[size=20 GB][features="0"][hwhandler="0"]
\_ round-robin 0 [prio=1][active]
\_ 3:0:0:7 sdaa 65:160 [active][ready]
\_ round-robin 0 [prio=1][enabled]
\_ 4:0:0:7 sdas 66:192 [active][ready]
6、分区或创建lvm
以前,我考虑到从系统iostat看到的都是dm-n的设备,所以一直都是直接对dm-n操作。但 这会产生一个问题,就是没法分区。而对/dev/mapper/mpathn设备操作就没有这问题。只 要要注意,用fdisk分区并保存后,必须刷新multipath的映射表,以便其创建分区对应的 设备符,例如: # fdisk -l /dev/mapper/mpath0 Disk /dev/mapper/mpath0: 214.7 GB, 214748364800 bytes 255 heads, 63 sectors/track, 26108 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes
# uname -a
Linux localhost.localdomain 2.6.18-164.el5 #1 SMP Tue Aug 18 15:51:48 EDT 2009
x86_64 x86_64 x86_64 GNU/Linux
# rpm -qa|grep device
device-mapper-event-1.02.32-1.el5
四、配置multipath
原理看了一堆,实际配置还是比较简单的。配置文件只有一个:/etc/multipath.conf 。 配置前,请用fdisk -l 确认已可正确识别盘柜的所有LUN逻辑单元号,HDS支持多链路负载 均衡,因此每条链路都是正常的;而如果是类似EMC CX300这样仅支持负载均衡的设备,则 冗余的链路会出现I/O Error的错误。 multipath.conf的配置参数、默认值,可参考:
# blkid /dev/mapper/mpath1
# vim /etc/fstab
(修改该配置文件并添加如下)
UUID=47931c90-140b-45fe-9dfa-5a0f56810db3 /oradata ext3 defaults 0 0
保存退出
# mount -a
注意:要使用哪块存储设备就在fastab里面挂载就可以了
devnode "hda"
wwid 3600508e000000000dc7200032e08af0b
}
这里禁止使用hda,也就是光驱。另外,还限制使用本地的sda设备,这个wwid,可通过下面
的命令获得:
# scsi_id -g -u -s /block/sda
3600508e000000000dc7200032e08af0b
二、为什么使用multipath
由于多路径软件是需要和存储在一起配合使用的,不同的厂商基于不同的操作系统,都提 供了不同的版本。并且有的厂商,软件和硬件也不是一起卖的,如果要使用多路径软件的 话,可能还需要向厂商购买license才行。比如EMC公司基于linux下的多路径软件,就需要 单独的购买license。 其中,EMC提供的就是PowerPath,HDS提供的就是HDLM,更多的存储厂商提供的软件,可参 考这里。 当然,使用系统自带的免费多路径软件包,同时也是一个比较通用的包,可以支持大多数 存储厂商的设备,即使是一些不是出名的厂商,通过对配置文件进行稍作修改,也是可以 支持并运行的很好的。 ※ 请与IBM的RDAC、Qlogic的failover驱动区分开,它们都仅提供了Failover的功能,不 支持Load Balance负载均衡方式。但multipath根据选择的策略不同,可支持多种方式,如: Failover、Multipath等。 Failover 的功能解释:通俗地说,即当 A 无法为客户服务时,系统能够自动地切换,使 B 能够 及时地顶上继续为客户提供服务,且客户感觉不到这个为他提供服务的对象已经更换。这里的
3、启动服务及生成映射
# modprobe dm-multipath # service multipathd restart # multipath -v0
4、查看复合后的设备
# multipath -ll
会看到类似下面的信息:
mpath0 (360060e80058e980000008e9800000007)
所以,我们需要修改默认的规则:
defaults {
udev_dir
/dev
path_grouping_policy multibus
failback
immediate
no_path_retry
fail
user_friendly_name
yes
}
关键是path_grouping_policy一项,其他选项可参考说明文档。
Device Boot
Start
End
Blocks Id System
/dev/mapper/mpa2478+ 83 Linux
状态正常的话,把multipathd设置为自启动:
# chkconfig multipathd on
# mkdir /oradata
# mkfs.ext3 /dev/mapper/mpath0
# mkfs.ext3 /dev/mapper/mpath1
# blkid /dev/mapper/mpath0 生成该存储设备的UUID
device-mapper-1.02.32-1.el5
device-mapper-multipath-0.4.7-30.el5
device-mapper-1.02.32-1.el5
这些是需要安装的安装包,如果没有安装需要到安装光盘中 # rpm -ivh device-mapper-* 将以上这些包全部安装 # chkconfig --list |grep multipath multipathd 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 # chkconfig multipathd on
A 和 B 可以存在于各种领域,但一般 fail-over 特指计算机领域的数据库、应用服务、硬件设 备等的失效转移。
三、multipath的组成
我这里以红帽x86_64为例,虽然版本比较老,但下面的配置方式基本适用后面的所有版本。
引用
# cat /etc/redflag-release
Red Flag DC Server release 5.0 (Trinity SP2)
心完成设备的映射,而target根据映射关系和自身特点具体处理从mappered device 下来 的i/o。同时,在核心部分,提供了一个接口,用户通过ioctr可和内核部分通信,以指导 内核驱动的行为,比如如何创建mappered device,这些device的属性等。 用户空间部分包括device-mapper这个包。其中包括dmsetup工具和一些帮助创建和配置 mappered device的库。这些库主要抽象,封装了与ioctr通信的接口,以便方便创建和配 置mappered device。device-mapper-multipath的程序中就需要调用这些库;
5、使用mpath设备
用multipath生成映射后,会在/dev目录下产生多个指向同一条链路的设备: /dev/mapper/mpathn /dev/mpath/mpathn /dev/dm-n
但它们的来源是完全不同的: /dev/mapper/mpathn 是multipath虚拟出来的多路径设备,我们应该使用这个设备; /dev/mpath/mpathn 是udev设备管理器创建的,实际上就是指向下面的dm-n设备,仅为了 方便,不能用来挂载; /dev/dm-n 是软件内部自身使用的,不能被软件以外使用,不可挂载。 简单来说,就是我们应该使用/dev/mapper/下的设备符。对该设备即可用fdisk进行分区, 或创建为pv。
3. scsi_id
其包含在udev程序包中,可以在multipath.conf中配置该程序来获取scsi设备的序号。通 过序号,便可以判断多个路径对应了同一设备。这个是多路径实现的关键。scsi_id是通过 sg驱动,向设备发送EVPD page80或page83 的inquery命令来查询scsi设备的标识。但一些 设备并不支持EVPD 的inquery命令,所以他们无法被用来生成multipath设备。但可以改写 scsi_id,为不能提供scsi设备标识的设备虚拟一个标识符,并输出到标准输出。 multipath程序在创建multipath设备时,会调用scsi_id,从其标准输出中获得该设备的 scsi id。在改写时,需要修改scsi_id程序的返回值为0。因为在multipath程序中,会检 查该直来确定scsi id是否已经成功得到。
相关文档
最新文档