模拟linux 双网卡双ip,实现multipath多路径连接存储

模拟linux 双网卡双ip,实现multipath多路径连接存储

系统(Centos6.5:oracle-1):

eth0:192.168.21.23/24

eth1:172.16.112.17/24

存储Ip:  192.168.21.230

首先要配置iscsi存储,再其次一下操作,我这里配置了两个ISCIS存储

网卡路由配置

由于只能有一个网关,所以要添加静态路由实现双网卡通信

1、编辑网卡eth0,eth1

设置好配置文件,不添加默认网关

# vi /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0

TYPE=Ethernet

ONBOOT=yes

NM_CONTROLLED=yes

BOOTPROTO=static

IPADDR=192.168.21.23

NETMASK=255.255.255.0

# vi /etc/sysconfig/network-scripts/ifcfg-eth1

DEVICE=eth1

TYPE=Ethernet

ONBOOT=yes

NM_CONTROLLED=yes

BOOTPROTO=static

IPADDR=172.16.112.17

NETMASK=255.255.255.0

2、配置默认网关为任意一个,这个默认网关,决定了系统主动去使用网络时,使用的接口

修改配置文件

# vi /etc/sysconfig/network

NETWORKING=yes

HOSTNAME=oracle-1.localdomain

#NTPSERVERARGS=iburst

GATEWAYDEV=eth0

3、添加路由表

# echo “21 net_21” >>/etc/iproute2/rt_tables

# echo “112 net_112” >>/etc/iproute2/rt_tables

4、添加原路返回路由

# ip route flush table net_21

# ip route add default via 192.168.21.1 deveth0 src 192.168.21.23 table net_21

# ip rule add from 192.168.21.23 tablenet_21

# ip route flush table net_112

# ip route add default via 172.16.112.1 deveth1 src 172.16.112.17 table net_112

# ip rule add from 172.16.112.17 tablenet_112

5、在其他机验证是否可以ping通这两个ip

# ping 192.168.21.23

# ping 172.16.112.17

6、实现开机自动添加路由

# cat >> /etc/rc.local << Eof

>ip route flush table net_21

>ip route add default via 192.168.21.1dev eth0 src 192.168.21.23 table net_21

>ip rule add from 192.168.21.23 tablenet_21

>ip route flush table net_112

>ip route add default via 172.16.112.1dev eth1 src 172.16.112.17 table net_112

>ip rule add from 172.16.112.17 tablenet_112

>Eof

 

安装ISCSI存储发起程序

1、yum安装iscsi

# yum -y install iscsi-initiator-utils

# chkconfig iscsi on

2、建立两个iscsi发起文件

# iscsiadm -m iface -I iscsi_eth0 --op=new

# iscsiadm -m iface -I iscsi_eth1 --op=new

3、建立网卡映射关系

# iscsiadm -m iface -I iscsi_eth0--op=update -n iface.net_ifacename -v eth0

# iscsiadm -m iface -I iscsi_eth1--op=update -n iface.net_ifacename -v eth1

4、Iscsi存储发现

# iscsiadm -m discovery -t sendtargets -p192.168.21.230:3260

5、重启iscsi服务,之后查看磁盘连接情况(可以看到已经成功连接上了)

# service iscsi restart

# iscsiadm -m session

安装multipath多路径挂载磁盘

1、yum安装multipath

# yum install -y device-mapper-persistent-data device-mapper-multipathdevice-mapper-libs device-mapper-event-libs device-mapper-multipath-libsdevice-mapper device-mapper-event

2、加载multipath模块

# modprobe dm-multipath

# modprobe dm-round-robin

3、创建multipath配置文件

# cat > /etc/multipath.conf << Eof

>defaults {

>      user_friendly_names yes

>}

>Eof

4、查看挂载存储的uid号(因为是多路径,所以会出现两个相同的uid号)

# multipath -v3 | grep uid

Jan 18 16:29:59 | sdb: getuid = /lib/udev/scsi_id --whitelisted--device=/dev/%n (config file default)

Jan 18 16:29:59 | sdb: uid = 36001405a75df6ded0277d3bf3dae7ddb(callout)

Jan 18 16:29:59 | sdc: getuid = /lib/udev/scsi_id --whitelisted--device=/dev/%n (config file default)

Jan 18 16:29:59 | sdc: uid = 36001405a75df6ded0277d3bf3dae7ddb(callout)

Jan 18 16:29:59 | sdd: getuid = /lib/udev/scsi_id --whitelisted--device=/dev/%n (config file default)

Jan 18 16:29:59 | sdd: uid = 36001405b363aaa9d92bad39c9dbd7bdd (callout)

Jan 18 16:29:59 | sde: getuid = /lib/udev/scsi_id --whitelisted--device=/dev/%n (config file default)

Jan 18 16:29:59 | sde: uid = 36001405b363aaa9d92bad39c9dbd7bdd (callout)

uuid                              hcil     dev dev_t pri dm_st chk_st vend/pro

5、将uid号添加进配置文件中,实现多路径访问

# cat >> /etc/multipath.conf << Eof

>blacklist {

>devnode "^sda"

>devnode "^sdb"

> devnode "^sdc"

>}

>multipaths{

> multipath{

> wwid36001405a75df6ded0277d3bf3dae7ddb

> alias mpath1

>}

>multipath{

>wwid36001405b363aaa9d92bad39c9dbd7bdd

> alias mpath2

> }

>}

>Eof

6、启动服务

# /etc/init.d/multipathd start

# chkconfig multipathd on

# fdisk –l  (能够查看到挂载了两个multipath磁盘

/dev/mapper/mpath1

/dev/mapper/mpath2}

附:

创建用户逻辑卷。

# pvcreate /dev/mapper/mpath1

# vgcreate -s 256m datavg /dev/mapper/mpath1

# lvcreate --size 2000G --name lv_src vg_data

# mkfs.ext4 /dev/mapper/vg_data-lv_src

# mkdir /src

# mount -t ext4 /dev/mapper/vg_data-lv_src /src

负载均衡测试。

# cd /src

# dd if=/dev/zero of=test.img

# iostat 1

Device:           tps  Blk_read/s  Blk_wrtn/s

sda           2020.00        8.00    466272.00   # 两条线路都有数据传输,主主模式起作用。

sdb            2024.00        0.00   368952.00    # 如果只有一条线路传输数据,就是主备模式。

sdc             0.00        0.00        0.00

dm-0         4044.00        8.00    834776.00   # 合并后的路径,数据等于两条。

oracle挂载ASM

# /etc/init.d/oracleasm configure

# /etc/init.d/oracleasm enable

# /etc/init.d/oracleasm createdisk VOL1 /dev/mapper/mpath1

# /etc/init.d/oracleasm scandisks

# /etc/init.d/oracleasm listdisks

# oracleasm querydisk -p VOL1

时间: 2024-12-26 19:37:13

模拟linux 双网卡双ip,实现multipath多路径连接存储的相关文章

Linux服务器双网卡双IP和单网卡双IP配置方法(Debian/Ubuntu)

一.双网卡双IP. eth0为电信,eth1为联通. # cd /etc/network/ #vi interfaces # This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo 

烂泥:VMWare Workation双网卡配置IP地址

本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb 前几天给一个客户做远程项目实施,客户那边的服务器是Windows OS的,我们这边的业务运行需要linux OS,所以就在Windows OS下安装VMWare. 但是在配置VM的IP地址时,遇到了双网卡配置IP地址的问题.宿主机是双网卡,一块网卡连接内网,一块网卡连接外网. 经过摸索终于把在VMWare上VM双网卡配置IP地址的事情搞定了,下面记录大致的配置过程. PS:VM的两块网

linux配置双网卡双路由

CentOS双网卡双IP设置   系统环境:CentOS Linux 网络环境: 两个IP地址,10.4.34.31和10.4.35.31,掩码是255.255.255.0, 这两个子网的网关地址分别是10.4.34.1和10.4.35.1.   1. 为网卡eth0配置ip地址10.4.34.31,为网卡eth1配置ip地址为10.4.35.31配置文件为: /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scr

rhel6.5双网卡双网关的配置

由于用户需求是双线,故采用一个网卡配置电信地址,另一个网卡配置联通地址,安装好rhel6.5系统后配置完IP,发现联通地址和电信地址只能有一个可以ping通,若电信地址配置网关,联通地址不配网关,则只能ping通电信地址,反之只能ping通联通地址,若同时配置联通和电信地址则两个都不通.那么在rhel6.5中如何实现双网卡双网关呢? 服务器环境如下: 系统:RHEL6.5 电信IP(TEL):114.80.10.79 netmask 255.255.255.128 gateway 114.80.

Centos 6.5双网卡双IP双网关配置

因公司业务需要需在服务器上配置电信,联通两个运营商的IP地址,实现数据分别从两个地址传输,即两个IP地址都能与外界网络互通. 当时我发现在服务器的两块网卡上分别配置两个IP地址及网关,重启网络服务之后,系统会默认选取其中一块网卡的网关做为数据传输网关,这样造成的后果就是一块网卡无法与外界通信,后来手动为那块无法通信的网卡添加路由指向之后,结果不是把系统的默认路由替换掉就是路由指向不生效,导致还是无法让那个两块网卡同时与外界网络互相通信,后来尝试在系统中创建两张路由表分别传输两张网卡的数据: 具体

centos 7 双网卡双网关配置问题

服务器双网卡在不同的网段怎么配置才能正常通讯?类似于双线机房一个联通一个电信的网,怎么配置,是不是需要改什么内核参数,我使用了策略路由,实现了可以通过两个网卡去访问服务器上的网站是没有问题的,但是,我们服务器上的服务是通过UDP协议的流媒体服务器,向服务器推流就是不成功?你有没遇到了类似的问题?有什么解决方法吗 现在的网络环境是这样的两块网卡en2ps0 :10.10.10.197/24 网关10.10.10.254en3ps0 :192.168.1.200/24 网关192.168.1.1方案

CentOS双网卡双IP设置

系统环境:CentOS Linux 网络环境: 两个IP地址,192.168.0.10和10.10.30.2,掩码是255.255.255.0,这两个子网的网关地址分别是192.168.0.1和10.10.30.1. 1. 为网卡eth0配置ip地址192.168.0.10,为网卡eth1配置ip地址为10.10.30.2配置文件为: /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-et

centos7 双网卡双ip内外网设置最小化安装

配置文件在/etc/sysconfig/network-scripts/ vim ifcfg-ens192 TYPE="Ethernet" BOOTPROTO="static"      #静态ip DEFROUTE="yes" IPV4_FAILURE_FATAL="no" IPV6INIT="yes" IPV6_AUTOCONF="yes" IPV6_DEFROUTE="y

linux 获取网卡的IP地址

下面这段代码的作用是根据传入的网卡名称获取相对应的本地IP地址,之前获取的本地网络地址老是127.0.0.1下面的获取的是正确的局域网地址 char* hostname_to_ip(char * ifaName ){ struct ifaddrs *ifaddr, *ifa; int family, s; char host[NI_MAXHOST]; std::string str; if (getifaddrs(&ifaddr) == -1) { // perror("getifadd