multipath多路径实验01

跟同事网上闲聊技术,吐槽之前自己没有配置过多路径的经历,虽然多路径的配置过程很简单,职责划分也应是主机或存储工程师来搞定,DBA只需要直接拿来用,但这样总感觉少了些踏实感。

本着学习的心态,在虚拟环境下模拟,来做一个多路径的实验。
本文主要描述使用iscsi模拟存储划出的1个LUN,最终由两条链路连接到主机,显示为两个磁盘的场景。为后续配置multipath提供前置环境。

•1.模拟主机环境
•2.准备软件环境
•3.模拟存储加盘
•4.配置iSCSI服务端
•5.配置iSCSI客户端

1.模拟主机环境

首先虚拟一个linux服务器,用作搭建iSCSI服务器。然后客户端直接就使用我之前的一套RAC环境的第1个节点,在这里就相当于普普通通的一个iSCSI客户端。

要求如下:
 客户端(192.168.56.150),需要新增配置两块网卡;
服务端(192.168.56.99),需要新增配置两块网卡.

这里实际使用Virtual Box给每台机器新增两个内部网络即可。

客户端配置2块网卡:
--复制现有网卡配置
[root@jyrac1 network-scripts]# cat ifcfg-eth3
DEVICE=eth3
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=static
IPADDR=10.10.10.11
NETMASK=255.255.255.0
[root@jyrac1 network-scripts]# cp ifcfg-eth3 ifcfg-eth4
[root@jyrac1 network-scripts]# cp ifcfg-eth3 ifcfg-eth5

--修改DEVICE名称和IPADDR信息,其他不变
eth4 10.10.1.150
eth5 10.10.2.150

--启动新配置的两块网卡
ifup eth4
ifup eth5

这里的eth4和eth5可以想象成是和存储连接的内部网络。

服务端配置2块网卡:
--复制现有网卡配置
[root@Storage network-scripts]# cat ifcfg-eth2
DEVICE=eth2
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.56.99
NETMASK=255.255.255.0
[root@Storage network-scripts]# cp ifcfg-eth2 ifcfg-eth3
[root@Storage network-scripts]# cp ifcfg-eth2 ifcfg-eth4

--修改DEVICE名称和IPADDR信息,其他不变
eth3 10.10.1.99
eth4 10.10.2.99

--启动新配置的两块网卡
ifup eth3
ifup eth4

测试服务端和客户端的IP互通没问题。

2.准备软件环境

各自安装scsi相关的软件包。

引用鸟哥的iSCSI搭建说明:


scsi-target-utils:用來將 Linux 系統模擬成為 iSCSI target 的功能;
iscsi-initiator-utils:掛載來自 target 的磁碟到 Linux 本機上。

这样我们就知道服务端需要安装scsi-target-utils这个包,客户端需要安装iscsi-initiator-utils这个包。
 现在来直接yum安装对应软件,如果yum本地源配置有问题,可以参考之前文章:
 配置yum本地源:

--服务端
yum安装scsi-target-utils
yum install scsi-target-utils

--客户端
yum安装iscsi-initiator-utils
yum install iscsi-initiator-utils

3.模拟存储加盘

--服务端操作

填加一个50G的盘,实际就是用来模拟存储新增实际的一块盘。我这里选择固定大小存储50G。
 我这里新增加的盘显示为/dev/sdb,我将它创建成lvm,并先分出一个10g的lv,供后续使用。
[root@Storage ~]# pvcreate /dev/sdb
  Physical volume "/dev/sdb" successfully created
[root@Storage ~]# vgcreate vg_storage /dev/sdb
  Volume group "vg_storage" successfully created
[root@Storage ~]# lvcreate -L 10g -n lv_lun1 vg_storage
  Logical volume "lv_lun1" created

lvm的信息:
[root@Storage ~]# pvs
  PV        VG          Fmt  Attr PSize  PFree
  /dev/sda2  vg_linuxbase lvm2 a--  29.51g    0
  /dev/sdb  vg_storage  lvm2 a--  50.00g 40.00g
[root@Storage ~]# vgs
  VG          #PV #LV #SN Attr  VSize  VFree
  vg_linuxbase  1  2  0 wz--n- 29.51g    0
  vg_storage    1  1  0 wz--n- 50.00g 40.00g
[root@Storage ~]# lvs
  LV      VG          Attr      LSize  Pool Origin Data%  Move Log Cpy%Sync Convert
  lv_root vg_linuxbase -wi-ao---- 27.54g                                           
  lv_swap vg_linuxbase -wi-ao----  1.97g                                           
  lv_lun1 vg_storage  -wi-a----- 10.00g       
[root@Storage ~]# lvscan
  ACTIVE            '/dev/vg_storage/lv_lun1' [10.00 GiB] inherit
  ACTIVE            '/dev/vg_linuxbase/lv_root' [27.54 GiB] inherit
  ACTIVE            '/dev/vg_linuxbase/lv_swap' [1.97 GiB] inherit

从上面LVM相关信息的输出可以看到,我这里新建的lv已经是正常状态,可以理解成为模拟存储上划分出的一个10g大小的LUN。

4.配置iSCSI服务端

iSCSI服务端主要配置文件:/etc/tgt/targets.conf

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/12418.html