centos(9) 网卡HA 的实现 --bond

来源:互联网 发布:126smtp服务器端口 编辑:程序博客网 时间:2024/06/01 20:25

网卡HA是什么意思,顾名思义, 就是通过特点的技术来实现网卡的高可用性。

linux 自带的bond技术可以实现 linux 双网卡绑定和负载均衡。 

本文就以笔者自己的实验环境为例来搭建 网卡的HA,以及如果去除bond.


一、搭建 HA

 第一步:配置设定文件 

1) 建立虚拟网络接口ifcfg-bond0的配置文件。

vim /etc/sysconfig/network-scripts/ifcfg-bond0
然后加入以下的内容:

#虚拟设备的名称 DEVICE=bond0IPADDR=192.168.110.22NETMASK=255.255.255.0NETWORK=192.168.110.0GATEWAY=192.168.110.1#BONDING_OPTS="mode=1 arp_interval=60 arp_ip_target=+192.168.110.1"#miimon是指定隔多长时间进行链路监测,单位是ms#mode是表示绑定口的工作模式,有0-6共7种,常用的是0和1 ,后面几种不太清楚是干什么的, 怎么用
#mode=1表示是acitve-backup的方式, 两张卡一用一备的状态#mode=0表示是round-robin的方式, 同时工作工作在负载均衡状态 #mode=2 表示是balance-xor,表示提供负载均衡和和耐故障功能#mode=3表示是broadcast,广播策略,耐故障功能。把数据以广播的方式,发给包含在该bond口内的所有网口#mode=4表示是802.3ad IEEE 802.3ad动态链接集合#mode=5表示是balance-tlb 自动适应传输负载均衡策略。#mode=6表示是balance-alb 自动适应负载均衡策略
BONDING_OPTS="mode=1 miimon=100"USERCTL=noONBOOT=yesBOOTPROTO=none

2). 修改/etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0USERCTL=noONBOOT=yesMASTER=bond0#指定master就是bond0SLAVE=yes#这个最好是显式的给出BOOTPROTO=none #启动时不使用任何的协议

3). 修改/etc/sysconfig/network-scripts/ifcfg-eth1

DEVICE=eth1USERCTL=noONBOOT=yesMASTER=bond0#指定master就是bond0SLAVE=yes#这个最好是显式的给出BOOTPROTO=none #启动时不使用任何的协议


4). 修改/etc/modprobe.conf

加入以下的两行

alias bond0 bondingalias eth0 e1000

 第二步:加载bonding模块

1) 加载模块

modprobe bonding

2)确认模块是否加载成功


第三步:确认网络

1. 重启网络

service network restart
或者是

/etc/init.d/network restart

2. 查看状态



由上面可以看出,

1) 现在的bonding  的模式是active-backup, mode=1

2)   现在active 的网口 是eth0

3)  他们使用的物理地址是一样的。 


如下的内容,引用自Linux网口绑定 Litvip Linux 爱好者 

如果我们要设置多个bond口,比如物理网口eth0和eth1组成bond0,eth2和eth3组成bond1,
那么网口设置文件的设置方法和上面第1步讲的方法相同,只是/etc/modprobe.d/bonding.conf的设定就不能像下面这样简单的叠加了:

?
1
2
3
4
alias bond0 bonding
options bonding mode=1 miimon=200
alias bond1 bonding
options bonding mode=1 miimon=200

正确的设置方法有2种:
第一种,你可以看到,这种方式的话,多个bond口的模式就只能设成相同的了:

?
1
2
3
alias bond0 bonding
alias bond1 bonding
options bonding max_bonds=2 miimon=200 mode=1

第二种,这种方式,不同的bond口的mode可以设成不一样:

?
1
2
3
alias bond0 bonding
options bond0 miimon=100 mode=1
installbond1 /sbin/modprobebonding -o bond1 miimon=200 mode=0

仔细看看上面这2种设置方法,现在如果是要设置3个,4个,甚至更多的bond口,你应该也会了吧!

引用结束


二、去除HA

这部分的内容好像在网上没有找到, 以下是笔者自己的摸索,记录下来的内容,方便以后自己的使用。

1)  停用bond0

ifdown bond0

2) 删除

/etc/sysconfig/network-scripts/ifcfg-bond0

3) 将eth0与 eth1 设置 回去

DEVICE=eth0USERCTL=noONBOOT=yes#MASTER=bond0#SLAVE=yesHWADDR=00:50:56:09:01:05BOOTPROTO=staticIPADDR=192.168.110.15NETMASK=255.255.255.0

4)  去除bonding的相关设定

5) 重启机器

就可以




原创粉丝点击