centos7系统双网卡bound绑定配置

本文涉及的产品
云解析DNS-重点域名监控,免费拨测 20万次(价值200元)
简介: centos7双网卡绑定bond1.bond简介生产环境必须提供 7×24 小时的网络传输服务。借助于网卡绑定技术,不仅 可以提高网络传输速度,更重要的是,还可以确保在其中一块网卡出现故障时,依然可以正 常提供网络服务。假设我们对两块网卡实施了绑定技术,这样在正常工作中它们会共同传输 数据,使得网络传输的速度变得更快;而且即使有一块网卡突然出现了故障,另外一块网卡 便会立即自动顶替上去,保证数据传输不会中断。

centos7双网卡绑定bond

1.bond简介

生产环境必须提供 7×24 小时的网络传输服务。借助于网卡绑定技术,不仅 可以提高网络传输速度,更重要的是,还可以确保在其中一块网卡出现故障时,依然可以正 常提供网络服务。假设我们对两块网卡实施了绑定技术,这样在正常工作中它们会共同传输 数据,使得网络传输的速度变得更快;而且即使有一块网卡突然出现了故障,另外一块网卡 便会立即自动顶替上去,保证数据传输不会中断。

Linux 内核网卡绑定驱动模式:

mode0(平衡负载模式):平时两块网卡均工作,且自动备援,但需要在与服务器本地 网卡相连的交换机设备上进行端口聚合来支持绑定技术。

mode1(自动备援模式):平时只有一块网卡工作,在它故障后自动替换为另外的网卡。

mode6(平衡负载模式):平时两块网卡均工作,且自动备援,无须交换机设备提供辅 助支持。

2.配置bond

以双网卡为例

2.1.配置两块网卡配置信息

[root@k8s-master ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
BOOTPROTO=none
ONBOOT=yes
DEVICE=ens33
MASTER=bond0
SLAVE=yes
[root@k8s-master ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens37
TYPE=Ethernet
BOOTPROTO=none
ONBOOT=yes
DEVICE=ens37
MASTER=bond0
SLAVE=yes

2.2.配置bond网卡信息

[root@k8s-master ~]# vim /etc/sysconfig/network-scripts/ifcfg-bond0 
TYPE=Ethernet
BOOTPROTO=none
ONBOOT=yes
DEVICE=bond0
IPADDR=192.168.81.210
NETMASK=255.255.255.0
GATEWAY=192.168.81.2
DNS=114.114.114.114

2.3.配置内核网卡驱动模式

[root@k8s-master ~]# vim /etc/modprobe.d/bond.conf 
alias bond0 bonding
options bonding mode=6 miimon=200

2.4.重启网卡

[root@k8s-master ~]# systemctl restart network

2.5.查看bond是否生效

[root@k8s-master ~]# ifconfig 
bond0: flags=5187<UP,BROADCAST,RUNNING,MASTER,MULTICAST>  mtu 1500
        inet 192.168.81.210  netmask 255.255.255.0  broadcast 192.168.81.255
        inet6 fe80::20c:29ff:fed5:a566  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:d5:a5:66  txqueuelen 1000  (Ethernet)
        RX packets 811  bytes 65115 (63.5 KiB)
        RX errors 0  dropped 187  overruns 0  frame 0
        TX packets 1574  bytes 118007 (115.2 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
ens33: flags=6211<UP,BROADCAST,RUNNING,SLAVE,MULTICAST>  mtu 1500
        ether 00:0c:29:d5:a5:66  txqueuelen 1000  (Ethernet)
        RX packets 1851  bytes 209289 (204.3 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1857  bytes 234505 (229.0 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
ens37: flags=6211<UP,BROADCAST,RUNNING,SLAVE,MULTICAST>  mtu 1500
        ether 00:0c:29:d5:a5:70  txqueuelen 1000  (Ethernet)
        RX packets 457  bytes 39789 (38.8 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 753  bytes 52110 (50.8 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

3.自动化配置bond脚本

使用方式:sh boun.sh 网卡模式 IP地址

[root@elk-1 ~/soft]# cat bound.sh
#!/bin/bash
#设置多网卡bond,实现网卡的高可用,提升网卡带宽
#此脚本需要传入两个参数 $1为bond模式  $2为boundIP地址
if [  $# = 2 ] ; then     #判断传入的参数是否为2个
  #定义主机上网卡的名称变量
  NAME1=eno1
  NAME2=eno2
  #定义要写入网卡配置文件的网络参数
  IPADDR=$2
  NETMASK=255.255.255.0
  GATEWAY=192.168.1.1
  DNS=114.114.114.114
else
  echo "脚本使用错误!!!!
          格式为:$PWD/$0 [ 0-6 ] ipaddr
  例如:
          $PWD/$0 网卡模式 192.168.1.100"
  exit 1;
fi
#生成bond配置文件
echo "alias bond0 bonding
options bonding mode=$1 miimon=200 " > /etc/modprobe.d/bonding.conf
#判断第一个网卡是否存在,如果存在就生成第一个网卡的配置文件
if [ ! -z $NAME1 ] ;then
  echo "DEVICE=$NAME1
  BOOTPROTO=none
  MASTER=bond0
  SLAVE=yes" > /etc/sysconfig/network-scripts/ifcfg-$NAME1
fi
#判断第二个网卡是否存在,如果存在就生成第二个网卡的配置文件
if [ ! -z $NAME2 ] ;then
  echo "DEVICE=$NAME2
  BOOTPROTO=none
  MASTER=bond0
  SLAVE=yes" > /etc/sysconfig/network-scripts/ifcfg-$NAME2
fi
#生成bond配置文件
echo "DEVICE=bond0
BOOTPROTO=none
ONBOOT=yes
IPADDR=$IPADDR
NETMASK=$NETMASK
GATEWAY=$GATEWAY
DNS1=$DNS " >/etc/sysconfig/network-scripts/ifcfg-bond0
#重启网络服务
systemctl  disable NetworkManager
systemctl  stop NetworkManager
modprobe -r bonding
modprobe  bonding
service network restart
#打印网络信息
echo "IPADDR=$IPADDR
NETMASK=$NETMASK
GATEWAY=$GATEWAY
DNS1=$DNS "
相关实践学习
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。 &nbsp; &nbsp; 相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
目录
相关文章
|
4月前
|
存储 Ubuntu Linux
VMware-安装CentOS系统教程及安装包
虚拟机相当于是一个独立于你电脑的环境,在这个环境上面,你可以安装Linux、Windows、Ubuntu等各个类型各个版本的系统,在这个系统里面你不用担心有病读等,不用担心文件误删导致系统崩溃。 虚拟机也和正常的电脑系统是一样的,也可以开关机,不用的时候,你关机就可以了,也不会占用你的系统资源,使用起来还是比较方便 这里也有已经做好的CentOS 7系统,下载下来解压后直接用VMware打开就可以使用
815 69
|
2月前
|
监控 关系型数据库 MySQL
在CentOS系统中,如何统计哪个进程打开了文件描述符?
利用上述方法,你可以有效地监控和统计CentOS系统中的进程打开的文件描述符数量,以帮助排查错误或优化系统配置。通过组合使用各种工具和命令,可以获得对系统状态和行为的深入了解,进而做出相应的调整和
137 5
|
4月前
|
Ubuntu Linux 索引
Centos 7、Debian及Ubuntu系统中安装和验证tree命令的指南。
通过上述步骤,我们可以在CentOS 7、Debian和Ubuntu系统中安装并验证 `tree`命令。在命令行界面中执行安装命令,然后通过版本检查确认安装成功。这保证了在多个平台上 `tree`命令的一致性和可用性,使得用户无论在哪种Linux发行版上都能使用此工具浏览目录结构。
406 78
|
5月前
|
缓存 NoSQL Linux
在CentOS 7系统中彻底移除MongoDB数据库的步骤
以上步骤完成后,MongoDB应该会从您的CentOS 7系统中被彻底移除。在执行上述操作前,请确保已经备份好所有重要数据以防丢失。这些步骤操作需要一些基本的Linux系统管理知识,若您对某一步骤不是非常清楚,请先进行必要的学习或咨询专业人士。在执行系统级操作时,推荐在实施前创建系统快照或备份,以便在出现问题时能够恢复到原先的状态。
443 79
|
4月前
|
缓存 监控 Linux
CentOS系统如何查看当前内存容量。
以上方法都不需要特殊软件或者复杂配置即可执行,在CentOS或其他Linux发行版中都适合运行,并且它们各自透露出不同角度对待问题解答方式:从简单快速到深入详尽;从用户态到核心态;从操作层数到硬件层数;满足不同用户需求与偏好。
350 8
|
5月前
|
存储 Linux Apache
在CentOS上配置SVN至Web目录的自动同步
通过上述配置,每次当SVN仓库中提交新的更改时,`post-commit`钩子将被触发,SVN仓库的内容会自动同步到指定的Web目录,从而实现代码的连续部署。
189 16
|
6月前
|
机器人 Linux
CentOS 7系统中安装特定版本CMake 3.21.2的方法。
到这里,过程已经全部完成。如果你跟随上面的步骤来,那么你现在已经拥有了一个全新的CMake版本在你的CentOS 7系统上了。这个过程就像是你通过一系列仪式,唤醒了一个沉睡已久的古老机器人,它现在完全按照你的意愿来帮你构建和编译软件了。
527 18
|
4月前
|
存储 Linux 数据安全/隐私保护
确定CentOS系统分区表类型(MBR或GPT)
以上方法均能够帮助用户准确地识别出CentOS下连接硬件所应用得具体磁盘标准,并根据实际需求做进一步处理与管理工作。
492 0
|
5月前
|
NoSQL 安全 Linux
设置Redis在CentOS7上的自启动配置
这些步骤总结了在CentOS 7系统上设置Redis服务自启动的过程。这些命令提供了一个直接且明了的方式,确保Redis作为关键组件在系统启动时能自动运行,保障了依赖于Redis服务的应用的稳定性和可用性。
488 9
|
4月前
|
Ubuntu Linux 云计算
CentOS与Ubuntu:Linux系统的双璧
选择Ubuntu还是CentOS,取决于用户的具体需求,如是否需要图形化界面、对稳定性的要求、软件包管理的偏好以及对商业支持的需求等。两者都是优秀的Linux发行版,只是在设计理念和目标用户群体上有所不同。#深度好文计划#