bond的主备模式_centos 7.0双网卡主备和负载均衡模式配置(bond0)

网卡bond是通过把多张网卡绑定为一个逻辑网卡,实现本地网卡的冗余,带宽扩容和负载均衡。在应用部署中是一种常用的技术,bond共有7中模式,mode 0-6,但是常用的模式有三种:

mode=0:平衡负载模式,有自动备援,但需要”Switch”支援及设定。

mode=1:主备模式,其中一条线若断线,其他线路将会自动备援。

mode=6:平衡负载模式,有自动备援,不必”Switch”支援及设定。

备注:

mode=1主备模式,当一块网卡宕了,另一块网卡自动顶替宕掉的网卡工作,保障网络正常访问。但是它主备不用自动切换,即有ens33和ens37两块网卡,ens33是主,ens37是备,当ens33网卡宕了,ens37替代其工作,但是当ens33网卡恢复后,仍然是ens37是主,ens33网卡是备。

我们以mode=1 主备模为例,详细说明具体步骤:

大体分为三部分:

一、添加一块网卡

二、配置虚拟网卡ifcfg-bond0

三、查看主备模式冗余情况

一、添加一块网卡

添加一块新的网卡之前,先检查当前网卡配置,使用Xshell工具能否正常连接,能否上网等等,因为第二块网卡是基于第一块网卡配置文件更改的,若是第一块网卡有异常,那后面都是错的。

1.首先进入到网卡文件配置目录,然后查看网卡配置文件:

[root@localhost /]# cd /etc/sysconfig/network-scripts/

ifcfg-ens33就是我们当前网卡的配置文件,网卡名称为ens33(可以在配置文件中修改的)

2.查看ifcfg-ens33文件配置情况,需要主要注意的是以下几个参数:

TYPE=Ethernet

BOOTPROTO=static

ONBOOT=yes

NAME=ens33

UUID=ef8c014c-6b8d-4f86-bfe8-23cbd800610d

DEVICE=ens33

HWADDR=00:0c:29:8c:36:51

再检查是否能够上网,比如ping baidu.com看是否又返回值。

3.添加一块新的网卡

在vmvare workstation--找到对应的虚拟机--设置--添加--网络适配器--完成。

选择已经添加好的网络适配器2---网络连接方式选择“桥接模式”--点击确定。

4.查看网卡是否添加成功

(1)直接在/etc/sysconfig/network-scripts目录下查看是没有新的网卡配置文件,仍然只有ifcfg-ens33网卡的配置文件。

(2)运行ifconfig命令,会发现除了ens33网卡还有一个名字叫ens37的网卡,说明网卡已经添加成功了,那么我们如何配置第二块网卡的配置文件呢。

[root@localhost network-scripts]# nmcli con show

[root@localhost network-scripts]# ip addr

(4)拷贝ifcfg-ens33的配置文件重命名为ifcfg-ens37作为ens37网卡的配置文件

(5)编辑ifcfg-ens37文件,修改相关配置,更改NAME、UUID、DEVICE、和HWADDR参数,然后保存。

(6)重启网卡服务

[root@localhost network-scripts]# systemctl restart network.service

(7)使用ifconfig命令查看ens37网卡IP是否配置正确

还可在物理机上ping 192.168.3.101是否可以ping通,Xshell客户端使用192.168.3.101能否连接上,然后可以断开ens33网卡等测试双网卡配置是否正常等。

禁用网卡:ifconfig ens33 down

启用网卡:ifconfig ens33 up

二、配置虚拟网卡bond

因为mode=1主备模式就是虚拟出一块bond网卡,然后物理的2块网卡有一个宕了,另一块继续工作不影响网络正常访问。

我们定义ens33网卡是192.168.3.100,ens37网卡是192.168.3.101,虚拟的bond0网卡ip是:192.168.3.230

1.设置两块物理网卡支持bond模式,其实就是配置两个参数:

MASTER=bond0

SLAVE=yes

2.虚拟网卡ifcfg-bond0配置

DEVICE=bond0

TYPE=Ethernet

ONBOOT=yes

BOOTPROTO=none

IPADDR=192.168.3.230

PREFIX=24

GATEWAY=192.168.3.1

BROADCAST=192.168.3.255

NAME=bond0

BONDING_OPTS="miimon=100 mode=1 fail_over_mac=1"

DNS1=8.8.8.8

ps:因为是虚拟机做实验所以需要加上:fail_over_mac=1

3.重启网卡服务,然后你的Xshell客户端会断开连接,这是正常的,因为bond0生效后,IP就变成你新设置的192.168.3.230了。

4.到vmvare workstation上面查看bond是否设置成功

5.使用Xshell重新连接centos系统,使用IP192.168.3.230,查看当前bond状态

cat /proc/net/bonding/bond0

如上图所示mode=1主备模式就配置成功了。

三、验证主备模式冗余情况

1.首先将ens33禁用了,查看bond状态。

ifconfig ens33 down 禁用ens33网卡

如下图可以知道:当前是ens37网卡在工作,ens33是down的状态,ens37为up状态,同时需要查看网络是否通的。

2.启用ens33网卡,禁用ens37网卡,查看bond状态

当前ens33网卡在工作,而ens37网卡是down的状态。

3.mode=1主备模式是不会自动切换的,如上面实验遇到的先将ens33网卡禁用ens37网卡工作;当ens33网卡起来的时候,当前还是ens37在工作,所以主备不自动切换的,如下图:

配置mode=0负载平衡模式:

配置mode=0负载平衡,只要将ifcfg-bond0配置文件中的mode=1改为mode=0即可。

然后重启网卡服务。

查看bond0状态,如下图说明已经生效了。

ps:过程中可能遇到的问题

1.重启网卡服务报错:

Job for network.service failed because the control process exited with error code. See "systemctl status network.service" and "journalctl -xe" for details.

解决方法:在ifcfg-bond0等网卡配置文件确定没错的情况下可以运行下面两个命令:

systemctl stop NetworkManager

systemctl disable NetworkManager

2.重启网卡服务器提示:[8376.169552]bond0:option slaves:invalid value ens33等

解决方法:检查/etc/sysconfig/network-scripts目录下的ifcfg配置文件,只有三个网卡配置文件:

ifcfg-bond0

ifcfg-ens33

ifcfg-ens37

若是发现有多余的网卡配置文件可以直接删除了,使用rm命令,然后在重启网卡试试。

3.仔细看的话会发现ifcfg-bond0配置文件有两个DNS8.8.8.8和114.114.114.114,当你发现网络不通的时候检查下路由,使用route命令

若是没有默认路由,你可以试着更改下ifcfg-bond0DNS或者检查IP配置是否正确。

最后说一句:linux小编也是菜鸟,各位大神发现文章有问题请及时纠正一下;另外过程中发现问题不要着急,一方面自己检查是否有配置错的地方,另外可以到百度搜索等。

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CentOS双网卡主备配置与Linux双网卡主备配置类似,也是需要使用Bonding模块和ifenslave工具来实现。具体步骤如下: 1. 确认系统内核支持Bonding模块,可以通过执行“modinfo bonding”命令来检查。 2. 安装ifenslave工具,该工具为Linux系统的网卡绑定工具,可以通过执行“yum install ifenslave”命令进行安装。 接下来,按照以下步骤进行双网卡主备配置: 1. 修改网络配置文件 在/etc/sysconfig/network-scripts/目录下,创建ifcfg-bond0文件,并添加以下内容: DEVICE=bond0 BOOTPROTO=dhcp ONBOOT=yes TYPE=Bond BONDING_MASTER=yes BONDING_OPTS="mode=active-backup miimon=100" 其中,DEVICE为绑定后的网卡名称,BOOTPROTO为IP地址获取方式,ONBOOT表示开机自启动,TYPE为Bond类型,BONDING_MASTER为主网卡,BONDING_OPTS为Bonding模块的参数,mode为active-backup表示使用主备模式进行聚合,miimon为检测网卡连接状态的时间间隔。 2. 配置网卡 在/etc/sysconfig/network-scripts/目录下,创建ifcfg-eth0和ifcfg-eth1文件,并添加以下内容: DEVICE=eth0 BOOTPROTO=none ONBOOT=yes MASTER=bond0 SLAVE=yes DEVICE=eth1 BOOTPROTO=none ONBOOT=yes MASTER=bond0 SLAVE=yes 其中,eth0和eth1为两张网卡的名称,BOOTPROTO为none表示不使用IP地址,ONBOOT表示开机自启动,MASTER为绑定后的网卡名称,SLAVE表示从网卡。 3. 重启网络服务 执行“systemctl restart network”重启网络服务,使配置生效。 完成以上配置后,CentOS双网卡主备即可实现。在主网卡(即eth0)故障时,备网卡(即eth1)会自动接管,从而保证网络的连通性和可靠性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值