centos7系统双网卡bound绑定配置

本文涉及的产品
云解析 DNS,旗舰版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
全局流量管理 GTM,标准版 1个月
简介: 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 "
相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
目录
相关文章
|
2月前
|
Linux 网络安全 Apache
CentOS 7.2配置Apache服务httpd(上)
CentOS 7.2配置Apache服务httpd(上)
274 1
|
2月前
|
Web App开发 搜索推荐 Unix
Linux系统之MobaXterm远程连接centos的GNOME桌面环境
【10月更文挑战第21天】Linux系统之MobaXterm远程连接centos的GNOME桌面环境
372 4
Linux系统之MobaXterm远程连接centos的GNOME桌面环境
|
1月前
|
Linux 开发工具 Windows
CentOS8 64位系统 搭建内网穿透frp
【10月更文挑战第23天】本文介绍了如何在Linux系统上搭建frp内网穿透服务,并配置Windows客户端进行访问。首先,通过系统信息检查和软件下载,完成frp服务端的安装与配置。接着,在Windows客户端下载并配置frpc,实现通过域名访问内网地址。最后,通过创建systemd服务,实现frp服务的开机自动启动。
73 14
|
2月前
|
Linux 网络安全 数据安全/隐私保护
Linux系统之Centos7安装cockpit图形管理界面
【10月更文挑战第12天】Linux系统之Centos7安装cockpit图形管理界面
102 1
Linux系统之Centos7安装cockpit图形管理界面
|
1月前
|
存储 Linux Docker
centos系统清理docker日志文件
通过以上方法,可以有效清理和管理CentOS系统中的Docker日志文件,防止日志文件占用过多磁盘空间。选择合适的方法取决于具体的应用场景和需求,可以结合手动清理、logrotate和调整日志驱动等多种方式,确保系统的高效运行。
43 2
|
1月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
128 2
|
2月前
|
Java jenkins 持续交付
Centos7下docker的jenkins下载并配置jdk与maven
通过上述步骤,您将成功在CentOS 7上的Docker容器中部署了Jenkins,并配置好了JDK与Maven,为持续集成和自动化构建打下了坚实基础。
128 1
|
2月前
|
存储 监控 Linux
在 CentOS 7 中如何对新硬盘进行分区、格式化、挂载及配置最佳实践
本文详细介绍了在 CentOS 7 中如何对新硬盘进行分区、格式化、挂载及配置最佳实践,包括使用 `fdisk` 创建分区、`mkfs` 格式化分区、创建挂载点、编辑 `/etc/fstab` 实现永久挂载等步骤,旨在有效管理服务器磁盘空间,提高系统稳定性和可维护性。
246 1
|
2月前
|
Linux PHP Apache
CentOS 7.2配置Apache服务httpd(下)
CentOS 7.2配置Apache服务httpd(下)
57 1
|
2月前
|
安全 Linux 数据库连接
CentOS 7环境下DM8数据库的安装与配置
【10月更文挑战第16天】本文介绍了在 CentOS 7 环境下安装与配置达梦数据库(DM8)的详细步骤,包括安装前准备、创建安装用户、上传安装文件、解压并运行安装程序、初始化数据库实例、配置环境变量、启动数据库服务、配置数据库连接和参数、备份与恢复、以及安装后的安全设置、性能优化和定期维护等内容。通过这些步骤,可以顺利完成 DM8 的安装与配置。
316 0