技术小站

Linux下多路径Multipath的简单配置

Linux下多路径Multipath的简单配置

 

1、启用Multipath

1)启动multipathd服务
  #service multipathd start 
或者 #/etc/init.d/multipathd start



2)修改multipath配置文件/etc/multipath.conf
  a 
默认情况下所以的设备都在multipath的黑名单中,所以即使启动了multipathd服务并加在了内核模块,multipath也不会对链路进行聚合,找到下面的3行并注释掉(在行首加上#号)
  #devnode_blacklist {
  #      devnode "*"
  #}
  b 
默认情况下multipath生成dm设备之后,会同时在/dev/mapper/下生成以磁盘wwid为名的符号链接指向对应的dm设备。如果想生成mpath设备,则需要打开user_friendly_names选项,将配置文件中下面3行的注释取消(去掉行首的#号)
  defaults {
      user_friendly_names yes
  }


3)重启multipathd服务(修改multipath.conf文件之后都应该重启multipath服务)

4)扫描磁盘
  #multipath -v2
    
使用上面命令之后,系统中会出现链路聚合之后的dm设备,同时也会在/dev/mapper//dev/mpath/目录下生成相应的设备。
    
查看multipath拓扑结构
  #multipath -ll
    
另外一个重要的文件是/var/lib/multipath/bindings,这个文件中是磁盘的别名和wwid的对应关系,典型的例子是:
  mpath0 3600508b4000c3af700008000002d0000

5)需要注意的问题,multipath也会为本地的磁盘生成相应的dm设备,所以需要在multipath.conf中将本地磁盘加入到黑名单,配置的方法可以参考下面的示例
  devnode_blacklist {
          wwid 36005076b08164f4011ae88b23efb95fe
      devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
      devnode "^hd[a-z]"
  }
    
如上例所示,可以通过wwid或者设备名将本地磁盘加入到黑名单中。

2、固定multipath设备的命名:
通过wwid和设备别名一一对应的方式固定multipath设备的名称,这些和别名对应的设备会被创建到/dev/mapper/目录下,使用时直接使用这个目录的的设备。


1)通过/var/lib/multipath/bindings可以获取所有磁盘的wwid,确定每个磁盘的别名之后,在/etc/multipath.conf中的multipaths段中加入相应的配置,如将wwid3600508b4000c3b910000c00000330000的磁盘命名为etl01wwid3600508b4000c3b910000c00000390000的磁盘命名为etl02,配置文件如下所示
multipaths {
  multipath {
      wwid 3600508b4000c3b910000c00000330000
      alias etl01
  }
  multipath {
      wwid 3600508b4000c3b910000c00000390000
      alias etl02
  }
}


2)配置完成之后,重启multipathd服务,使用下面的命令清空已有的multipath记录
  #multipath -F
    
然后使用multipath -v2重新扫描设备,这时会在/dev/mapper/目录下生成和别名对应的设备文件。
  #ls /dev/mapper/
  control etl01 eth02


3)如果多台服务器的存储链路完全相同,并希望各服务器上同一磁盘的设备名相同,可以在一台服务器上配置好别名绑定之后,将multipaths { }中间的配置复制到其他服务器,这样各台服务器/dev/mapper/下面的设备将会保持一致。



# multipath  -ll 

会看到类似下面的信息:

 

mpath0 (360060e80058e980000008e9800000007) 

[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] 

\_ round-robin 0 [prio=1][enabled] 

\_ 5:0:0:7  sdbk 67:224 [active][ready] 

\_ round-robin 0 [prio=1][enabled] 

\_ 2:0:0:7  sdi  8:128  [active][ready] 

这说明,已由四条链路

sdaa/sdas/sdbk/sdi

复合成一条链路,设备名为

mpath0

 

状态正常的话,把

multipathd

设置为自启动:

 

# chkconfig multipathd on 

# mkdir /oradata 

# mkfs.ext3 /dev/mapper/mpath0 

# mkfs.ext3 /dev/mapper/mpath1 

# blkid /dev/mapper/mpath0 

 

生成该存储设备的

UUID 

# blkid /dev/mapper/mpath1 

# vim /etc/fstab 

 

(

修改该配置文件并添加如下

UUID=47931c90-140b-45fe-9dfa-5a0f56810db3 /oradata   ext3    defaults  0 0 

保存退出

 

# mount -a


我配置过的一个 multipath.conf文件

# multipath.conf written by anaconda

defaults {
	user_friendly_names yes
}
blacklist {
        devnode "^sda"
 	devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]"
	devnode "^hd[a-z]"
	devnode "^dcssblk[0-9]*"
	device {
		vendor "DGC"
		product "LUNZ"
	}
	device {
		vendor "IBM"
		product "S/390.*"
	}
	# don't count normal SATA devices as multipaths
	device {
		vendor  "ATA"
	}
	# don't count 3ware devices as multipaths
	device {
		vendor  "3ware"
	}
	device {
		vendor  "AMCC"
	}
	# nor highpoint devices
	device {
		vendor  "HPT"
	}
	wwid "3600605b005b8812019307e740f15a897"
	device {
		vendor IBM_SATA
		product DEVICE_81Y3657
	}
	wwid "*"
}
blacklist_exceptions {
	wwid "360080e50002c74ee00000865519c22bf"
	wwid "360050763008182d11800000000000007"
}
multipaths {
	multipath {
		uid 0
		gid 0
		wwid "360080e50002c74ee00000865519c22bf"
		mode 0600
	}
}
multipaths {
	multipath {
		uid 0
		gid 0
		wwid "360050763008182d11800000000000007"
		mode 0600
	}
}



原创文章请注明转载自技术小站本文地址:http://www.i5i6.net/post/12.html,标题:Linux下多路径Multipath的简单配置

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

【我来说两句】
分享到:

精彩推荐:

相关文章:

CentOS 7 Linux samba 文件共享  (2022-11-5 19:31:25)

Centos 7 下 pure-ftpd搭建ftp服务器  (2022-5-9 9:56:0)

CentOS Linux系统通过串口console口连接配置网络设备  (2022-2-15 8:5:52)

CentOS 7 单用户修改root密码  (2021-5-25 10:37:24)

redhat 6.5 安装oracle 11gR2 完全手册 图文教程  (2017-9-11 15:20:9)

联想ThinkServer服务器安装CentOS7 Redhat7系统 驱动R110i RAID卡  (2017-4-12 17:27:17)

Linux 下 iSCSI存储开机自动挂载  (2017-3-27 13:42:36)

Linux xfs文件系统 格式化超过16T分区  (2016-10-30 19:46:44)

centos7 rhel7安装配置vnc server  (2016-4-19 8:40:22)

CentOS 7 and RedHat 7 时间同步即chrony服务配置  (2016-4-16 16:58:7)

评论 0