LINUX下多路径(multi-path)介绍及使用

合集下载

linux下磁盘多路径

linux下磁盘多路径

linux下磁盘多路径
有时我们在linux系统中通过'fdisk-l'命令,会看到/dev/mapper/xxxxx的磁盘,这中磁盘有可能是逻辑卷,也有可能是配置的多路径,可以先通过“lvdisplay”如何能查看到,则说明是逻辑卷,如果不能,则是磁盘多路径配置,多路径配置下,一般会/dev/mapper/xxxx链接到一个磁盘/dev/dm-x的块设备文件,我们可以通过查看/etc/multipath.conf,会看到相关的多路径配置,或者是在/etc/multipath路径下有个wwids文件,就是配置多路径磁盘名称的文件,可以通过multipath命令来管理多路径:
/etc/init.d/multipathd start #开启mulitipath服务
# multipath -F #删除现有路径
# multipath -v2 #格式化路径
# multipath -ll #查看多路径
安装:
yum –y install device-mapper device-mapper-multipath
modprobe dm-multipath
# modprobe dm-round-robin
# service multipathd start
# multipath –v2
配置:
vi /etc/multipath.conf文件
blacklist {
devnode '^sda'
}
defaults {
user_friendly_names yes
path_grouping_policy multibus
failback immediate
no_path_retry fail
}。

LINUX自带多路径详解

LINUX自带多路径详解

LINUX 自带多路径详解一、多路径解释多路径,顾名思义就是有多种选择的路径。

在SAN 或IPSAN 环境,主机和存储之间外加了光纤交换机,这就导致主机和存储之间交换速度和效率增强,一条路径肯定是不行的,也是不安全不稳定的。

多路径就是要来解决从主机到磁盘之间最快,最高效的问题。

主要实现如下几个功能1. 故障的切换和恢复2. IO 流量的负载均衡3. 磁盘的虚拟化多路径之前一直是存储厂商负责解决,竟来被拆分出来单独卖钱了。

构架基本是这样的:存储,多路径软件,光纤交换机,主机,主机系统。

二、LINUX 下的multipath1、查看是否自带安装?1 2 3 4 5 6 [root@web2 multipath]# rpm -qa|grep devicedevice-mapper-1.02.39-1.el5device-mapper-1.02.39-1.el5device-mapper-multipath-0.4.7-34.el5device-mapper-event-1.02.39-1.el5[root@web2 multipath]#2、安装1 2 3 4 5 6 rpm -ivh device-mapper-1.02.39-1.el5.rpm #安装映射包 rpm -ivh device-mapper-multipath-0.4.7-34.el5.rpm #安装多路径包 外加加入开机启动 chkconfig –level 2345 multipathd on #设置成开机自启动multipathd lsmod |grep dm_multipath #来检查安装是否正常3、配置1 2 # on the default devices.blacklist {3 4 5 6 7 8 9 10 11 12 13 14 devnode '^(ram|raw|loop|fd|md|dm-|sr|sr|scd|st)[0-9]*'devnode '^hd[a-z]'}devices {device {vendor 'HP'path_grouping_policy multibusfeatures '1 queue_if_no_path'path_checker readsector()failback immediate}}完整的配置如下:blacklist {devnode '^sda'}defaults {user_friendly_names no}multipaths {multipath {wwid 14945540000000000a67854c6270b4359c 66c272e2f356321alias iscsi-dm0path_grouping_policy multibuspath_checker turpath_selector 'round-robin 0'}multipath {wwid 14945540000000000dcca2eda91d70b81e dbcfce2357f99eealias iscsi-dm1path_grouping_policy multibuspath_checker turpath_selector 'round-robin 0'}multipath {wwid 1494554000000000020f763489c16556110 1813333957ed96alias iscsi-dm2path_grouping_policy multibuspath_checker turpath_selector 'round-robin 0'}multipath {wwid 14945540000000000919ca813020a19542 2ba3663e1f03cc3alias iscsi-dm3path_grouping_policy multibuspath_checker turpath_selector 'round-robin 0'}}devices {device {vendor 'iSCSI-Enterprise'product 'Virtual disk'path_grouping_policy multibusgetuid_callout '/sbin/scsi_id -g -u -s /block/%n'path_checker readsector0path_selector 'round-robin 0'}}4、命令1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 2[root@web2 ~]# multipath -hmultipath-tools v0.4.7 (03/12, 2006)Usage: multipath [-v level] [-d] [-h|-l|-ll|-f|-F|-r] [-pfailover|multibus|group_by_serial|group_by_prio][device] -v level verbosity level0 no output1 print created devmap names only2 defau lt verbosity3 print debug information-h print this usage text -b file bindings file location-d dry run, do not create or update devmaps-l show multipath topology (sysfs and DM info)-ll show multipath topology (maximum info)-f flush a multipath device map-F flush all multipath device maps-r force devmap reload -p policy force all maps to specified policy :failover 1 path per priority groupmultibus all paths in 1 priority groupgroup_by_serial 1 priority group per serialgroup_by_prio 1 priority group per priority lvl4 25 26 27 28 293group_by_node_name 1 priority group per target nodedevice limit scope to the device's multipath(udev-style $DEVNAME reference, eg /dev/sdbor major:minor or a device map name)[root@web2 ~]#5、启动关闭1 2 3 4 # /etc/init.d/multipathd start #开启mulitipath 服务 service multipath startservice multipath restartservice multipath shutdown6、如何获取wwid1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 1、[root@vxfs01 ~]# cat /var/lib/multipath/bindings# Multipath bindings, Version : 1.0# NOTE: this file is automatically maintained by the multipath program.# You should not need to edit this file in normal circumstances. ## Format:# alias wwid#mpath0 36006016051d50e0035744871c912de11mpath1 36006016051d50e0034744871c912de11mpath2 36006016051d50e0032744871c912de11mpath3 36006016051d50e0039744871c912de11mpath4 36006016051d50e003a744871c912de112、[root@vxfs01 ~]# multipath -v3 |grep 3600sdb: uid = 36006016051d50e003a744871c912de11 (callout)sdc: uid = 36006016051d50e003a744871c912de11 (callout)sdd: uid = 36006016051d50e003a744871c912de11 (callout)sde: uid = 36006016051d50e003a744871c912de11 (callout)36006016051d50e003a744871c912de11 1:0:0:0 sdb 8:16 0 [undef][ready] DGC,RAI36006016051d50e003a744871c912de11 1:0:1:0 sdc25 26 8:32 1 [undef][ready] DGC,RAI36006016051d50e003a744871c912de11 2:0:0:0 sdd 8:48 1 [undef][ready] DGC,RAI36006016051d50e003a744871c912de11 2:0:1:0 sde 8:64 0 [undef][ready] DGC,RAIFound matching wwid [36006016051d50e003a744871c912de11] in bindings file.比较详细的文字:/blog/static/1007689142013416111534352//wuweilong/article/details/14184097 RHEL 官网资料:/wp-content/uploads/downloads/2013/11/Red_Hat_Enterprise_Linux -5-DM_Multipath-en-US.pdf/wp-content/uploads/downloads/2013/11/Red_Hat_Enterprise_Linux -5-DM_Multipath-zh-CN.pdf/wp-content/uploads/downloads/2013/11/Red_Hat_Enterprise_Linux -6-DM_Multipath-en-US.pdf/wp-content/uploads/downloads/2013/11/Red_Hat_Enterprise_Linux -6-DM_Multipath-zh-CN.pdf。

linux 存储多路径静默参数

linux 存储多路径静默参数

linux 存储多路径静默参数摘要:1.背景介绍2.Linux 存储多路径的概念3.静默参数的含义4.多路径静默参数的配置方法5.配置多路径静默参数的优点6.总结正文:1.背景介绍在Linux 系统中,存储设备通常通过多路径(multipath)技术来提高数据的可靠性和可访问性。

多路径技术允许系统同时访问多个物理存储设备,将它们作为一个逻辑设备来使用。

这种方式可以在某个存储设备出现故障时,自动切换到其他存储设备,从而保证数据的连续性和完整性。

2.Linux 存储多路径的概念Linux 中的多路径技术是通过multipath 模块来实现的。

multipath 模块可以在系统中创建一个虚拟的存储设备,它将多个物理存储设备关联起来,形成一个逻辑设备。

这个逻辑设备可以有多个入口点,即多路径。

当某个物理存储设备发生故障时,multipath 模块会将其从虚拟设备中移除,并将其他物理存储设备作为新的入口点加入虚拟设备,从而保证数据的可访问性。

3.静默参数的含义静默参数(silent parameters)是指在Linux 系统中,某些设备或模块在初始化时没有输出相关信息,但这些信息对于系统的正常运行是非常重要的。

静默参数通常在设备的配置文件中设置,如/etc/multipath/multipath.conf。

如果没有正确设置静默参数,可能会导致系统在启动时出现错误,甚至无法正常运行。

4.多路径静默参数的配置方法要在Linux 系统中配置多路径静默参数,需要编辑/etc/multipath/multipath.conf 文件。

在这个文件中,可以添加、修改或删除静默参数。

以下是一个配置多路径静默参数的示例:```# /etc/multipath/multipath.conf# 设置静默参数silent_aries = 3silent_param_check = 1silent_device_check = 1silent_mount_check = 1silent_module_check = 1silent_io_check = 1silent_udev_check = 1silent_hotplug_check = 1silent_firmware_check = 1silent_kernel_check = 1silent_builtin_check = 1silent_sbin_check = 1silent_sysfs_check = 1silent_block_check = 1silent_ Files_check = 1silent_dir_check = 1silent_socket_check = 1silent_module_exit_check = 1silent_module_load_check = 1silent_module_unload_check = 1silent_device_add_check = 1silent_device_del_check = 1silent_device_change_check = 1silent_path_check = 1silent_link_check = 1silent_init_check = 1silent_exit_check = 1silent_run_check = 1```在这个示例中,我们设置了silent_aries、silent_param_check、silent_device_check 等参数为1,表示启用这些静默参数的检查功能。

多路径软件

多路径软件

多路径(multi-path)软件的介绍普通的电脑主机都是一个硬盘挂接到一个总线上,这里是一对一的关系。

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

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

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

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

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

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

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

好在,RedHat和Suse的2.6的内核中都自带了免费的多路径软件包,并且可以免费使用,同时也是一个比较通用的包,可以支持大多数存储厂商的设备,即使是一些不是出名的厂商,通过对配置文件进行稍作修改,也是可以支持并运行的很好的。

本文一下的部分将专门针对Linux下多路径软件的配置安装,以及一些结合实际的操作进行详细的介绍(以下操作均在Suse10 SP1下进行)多路径软件包的构成device-m apper-1.02.13-6.9.i586.rpm该软件运行在底层,主要进行设备虚拟化和映射。

multipath-tools-0.4.7-34.18.i586.rpm,这个软件包可以在多路径的管理和监控工具,主要进行路径状态的检测,管理工作多路径软件包的安装Rpm –ivh device-m apper-1.02.13-6.9.i586.rpmRpm –ivh multipath-tools-0.4.7-34.18.i586.rpm安装完成后,使用命令modprobe dm_multipath来加载相应的模块,可以使用lsmod |grep dm_multipath来检查安装是否正常。

linux多个ADSL叠加

linux多个ADSL叠加

Linux 上多條對外連線(Multi-Path)實作作者﹕網中人 <netman@>version 0.04date 2004-09-27一、前言由於 ADSL 及 Cable Modem 的普及,越來越多企業或個人所擁有的對外連線早已超過一條了,不管是固接還是撥接,相信不少人都在思考如何用最有效的方式將多條連線作整合,將所有連線的使用發揮至最大極限及最佳的使用率。

除了起到負載的分攤之外,還能達到斷線備援目的,以提供更靈活的連線整合方案。

本文將以實作的方式試圖在 Linux 上做到上述要求。

二、環境我先說明一下我的測試環境:2.1 系統方面:我目前測試的系統是 RedHat 9.0 Linux ,採用"伺服器"類型安裝,並沒提供 X 界面。

透過 APT 更新至最新修補,並沒安裝 distro 之外的套件。

事實上,只要實作所需的套件滿足的話,並不需要安裝任何伺服器套件。

甚至,核心版本也不需作任何修改,只是某些連線特徵會有些差異(後文[7.1]再詳述)。

2.2 網路方面:原本的 seednet adsl 是五個 IP 撥接的,除了之前透過 ip share 來使用外,我再起了另外一個 ppp0 界面。

此外另外再牽了一條 hinet 固一 adsl 。

如此環境,基本上能夠分別測試到如下這幾種連線方式:* 固接(固定 IP)* 撥接(非固定 IP)* ip share(非固定 IP)見圖:/\__/\__/\,--| internet |--./ \/--\/--\/ \| || |+--[seednet ADSL] [hinet ADSL]| (非固定) (固一)| | 220.130.96.254| [ ip share ] || 192.168.100.1 || | || 192.168.100.2 220.130.96.21| +----------------------------------++---| (eth1) (eth0) |ppp0| kernel 2.4.23 |+----------------------------------+(my linux box RH9.0)2.3 測試方式雖然,撥接adsl 都是同一設備,或許還不十分理想,目前也只能如此了...我採用的是拔線的方式來測斷線的,暫還沒想到其他方式,或許大家可以幫忙想想的...我的測試基本上是用 ping 來做:我的測試基本上是用 ping 來做:* 若是 ppp 或不指定測試目標,我會用 next hop 來測。

Linux多路径multipath安装配置

Linux多路径multipath安装配置

S T A R S I N OLINUX multi-path安装配置测试报告RenYang2013.12目录一、测试环境摘要 (4)二、检查安装multipath (4)2.1检查是否已安装 (4)2.2若未安装则安装 (4)2.2.1搭建yum源 (4)2.2.2通过yum源安装并自启动 (4)2.3核查安装是否成功 (5)2.4设为开机自动启动 (5)三、配置multipath (5)3.1创建配置脚本 (5)3.2赋予脚本执行权限 (7)3.3执行脚本 (8)3.4确认配置结果 (8)3.5正常使用磁盘 (9)四、测试 (9)4.1负载均衡测试 (9)4.2路径切换测试 (9)五、常用操作命令 (10)5.1启停mulitipath服务 (10)5.2删除现有路径 (10)5.3格式化路径(重新扫描) (10)5.4查看多路径 (10)5.5重载multipathd服务 (10)5.6查看所有磁盘wwid (10)5.7显示当前device mapper信息 (11)说明:本文档中安装部署部分所提到的步骤都在测试环境中通过。

可以作为安装部署参考手册。

但因环境不同而无法保证在其他环境中准确无误(配置请按照特定环境自行修改)。

本文档仅供参考,建议按照官方手册安装配置。

蓝色字体—命令行绿色字体—脚本或输出结果暗红字体—表示变量(可更改)红色字体—需注意之处# — root用户下执行一、测试环境摘要FreeNAS模拟iSCSI存储并划分空间分配给Linux5系统二、检查安装multipath2.1检查是否已安装[root@linux5 ~]# rpm -qa|grep mapperdevice-mapper-1.02.55-2.el5device-mapper-1.02.55-2.el5device-mapper-event-1.02.55-2.el5device-mapper-multipath-0.4.7-42.el52.2若未安装则安装2.2.1搭建yum源mkdir -p /mnt/yummount /dev/cdrom /mnt/yum如果从ISO挂载,则使用如下命令:mount -o loop -t iso9660 /tmp/Redhat_5.0_U6_64.ISO /mnt/yumecho "[yum]">/etc/yum.repos.d/yum.repoecho "name=yum">>/etc/yum.repos.d/yum.repoecho "baseurl=file:///mnt/yum/Server">>/etc/yum.repos.d/yum.repo echo "enabled=1">>/etc/yum.repos.d/yum.repoecho "gpgcheck=1">>/etc/yum.repos.d/yum.repoecho"gpgkey=file:///mnt/yum/RPM-GPG-KEY-redhat-release">>/etc/yum.repos .d/yum.repo2.2.2通过yum源安装并自启动yum –y install device-mapper device-mapper-multipath2.3核查安装是否成功[root@linux5 ~]# lsmod |grep dm_multipathdm_multipath 56921 0scsi_dh 42177 1 dm_multipathdm_mod 101393 4 dm_mirror,dm_multipath,dm_raid45,dm_log 如果模块没有加载成功请使用下列命初始化DM,或重启系统:modprobe dm-multipathmodprobe dm-round-robinservice multipathd startmultipath –v22.4设为开机自动启动chkconfig --level 2345 multipathd on三、配置multipath3.1创建配置脚本Multipath的配置文件是/etc/multipath.conf,为了快速进行配置,可直接在linux系统任意目录创建一个脚本并将以下内容复制到脚本中:cp /etc/multipath.conf /etc/multipath.conf.bakecho 'blacklist {devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"devnode "^hd[a-z]"devnode "^cciss!c[0-9]d[0-9]*"devnode "^sd[a-b]"}defaults {udev_dir /devpolling_interval 10failback immediateno_path_retry 5rr_min_io 100path_checker turselector "round-robin 0"path_grouping_policy failoveruser_friendly_names yes}multipaths {'>/etc/multipath.conffor pv in `cat /proc/partitions|awk '{print $4}'|grep sd|grep [a-z]$`;do echo "`scsi_id -g -u -s /block/$pv`">>$$.wwid; donefor wwid in `awk 'NF' $$.wwid|sort|uniq|awk '{print $1}'`;doecho "Found a device:"for pv in `cat /proc/partitions|awk '{print $4}'|grep sd|grep [a-z]$`;doif [[ `scsi_id -g -u -s /block/$pv` = $wwid ]];then echo " $pv: `scsi_id -g -u -s /block/$pv`";fidonestop=0while [[ $stop -lt 1 ]];doread -p "Whether to add $wwid? [y,n,q] (y) " addif [[ -z "$add" || "$add" = "y" ]];thenecho " multipath {">>/etc/multipath.confecho " wwid $wwid">>/etc/multipath.confread -p "alias: (none) " aliasif [[ -n "$alias" ]];then echo " alias $alias">>/etc/multipath.conf;firead -p "gid: (none) " gidif [[ -n "$gid" ]];then echo " gid $gid">>/etc/multipath.conf;firead -p "uid: (none) " uidif [[ -n "$uid" ]];then echo " uid $uid">>/etc/multipath.conf;firead -p "mode: [0600,none] (none) " modeif [[ $mode = "0600" ]];then echo " mode $mode">>/etc/multipath.conf;fiecho " }">>/etc/multipath.confstop=1else if [[ $add = "n" ]];then stop=1else if [[ $add = "q" ]];then rm -fr $$.wwid;break 2;fi fi fidonedoneecho "}">>/etc/multipath.confrm -fr $$.wwid备注:1、红色字体部分根据现场环境进行修改;2、也可以按wwid或device进行排除(示例如下):➢按wwid方式:blacklist {wwid 26353900f02796769}➢按device方式:blacklist {device {vendor "IBM"product "3S42" #DS4200 Product 10}device {vendor "HP"product "*"}}3、也可以选择性使用blacklist_exceptions进行排除:例如:如果有大量设备,但只有一个需要多路径(WWID为 112233445566),此时不需要将想要使用多路径的设备之外的每个设备单独加入黑名单,只需要将所有设备都加入黑名单,然后只允许想要使用多路径的设备即可:blacklist {wwid "*"}blacklist_exceptions {wwid "112233445566"}3.2赋予脚本执行权限chmod +x tmp.sh3.3执行脚本[root@linux5 ~]# ./tmp.shFound a device:sdd: 3300000001f548fcaWhether to add 3300000001f548fca? [y,n,q] (y)回车alias: (none) test1gid: (none) 1300uid: (none) 1101mode: [0600,none] (none) 0600略去N字……备注:根据提示操作即可,alias、gid、uid、mode非强制要求,根据具体环境及需求选择。

multipath-tools 原理

multipath-tools 原理

multipath-tools 原理multipath-tools是一个用于Linux系统的多路径软件,它可以将多个路径绑定在一起,形成一个逻辑上的设备,从而提高系统的可靠性和性能。

其原理如下:1. 多路径设备的定义在Linux系统中,每个磁盘设备都有一个唯一的标识符,称为WWN(World Wide Name)。

多路径设备是由多个WWN相同的磁盘设备组成的,这些设备可以是不同的物理路径,也可以是同一路径上的不同端口。

在多路径设备中,只有一个设备是活动的,其他设备处于备用状态。

2. 多路径设备的管理multipath-tools通过将多个路径绑定在一起,形成一个逻辑上的设备,从而提高系统的可靠性和性能。

在多路径设备中,只有一个设备是活动的,其他设备处于备用状态。

当活动设备发生故障时,备用设备会自动接管工作,从而保证系统的连续性。

3. 多路径设备的配置在Linux系统中,多路径设备的配置通常需要在multipath.conf文件中进行。

该文件包含了多路径设备的配置信息,包括设备的WWN、路径的优先级、设备的属性等。

在配置文件中,还可以定义多个路径组,每个路径组包含多个路径,用于提高系统的可靠性和性能。

4. 多路径设备的使用在使用多路径设备时,需要先将其格式化为文件系统,然后挂载到系统中。

在挂载时,可以使用/dev/mapper/路径来代替实际的设备路径,这样可以避免在多路径设备发生故障时,系统无法访问数据的情况。

总结:multipath-tools是一个用于Linux系统的多路径软件,可以将多个路径绑定在一起,形成一个逻辑上的设备,从而提高系统的可靠性和性能。

其原理包括多路径设备的定义、管理、配置和使用。

iSCSI多路径介绍及使用

iSCSI多路径介绍及使用

LINUX下多路径(multi-path)介绍及使用一、什么是多路径普通的电脑主机都是一个硬盘挂接到一个总线上,这里是一对一的关系。

而到了有光纤组成的SAN环境,或者由iSCSI组成的IPSAN环境,由于主机和存储通过了光纤交换机或者多块网卡及IP来连接,这样的话,就构成了多对多的关系。

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

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

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

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

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

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

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

好在, RedHat和Suse的2.6的内核中都自带了免费的多路径软件包,并且可以免费使用,同时也是一个比较通用的包,可以支持大多数存储厂商的设备,即使是一些不是出名的厂商,通过对配置文件进行稍作修改,也是可以支持并运行的很好的。

二、Linux下multipath介绍,需要以下工具包:在CentOS 5中,最小安装系统时multipath已经被安装,查看multipath是否安装如下:1、device-mapper-multipath:即multipath-tools。

主要提供multipathd和multipath 等工具和 multipath.conf等配置文件。

linux配置存储与多路径

linux配置存储与多路径

Found volume group "VolGroup00" using metadata type lvm2
vgcreate 命令第一个参数是指定该卷组的逻辑名:eccdbvg。后面参数是指定希望添加到该卷组的所有 分区和磁盘。vgcreate 在创建卷组 eccdbvg 以外,还设置使用大小为 4 MB 的 PE(默认为 4MB),这表 示卷组上创建的所有逻辑卷都以 4 MB 为增量单位来进行扩充或缩减。由于内核原因,PE 大小决定了逻 辑卷的最大大小,4 MB 的 PE 决定了单个逻辑卷最大容量为 256 GB,若希望使用大于 256G 的逻辑卷则 创建卷组时指定更大的 PE。PE 大小范围为 8 KB 到 512 MB,并且必须总是 2 的倍数(使用-s 指定,具体 请参考 man vgcreate)。
3) 激活卷组
为了立即使用卷组而不是重新启动系统,可以使用 vgchange 来激活卷组: [root@localhost ~] # vgchange -a y eccdbvg
4) 添加新的物理卷到卷组中
当系统安装了新的磁盘并创建了新的物理卷,而要将其添加到已有卷组时,就需要使用 vgextend 命令: [root@localhost ~]# vgextend eccdbvg /dev/sdb5
扫描当前系统中建立的物理卷,并显示信息。
[root@localhost ~]# pvscan
PV /dev/sda2 VG VolGroup00
lvm2 [19.88 GB / 0 free]
PV /dev/sdb1
lvm2 [4.67 GB]
PV /dev/sdb2
lvm2 [4.67 GB]
Total: 3 [29.21 GB] / in use: 1 [19.88 GB] / in no VG: 2 [9.33 GB]

LINUX下多路径(详细)说课讲解

LINUX下多路径(详细)说课讲解

L I N U X下多路径(详细)LINUX下多路径(multi-path)介绍及使用2013-05-16 11:15:34| 分类:openfiler系统+fr|举报|字号订阅一、什么是多路径普通的电脑主机都是一个硬盘挂接到一个总线上,这里是一对一的关系。

而到了有光纤组成的SAN环境,或者由iSCSI组成的IPSAN环境,由于主机和存储通过了光纤交换机或者多块网卡及IP来连接,这样的话,就构成了多对多的关系。

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

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

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

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

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

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

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

好在, RedHat和Suse的2.6的内核中都自带了免费的多路径软件包,并且可以免费使用,同时也是一个比较通用的包,可以支持大多数存储厂商的设备,即使是一些不是出名的厂商,通过对配置文件进行稍作修改,也是可以支持并运行的很好的。

二、Linux下multipath介绍,需要以下工具包:在CentOS 5中,最小安装系统时multipath已经被安装,查看multipath是否安装如下:1、device-mapper-multipath:即multipath-tools。

Linux多路径配置

Linux多路径配置

一检查是否安装multipathrpm –qa|grep mapper二若未安装,则安装1 配置yum源如果Linux有图形界面,插入系统光盘,双击device-mapper-multipath安装即可2 安装multipath# yum –y install device-mapper device-mapper-multipath3 检查是否安装成功# lsmod |grep dm_multipath4 设置成功开机自启动# chkconfig -–level 2345 multipathd on5 检查multipath服务是否已启动,若未启动,则开启multipath# service multipathd statusmultipathd is stopped# service multipath startmultipathd pid xxxx) is running (5)6 修改配置文件1)查询lun的wwid# scsi_id –-whitelist /dev/sdx2)修改/etc/multipath.conf# vim /etc/multipath.conf将新磁盘WWID 加入到blacklist_exceptionsblacklist_exceptions {wwid "36001438009b0694d0000500000160000"wwid "36001438009b0694d00005000001a0000"}修改multipath{}中的内容如下:Multipaths{multipath {uid 0 //磁盘读所属用户uidgid 0 //磁盘所属组gidwwid "36001438009b0694d0000500000160000" //wwid 号alias data01 //别名,强烈建议使用别名,重启后不会磁盘路径不会改变!mode 0600 //磁盘读写权限}multipath {uid 0gid 0wwid "36001438009b0694d00005000001a0000"alias data02mode 0600}}7重启multipath服务# service multipath restart8 查看多路径软件绑定后的磁盘# multipath –ll9将新磁盘写到/etc/fstab 文件中,实现开机自动挂载10 注意,如果要对磁盘进行格式化,请采用/dev/mapper/[alias]这类设备名进行fdisk fdisk –l或者df –lh查看磁盘分区情况mkfs.ext3 /dev/mapper/[alias]。

Linux 多路径操作指南

Linux 多路径操作指南

ocr1 (14f504e46494c4552454f644d4c522d6f76356e2d65766663) dm-4 OPNFILER,VIRTUAL-DISK [size=3.9G][features=0][hwhandler=0][rw] \_ round-robin 0 [prio=1][active] \_ 1:0:0:2 sdd 8:48 [active][ready] [root@node1 ~]# cd /dev/mapper/ [root@node1 mapper]# ls -lah total 0 drwxr-xr-x 2 root root 540 May 26 12:40 . drwxr-xr-x 15 root root 4.6K May 26 12:40 .. crw------- 1 root root 10, 63 May 26 12:06 control brw-rw---- 1 root disk 253, 2 May 26 12:18 mpath0 brw-rw---- 1 root disk 253, 23 May 26 12:18 mpath0p1 brw-rw---- 1 root disk 253, 3 May 26 12:18 mpath1 brw-rw---- 1 root disk 253, 12 May 26 12:18 mpath10 brw-rw---- 1 root disk 253, 21 May 26 12:18 mpath10p1 brw-rw---- 1 root disk 253, 15 May 26 12:18 mpath1p1 brw-rw---- 1 root disk 253, 5 May 26 12:18 mpath3 brw-rw---- 1 root disk 253, 13 May 26 12:18 mpath3p1 brw-rw---- 1 root disk 253, 6 May 26 12:18 mpath4 brw-rw---- 1 root disk 253, 14 May 26 12:18 mpath4p1 brw-rw---- 1 root disk 253, 7 May 26 12:18 mpath5 brw-rw---- 1 root disk 253, 17 May 26 12:18 mpath5p1 brw-rw---- 1 root disk 253, 8 May 26 12:18 mpath6 brw-rw---- 1 root disk 253, 20 May 26 12:18 mpath6p1 brw-rw---- 1 root disk 253, 9 May 26 12:18 mpath7

linux多路径

linux多路径

Task #5 - Configure multi-path I/O and verifyEnabling Multi-path I/O functionality on RHEL 5 involves the iSCSI initiator, the multipath subsystem and device mapper. This configuration procedure details the steps required to utilize multiple Ethernet interface connections between a RHEL 5.4 server and a PS Series storage array.Before beginning the multi-path I/O configuration, it is recommended that existing iSCSI volumes be unmounted and the iscsiadm record database be empty. Be sure to complete the steps listed in “Task #4 –Delete the Volumes”, above.13 首先查看iscsi软件和device-mapper软件,rpm –qa|grep iscsi命令没有的就安装rpm –ivh iscsi。

Chkconfig iscsi onChkconfig multipathd on然后查看有没有开机启动chkconfig –list iscsi1) Verify there are no active sessions in the iscsi record database:# iscsiadm --mode session 查看有没有路径激活iscsiadm: No active sessions.Note: If there are volumes listed, use the …iscsiadm–o delete‟ command to manually delete the records. Use …iscsiadm –-logoutall=all‟ to logout of all targets before manually deleting the records. Be sure to enter theappropriate iscsi targetname (-T <iqn>).2) Create the interface files for the two Ethernet paths:# iscsiadm --mode iface --interface eth2 -o new 创建两个多路径的连接口New interface eth2 added# iscsiadm --mode iface --interface eth3 -o newNew interface eth3 added3) Add an interface name for the two Ethernet ports. In the test configuration, the interface names are …eth2 and …eth3‟:# iscsiadm --mode iface --interface eth2 -o update --name _ifacename -–value=eth2 这个也是必须的不update的话会造成多路径只走一条路好像eth2 updated.# iscsiadm --mode iface --interface eth3 -o update --name _ifacename -–value=eth3eth3 updated.These commands have created two iscsi interface files, the contents of which should look like these (eth2 and eth3):# iscsiadm -m iface -I eth2 这个是查看你刚才修改的2个文件这两个文件在/var/lib/iscsi/iface/下面会有2个你创建的 eth2,eth3# BEGIN RECORD 2.0-871iface.iscsi_ifacename = eth2_ifacename = eth2iface.ipaddress = <empty>iface.hwaddress = <empty>iface.transport_name = tcpiface.initiatorname = <empty># END RECORD# iscsiadm -m iface -I eth3# BEGIN RECORD 2.0-871iface.iscsi_ifacename = eth3_ifacename = eth3iface.ipaddress = <empty>iface.hwaddress = <empty>iface.transport_name = tcpiface.initiatorname = <empty># END RECORD4) Acquire the iscsi initiator name for your RHEL server:# cat /etc/iscsi/initiatorname.iscsi 这个是你查看你的设备名 eq如果是指IP访问的话没用14 InitiatorName=.redhat:6891f663d4ce5) At this point, the two Ethernet interfaces should be accessible to the iSCSI initiator software running on the RHEL server. In order to utilize both connection paths, the iSCSI volume must have appropriate iSCSI Access settings. Use the PS Group Manager to create a new volume with these settings:Volume name = mpioSize of 50GAccess set to ‟iscsi initiator‟ (use name from above …cat‟ command)6) Discover the new volume from the RHEL server:# iscsiadm –m discovery –t sendtargets –p 10.10.5.10 这个就是触发eq上的卷了10.10.5.10:3260,1.equallogic:0-8a0906-faae66602-9316e11da434c126-mpio10.10.5.10:3260,1.equallogic:0-8a0906-faae66602-9316e11da434c126-mpioNote: two iscsiadm records are listed for the …mpio‟ volume. This is because there are two Ethernet interface records in the iscsiadm DB.7) Login to the newly discovered volume:# iscsiadm -m node -T <iqn> -p 10.10.5.10 --login 把你需要的路径登录上去有vss的可以不用登录,那个只是微软下用的Logging in to [iface: eth2, target:.equallogic:0-8a0906-faae66602-9316e11da434c126-mpio, portal:10.10.5.10,3260]Logging in to [iface: eth3, target:.equallogic:0-8a0906-faae66602-9316e11da434c126-mpio, portal:10.10.5.10,3260]Login to [iface: eth2, target:.equallogic:0-8a0906-faae66602-9316e11da434c126-mpio, portal:10.10.5.10,3260]: successfulLogin to [iface: eth3, target:.equallogic:0-8a0906-faae66602-9316e11da434c126-mpio, portal:10.10.5.10,3260]: successfulNote: that both logins succeeded, one on …eth2‟ and the other on …eth3‟. Completion of this step verifies that the multiple connection paths between the RHEL server and the PS Storage array are active.8) In order to allow multi-path I/O access from the RHEL server, the multipath software on the server needs to be configured. Check the installation status of the multipath package and install (if needed):# yum list | grep multi 这个是查看软件device-mapper-multipath.x86_64 0.4.7-34.el5_5.4 installed9) Setup the server‟s multipath software for the PS Series array by editing the multipath configuration file and starting the multipath daemon. The multipath configuration file (/etc/multipath.conf) contains these sections: blacklist; defaults; multipaths and devices. Devices included in the blacklist section are excluded as15 multipath candidates. The default multipath configuration file blacklists all devices with a blacklist section that looks like this:# Blacklist all devices by default. Remove this to enable# multipathing on the default devices.#blacklist {这个就是黑名单你需要把你不需要做多路径的设备的wwid写进去devnode “*”}The servers multipath daemon should be enabled on the PS Series array, but not on the local scsi disk. In order to accomplish this, the blacklist section of the multipath configuration file needs to be modified. The testconfiguration had one direct attach scsi drive, /dev/sda. The World Wide Identifier (WWID) is a unique and persistent name for a scsi device. The WWID is used to specify this particular device in the multipathconfiguration file. The WWID for /dev/sda on the test configuration was acquired using this command:# scsi_id -g -u -s /block/sda 这个就是你查看本地的磁盘的wwid 用来添加到黑名单中如果fdisk –l 看到sdb的你还要加2个wwid3600508e0000000009d26af2c9525700dNote: an alternative method to obtain the WWID is: “# ls –l /dev/disk/by-id”. The output of which is shown here, with the relevant WWID in RED text:# ls -l /dev/disk/by-id这个我不懂好像是命令行模式下面的记录wwid吧total 0lrwxrwxrwx 1 root root 9 Jul 13 12:43 scsi-3600508e0000000009d26af2c9525700d -> ../../sdalrwxrwxrwx 1 root root 10 Jul 13 12:43scsi-3600508e0000000009d26af2c9525700d-part1 -> ../../sda1lrwxrwxrwx 1 root root 10 Jul 13 12:43scsi-3600508e0000000009d26af2c9525700d-part2 -> ../../sda2lrwxrwxrwx 1 root root 9 Jul 13 12:44 scsi-36090a0286066ee8aa9c124021ee11685 -> ../../sdbUsing this information, the blacklist section of the configuration file was changed to this, excluding the local scsi disk from multipathing:blacklist {wwid 3600508e0000000009d26af2c9525700d 这个就是把你不需要做多路径的设备放进去}Note: Edit the blacklist section for your server, using either a regular expression or WWID to exclude theappropriate devices. Refer to the “Red Hat - DM Multipath Configuration and Administration” document listed in the Revision section of this document for more information on blacklisting devices.10) Continue the multipath software configuration on the server. Edit the …devices‟ section of the multipath configuration file. In the default multipath configuration file, the entire devices section is commented out.Add the following lines for the PS Series array:# BEGIN - PS Series device edits16devices {device {vendor "EQLOGIC" 前两行也不能打错打错也会造成多路径 multipath –ll 不出现2条路径product "100E-00"path_grouping_policy multibus 这个就是多路径模式负载均衡吧getuid_callout "/sbin/scsi_id -g -u -s /block/%n" 这个是你在/dev/mapper/下面出来的文件是以比如说 mpath2啊0啊的 n代表数字features "1 queue_if_no_path" 这个就是如果有1条路径断了之后等待时间path_checker readsector0failback immediate 这个是如果断路径了立即起来failback 不是手动起来path_selector "round-robin 0"rr_min_io 10rr_weight priorities}}# END - PS Series device edits11) Now that the initial edits to the multipath.conf file are complete, restart the multipath daemon:# service multipathd restart 重启服务Stopping multipathd daemon: [FAILED]Starting multipathd daemon: [ OK ]Note: that the …Stopping multipath daemon‟ operation failed because this was the first invocation of themultipathd daemon.12) The Linux device mapper dynamically names it‟s entries (e.g. dm-3, dm-5, …). This means that the device name for an iSCSI volume could vary across reboots, which presents an issue for consistently mounting the filesystem. Fortunately, the multipath subsystem provides a persistent naming scheme in which device mapper names can be consistently associated with an iSCSI volume.Use the multipath command to identify the persistent name for the iSCSI volume:# multipath –ll 查看多路径mpath0 (36090a0286066eebeecbf34c61892e727) dm-3 EQLOGIC,100E-00[size=50G][features=1 queue_if_no_path][hwhandler=0][rw]\_ round-robin 0 [prio=2][active]\_ 19:0:0:0 sdc 8:32 [active][ready]\_ 18:0:0:0 sdd 8:48 [active][ready]Note: the string highlighted in RED text is the WWID, a unique identifier and persistent name for this volume,13) Edit the …multipaths‟ section of the /etc/multipath.conf file to associate this WWID with a more user friendly name for this volume. Add these lines to your multipath configuration file, immediately after the …devices‟ section that was added earlier. Of course, use the WWID for your iSCSI volume:multipaths {multipath {wwid 36090a0286066eebeecbf34c61892e727alias mpio 别名17}}Note: These lines will cause the device-mapper to consistently name the volume …mpio, or more specifically …/dev/mapper/mpio‟. This functionality requires that device mapper …user friendly names‟ are enabled in the defaults section of the multipath.conf file. This is the default setting but you should confirm it by looking for the following setting in the multipath.conf file:## Use user friendly names, instead of using WWIDs as names.defaults {user_friendly_names yes}14) In order to make the multipath daemon recognize these configuration file changes, use the …service reload‟ command:# service multipathd reloadReloading multipathd: [ OK ]15) Run the …multipath –v2‟ command and verify the persistent name entry in the /dev/mapper directory:# multipath -v236090a0286066eebeecbf34c61892e727: rename mpath0 to mpio: mpio (36090a0286066eebeecbf34c61892e727) EQLOGIC,100E-00[size=50G][features=1 queue_if_no_path][hwhandler=0][n/a]\_ round-robin 0 [prio=2][undef]\_ 19:0:0:0 sdc 8:32 [active][ready]\_ 18:0:0:0 sdd 8:48 [active][ready]# ls -l /dev/mappertotal 0crw------- 1 root root 10, 63 Jun 4 14:21 controlbrw-rw---- 1 root disk 253, 3 Jun 10 15:31 mpiobrw------- 1 root root 253, 0 Jun 4 14:22 VolGroup00-LogVol00brw------- 1 root root 253, 1 Jun 4 14:21 VolGroup00-LogVol0116) Verify the configuration using the …dd‟ command. Test that an I/O load is distributed across the two Ethernet paths. Open the PS Group Manager and view the volume named mpio. O pen the …Connections‟ tab and verify that both Ethernet IP addresses are listed. Take note of the …MB Read‟ column, which should be …0 MB‟ for each interface.Execute this dd command:# dd if=/dev/mapper/mpio of=/dev/null bs=4k count=1k iflag=direct1024+0 records in1024+0 records out4194304 bytes (4.2 MB) copied, 0.231391 seconds, 18.1 MB/s18 This command moves 4MB through the iSCSI connection paths. Check the …MB Read‟ column again in the PS Group Manager. Each IP address should read …2 MB‟, i ndicating that the traffic was split across the two connection paths.Debug tips:Start with an empty iscsiadm database = no recordsLogout of targets and delete recordsStart with an empty device-mapper databasemultipath –F (if it fails, use …dmsetup suspend‟, …dmsetup remove‟)Task #6 - Mount an MPIO volume using the persistent nameIn the previous section, multi-path I/O was configured on the RHEL server. This involved changes to the iscsid and multipathd configurations. A persistent name was defined for the volume and the multipath connection was verified using the …dd‟ command, which performs I/O operations on block devices. Now it‟s time to mount the …mpio‟ volume as a filesystem.Note: To ensure that iSCSI volumes being managed by device mapper are correctly and consistently associated with a mount point at boot time, a persistent name should be used. The procedure for defining a persistent name was covered in the previous task. In addition, the reader is referred to the Red Hat document “DM Multipath Configuration and Administration” for more complete coverage of the topic.1) Configure the volume to be mounted at boot time by adding the following line to /etc/fstab:/dev/mapper/mpio /mnt/mpio ext3 _netdev,defaults 0 0 开机自动mount2) Make a filesystem on the new volume. As stated before, the LVM tools could also be used to initialize the volume and assign the space to a logical volume:# mke2fs –j –L mpio –v /dev/mapper/mpio 格式化文件格式mke2fs 1.39 (29-May-2006)Filesystem label=mpioOS type: LinuxBlock size=4096 (log=2)Fragment size=4096 (log=2)6557152 inodes, 13109760 blocks655488 blocks (5.00%) reserved for the super userFirst data block=0Maximum filesystem blocks=4294967296401 block groups32768 blocks per group, 32768 fragments per group16352 inodes per groupSuperblock backups stored on blocks:32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624, 11239424Writing inode tables: doneCreating journal (32768 blocks): doneWriting superblocks and filesystem accounting information: done19 This filesystem will be automatically checked every 37 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override.3) Mount the volume and verify the volume size with the …df‟ command. You could also reboot the server and verify that the volume is mounted correctly at boot time:# mount -t ext3 /dev/mapper/mpio /mnt/mpio# dfFilesystem 1K-blocks Used Available Use% Mounted on/dev/mapper/VolGroup00-LogVol0050786940 3615548 44549952 8% //dev/sda1 101086 12538 83329 14% /boottmpfs 8216020 0 8216020 0% /dev/shm/dev/mapper/mpio 51615928 184272 48809704 1% /mnt/mpio。

linux redhat multipath磁盘分区使用及多路径测试方法

linux redhat multipath磁盘分区使用及多路径测试方法

1、查看/dev/mapper下的设备,其中mpathn是多路径映射的设备2、对mpathn进行分区,使用parted进行分区[root@localhost mapper]# cd[root@localhost ~]# parted /dev/mapper/mpath13GNU Parted 1.8.1Using /dev/mapper/mpath13Welcome to GNU Parted! Type 'help' to view a list of commands.(parted) helpcheck NUMBER do a simple check on the file systemcp [FROM-DEVICE] FROM-NUMBER TO-NUMBER copy file system to another partition help [COMMAND] prints general help, or help on COMMAND mklabel,mktable LABEL-TYPE create a new disklabel (partition table)mkfs NUMBER FS-TYPE make a FS-TYPE file system on partititon NUMBERmkpart PART-TYPE [FS-TYPE] START END make a partitionmkpartfs PART-TYPE FS-TYPE START END make a partition with a file systemmove NUMBER START END move partition NUMBERname NUMBER NAME name partition NUMBER as NAMEprint [free|NUMBER|all] display the partition table, a partition,or all devicesquit exit programrescue START END rescue a lost partition near START and ENDresize NUMBER START END resize partition NUMBER and its file systemrm NUMBER delete partition NUMBERselect DEVICE choose the device to editset NUMBER FLAG STATE change the FLAG on partition NUMBER toggle [NUMBER [FLAG]] toggle the state of FLAG on partition NUMBERunitUNIT set the default unit to UNITversion displays the current version of GNU Parted and copyright information(parted) mkpartPartition type?primary/extended? pFile system type? [ext2]? ext3Start? 1End? 1(parted) mkpartPartition type?primary/extended? pFile system type? [ext2]? ext3Start? 1End? 3000(parted) printModel: Linux device-mapper (dm)Disk /dev/mapper/mpath13: 322GBSector size (logical/physical): 512B/512BPartition Table: msdosNumber Start End Size Type File system Flags1 0.51kB 1000kB1000kB primary2 1000kB 3000MB 2999MB primary(parted) mkpartPartition type?primary/extended? pFile system type? [ext2]? ext3Start? 1End? 102400Warning: You requested a partition from 1000kB to 102GB.The closest location we can manage is 3002MB to 102GB. Is this still acceptable to you?Yes/No?Yes/No?yes(parted) namePartition number? 1Error: msdos disk labels do not support partition names.Partition name? 3Error: msdos disk labels do not support partition names.(parted) printModel: Linux device-mapper (dm)Disk /dev/mapper/mpath13: 322GBSector size (logical/physical): 512B/512BPartition Table: msdosNumber Start End Size Type File system Flags1 0.51kB 1000kB1000kB primary2 1000kB 3000MB 2999MB primary3 3002MB 102GB 99.4GB primary(parted) quitInformation: Don't forget to update /etc/fstab, if necessary.[root@localhost ~]# fdisk -lDisk /dev/sda: 291.9 GB, 291999055872 bytes255 heads, 63 sectors/track, 35500 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytesDevice Boot Start End Blocks Id System/dev/sda1 * 1 13 104391 83 Linux/dev/sda2 14 35500 285049327+ 8e Linux LVMDisk /dev/sdb: 322.1 GB, 322122547200 bytes255 heads, 63 sectors/track, 39162 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytesDisk /dev/sdb doesn't contain a valid partition tableDisk /dev/sdc: 322.1 GB, 322122547200 bytes255 heads, 63 sectors/track, 39162 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytesDisk /dev/sdc doesn't contain a valid partition tableDisk /dev/dm-2: 322.1 GB, 322122547200 bytes255 heads, 63 sectors/track, 39162 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytesDevice Boot Start End Blocks Id System/dev/dm-2p1 1 1 976+ 83 Linux Partition 1 does not end on cylinder boundary./dev/dm-2p2 1 365 2928711 83 Linux Partition 2 does not end on cylinder boundary./dev/dm-2p3 366 12449 97064730 83 LinuxDisk /dev/dm-3: 322.1 GB, 322122547200 bytes255 heads, 63 sectors/track, 39162 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytesDevice Boot Start End Blocks Id SystemDisk /dev/sdd: 322.1 GB, 322122547200 bytes255 heads, 63 sectors/track, 39162 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytesDisk /dev/sdd doesn't contain a valid partition tableDisk /dev/sde: 322.1 GB, 322122547200 bytes255 heads, 63 sectors/track, 39162 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytesDisk /dev/sde doesn't contain a valid partition table[root@localhost ~]# cd /dev/mapper[root@localhost mapper]# lscontrol mpath13p1mpath13p3 VolGroup01-LogVol00mpath13mpath13p2 mpath14 VolGroup01-LogVol01[root@localhost mapper]# mkfs.ext3 /dev/mapper/mpath13p3mke2fs 1.39 (29-May-2006)Filesystem label=OS type: LinuxBlock size=4096 (log=2)Fragment size=4096 (log=2)12140544 inodes, 24266182 blocks1213309 blocks (5.00%) reserved for the super userFirst data block=0Maximum filesystem blocks=4294967296741 block groups32768 blocks per group, 32768 fragments per group16384 inodes per groupSuperblock backups stored on blocks:32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,4096000, 7962624, 11239424, 20480000, 23887872Writing inode tables: doneCreating journal (32768 blocks): doneWriting superblocks and filesystem accounting information:doneThis filesystem will be automatically checked every 24 mounts or180 days, whichever comes first. Use tune2fs -c or -i to override.[root@localhost mapper]#[root@localhost mapper]# cd[root@localhost ~]# lsa iometer-2006_07_27.linux.i386-binanaconda-ks.cfg iometer-2006_07_27.linux.i386-bin.tgzinstall.log iscsi-initiator-utils-6.2.0.871-0.16.el5.x86_64.rpminstall.log.syslog[root@localhost ~]# mount /dev/mapper/mpath13p3 a**将mpath13p3挂载到目录a下[root@localhost ~]# lsa iometer-2006_07_27.linux.i386-binanaconda-ks.cfg iometer-2006_07_27.linux.i386-bin.tgzinstall.log iscsi-initiator-utils-6.2.0.871-0.16.el5.x86_64.rpminstall.log.syslog[root@localhost ~]# cd a[root@localhost a]# lslost+found下面对mpath13p3进行读写测试和链路切换测试路径冗余测试-linux1、使用dd进行读写测试2、查看实时IO状态,3、拔掉客户端一根网线,查看io变化。

multipath -ll详解

multipath -ll详解

multipath -ll详解
multipath -ll是一个用于显示Linux系统上多路径设备信息
的命令。

在多路径设备中,数据可以通过多个路径进行传输,从而
提高系统的可靠性和性能。

下面我会从多个角度来详细解释这个命令。

首先,multipath -ll命令可以列出系统中所有的多路径设备
及其关联的路径信息。

它会显示每个多路径设备的名称、状态、关
联的物理路径、路径状态、以及设备的大小等信息。

这可以帮助系
统管理员了解系统中多路径设备的情况,包括设备的健康状态和可
用路径的数量。

其次,multipath -ll命令还可以用于诊断多路径设备的问题。

通过查看设备的路径状态和相关信息,管理员可以判断出是否有路
径出现故障或者异常,从而及时采取措施进行修复。

这有助于提高
系统的稳定性和可靠性。

另外,multipath -ll命令还可以用于配置和管理多路径设备。

管理员可以通过该命令查看设备的配置信息,包括设备的别名、路
径优先级、超时设置等。

这些信息对于调整多路径设备的行为和性
能非常有帮助。

除此之外,multipath -ll命令还可以用于监控系统中的多路径设备。

通过定期运行该命令并分析输出结果,管理员可以及时发现设备和路径的变化,以及潜在的问题和风险。

这有助于提高系统的可用性和可维护性。

综上所述,multipath -ll命令是一个非常有用的工具,它可以帮助管理员了解、诊断、配置和监控系统中的多路径设备。

通过充分利用该命令,管理员可以更好地管理和维护多路径设备,从而提高系统的可靠性和性能。

RHEL ENTERPRISE 6.4 多路径软件multi-path配置操作手册

RHEL ENTERPRISE 6.4 多路径软件multi-path配置操作手册

RHEL ENTERPRISE 6.4 多路径软件multi-path配置操作手册目录一、什么是多路径 (1)1.1 多路径的主要功能 (1)1.2 UUID的作用及意义 (2)二、Linux下multipath介绍 (2)2.1 查看multipath是否安装 (2)2.2 Linux下multipath需要以下工具包介绍 (2)三、multipath在Redhat中的基本配置过程 (3)3.1 安装和加载多路径软件包 (3)3.2 设置开机启动 (4)3.3 生成multipath配置文件 (4)四、multipath 高级配置 (4)4.1 获取存储设备的UUID/wwid和路径 (5)4.2 配置/etc/multipath.conf 文件例子 (5)4.3 关于:scsi_id (8)五、multipath 基本命令 (8)六、multipath.conf配置文件说明 (9)七、对multipath磁盘的基本操作 (10)八、使用multipath的一个例子 (12)九、PV/VG/LV常用操作命令 (12)十、使用udev配置固定iSCSI磁盘设备名称 (16)一、什么是多路径普通的电脑主机都是一个硬盘挂接到一个总线上,这里是一对一的关系。

而到了有光纤组成的SAN 环境,或者由iSCSI组成的IPSAN环境,由于主机和存储通过了光纤交换机或者多块网卡及IP来连接,这样的话,就构成了多对多的关系。

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

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

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

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

multipath 删除路径

multipath 删除路径

multipath 删除路径1. 什么是多路径技术多路径技术是一种用于提高存储系统可用性和性能的技术。

在传统的存储系统中,数据通常通过单个路径进行传输。

如果该路径出现故障或拥塞,将导致数据传输中断或延迟,从而影响系统的可用性和性能。

而多路径技术通过使用多个路径来传输数据,可以提高系统的冗余和负载均衡能力,从而提高系统的可用性和性能。

2. 多路径技术的应用场景多路径技术广泛应用于存储系统、网络和计算机集群等领域。

下面介绍几个常见的应用场景:2.1 存储系统在存储系统中,多路径技术可以提供冗余路径,当主路径出现故障时,可以自动切换到备用路径,保证数据的连续性和可用性。

同时,多路径技术还可以通过负载均衡的方式,将数据均匀地分布到多个路径上,提高数据的传输速度和系统的整体性能。

2.2 网络在网络中,多路径技术可以提供冗余路径,当主路径出现故障时,可以自动切换到备用路径,保证网络的连通性和可用性。

同时,多路径技术还可以通过负载均衡的方式,将数据均匀地分布到多个路径上,提高网络的带宽利用率和传输效率。

2.3 计算机集群在计算机集群中,多路径技术可以提供冗余路径,当主节点出现故障时,可以自动切换到备用节点,保证集群的连续性和可用性。

同时,多路径技术还可以通过负载均衡的方式,将任务均匀地分布到多个节点上,提高集群的计算能力和响应速度。

3. 多路径技术的实现方式多路径技术的实现方式有多种,下面介绍几种常见的实现方式:3.1 路由器级别的多路径技术在路由器级别的多路径技术中,路由器通过同时使用多个路径来传输数据。

路由器可以根据路径的负载情况和性能指标,动态地选择最优的路径进行数据传输。

这种方式可以提高网络的带宽利用率和传输效率。

3.2 存储系统级别的多路径技术在存储系统级别的多路径技术中,存储系统通过同时使用多个路径来传输数据。

存储系统可以根据路径的负载情况和性能指标,动态地选择最优的路径进行数据传输。

这种方式可以提高存储系统的冗余和负载均衡能力。

LINUX下多路径(multi-path)介绍及使用

LINUX下多路径(multi-path)介绍及使用

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

而到了有光纤组成的SAN环境,或者由iSCSI组成的IPSAN环境,由于主机和存储通过了光纤交换机或者多块网卡及IP来连接,这样的话,就构成了多对多的关系。

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

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

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

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

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

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

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

好在, RedHat和Suse的2.6的内核中都自带了免费的多路径软件包,并且可以免费使用,同时也是一个比较通用的包,可以支持大多数存储厂商的设备,即使是一些不是出名的厂商,通过对配置文件进行稍作修改,也是可以支持并运行的很好的。

二、Linux下multipath介绍,需要以下工具包:在CentOS 5中,最小安装系统时multipath已经被安装,查看multipath是否安装如下:1、device-mapper-multipath:即multipath-tools。

主要提供multipathd和multipath 等工具和 multipath.conf等配置文件。

这些工具通过device mapper的ioctr的接口创建和配置multipath设备(调用device-mapper的用户空间库。

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

LINUX下多路径(multi-path)介绍及使用一、什么是多路径普通的电脑主机都是一个硬盘挂接到一个总线上,这里是一对一的关系。

而到了有光纤组成的SAN环境,或者由iSCSI组成的IPSAN环境,由于主机和存储通过了光纤交换机或者多块网卡及IP来连接,这样的话,就构成了多对多的关系。

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

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

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

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

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

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

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

好在,RedHat和Suse的2.6的内核中都自带了免费的多路径软件包,并且可以免费使用,同时也是一个比较通用的包,可以支持大多数存储厂商的设备,即使是一些不是出名的厂商,通过对配置文件进行稍作修改,也是可以支持并运行的很好的。

二、Linux下multipath介绍,需要以下工具包:在CentOS 5中,最小安装系统时multipath已经被安装,查看multipath是否安装如下:1、device-mapper-multipath:即multipath-tools。

主要提供multipathd和multipath等工具和multipath.conf等配置文件。

这些工具通过device mapper的ioctr的接口创建和配置multipath 设备(调用device-mapper的用户空间库。

创建的多路径设备会在/dev /mapper中)。

2、device-mapper:主要包括两大部分:内核部分和用户部分。

内核部分主要由device mapper 核心(dm.ko)和一些target driver(md-multipath.ko)。

核心完成设备的映射,而target根据映射关系和自身特点具体处理从mappered device 下来的i/o。

同时,在核心部分,提供了一个接口,用户通过ioctr可和内核部分通信,以指导内核驱动的行为,比如如何创建mappered device,这些divece的属性等。

linux device mapper的用户空间部分主要包括device-mapper 这个包。

其中包括dmsetup工具和一些帮助创建和配置mappered device的库。

这些库主要抽象,封装了与ioctr通信的接口,以便方便创建和配置mappered device。

multipath-tool的程序中就需要调用这些库。

3、dm-multipath.ko和dm.ko:dm.ko是device mapper驱动。

它是实现multipath的基础。

dm-multipath其实是dm的一个target驱动。

4、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是否已经成功得到。

三、multipath在CentOS 5中的基本配置过程:1、安装和加载多路径软件包# yum –y install device-mapper device-mapper-multipath# chkconfig –level 2345 multipathd on #设置成开机自启动multipathd# lsmod |grep dm_multipath #来检查安装是否正常如果模块没有加载成功请使用下列命初始化DM,或重启系统---Use the following commands to initialize and start DM for the first time:# modprobe dm-multipath# modprobe dm-round-robin# service multipathd start# multipath –v22、配置multipath:Multipath的配置文件是/etc/multipath.conf , 如需要multipath正常工作只需要如下配置即可:(如果需要更加详细的配置,请看本文后续的介绍)blacklist {devnode "^sda"}defaults {user_friendly_names yespath_grouping_policy multibusfailback immediateno_path_retry fail}# vi /etc/multipath.conf3、multipath基本操作命令# /etc/init.d/multipathd start #开启mulitipath服务# multipath -F #删除现有路径# multipath -v2 #格式化路径# multipath -ll #查看多路径如果配置正确的话就会在/dev/mapper/目录下多出mpath0、mpath1等之类设备。

用fdisk -l命令可以看到多路径软件创建的磁盘,如下图中的/dev/dm-[0-3]4、multipath磁盘的基本操作要对多路径软件生成的磁盘进行操作直接操作/dev/mapper/目录下的磁盘就行. 在对多路径软件生成的磁盘进行分区之前最好运行一下pvcreate命令:# pvcreate /dev/mapper/mpath0# fdisk /dev/mapper/mpath0用fdisk对多路径软件生成的磁盘进行分区保存时会有一个报错,此报错不用理会。

fdisk对多路径软件生成的磁盘进行分区之后,所生成的磁盘分区并没有马上添加到/dev/目录下,此时我们要重启IPSAN或者FCSAN的驱动,如果是用iscsi-initiator来连接IPSAN 的重启ISCSI服务就可以发现所生成的磁盘分区了# service iscsi restart# ls -l /dev/mapper/如上图中的mpath0p1和mpath1p1就是我们对multipath磁盘进行的分区# mkfs.ext3 /dev/mapper/mpath0p1 #对mpath0p1分区格式化成ext3文件系统# mount /dev/mapper/mpath0p1 /ipsan/ #挂载mpath0p1分区# mkfs.ext3 /dev/mapper/mpath1p1 #对mpath1p1分区格式化成ext3文件系统# mount /dev/mapper/mpath1p1 /ipsan/ #挂载mpath1p1分区2个都要格式化,2个路径都挂在一个挂载点,可能是这样!!!这个还需要弄清楚。

四、multipath的高有配置以上都是用multipath的默认配置来完成multipath的配置,比如映射设备的名称,multipath 负载均衡的方法都是默认设置。

那有没有按照我们自己定义的方法来配置multipath呢,当可以。

1、multipath.conf文件的配置接下来的工作就是要编辑/etc/multipath.conf的配置文件multipath.conf主要包括blacklist、multipaths、devices三部份的配置blacklist配置blacklist {devnode "^sda"}Multipaths部分配置multipaths和devices两部份的配置。

multipaths {multipath {wwid **************** #此值multipath -v3可以看到alias iscsi-dm0 #映射后的别名,可以随便取path_grouping_policy multibus #路径组策略path_checker tur #决定路径状态的方法path_selector "round-robin 0" #选择那条路径进行下一个IO操作的方法}}Devices部分配置devices {device {vendor "iSCSI-Enterprise" #厂商名称product "Virtual disk" #产品型号path_grouping_policy multibus #默认的路径组策略getuid_callout "/sbin/scsi_id -g -u -s /block/%n" #获得唯一设备号使用的默认程序prio_callout "/sbin/acs_prio_alua %d" #获取有限级数值使用的默认程序path_checker readsector0 #决定路径状态的方法path_selector "round-robin 0" #选择那条路径进行下一个IO操作的方法failback immediate #故障恢复的模式no_path_retry queue #在disable queue之前系统尝试使用失效路径的次数的数值rr_min_io 100 #在当前的用户组中,在切换到另外一条路径之前的IO 请求的数目}如下是一个完整的配置文件blacklist {devnode "^sda"}defaults {user_friendly_names no}multipaths {multipath {wwid 14945540000000000a67854c6270b4359c66c272e2f356321alias iscsi-dm0path_grouping_policy multibuspath_checker turpath_selector "round-robin 0"}multipath {wwid 14945540000000000dcca2eda91d70b81edbcfce2357f99eealias iscsi-dm1path_grouping_policy multibuspath_checker turpath_selector "round-robin 0"}multipath {wwid 1494554000000000020f763489c165561101813333957ed96alias iscsi-dm2path_grouping_policy multibuspath_checker turpath_selector "round-robin 0"}multipath {wwid 14945540000000000919ca813020a195422ba3663e1f03cc3alias iscsi-dm3path_grouping_policy multibuspath_checker turpath_selector "round-robin 0"}}device {vendor "iSCSI-Enterprise"product "Virtual disk"path_grouping_policy multibusgetuid_callout "/sbin/scsi_id -g -u -s /block/%n"path_checker readsector0path_selector "round-robin 0"}}获取wwid的方法:(1)默认情况下,将使用/var/lib/multipath/bindings 内的配置设定具体每个多路径设备名,如果在/etc/multipath.conf中有设定各wwid 别名,别名会覆盖此设定。

相关文档
最新文档