设为首页 收藏本站
查看: 1190|回复: 0

[经验分享] NIC Bonding on CentOS 7 with nmtui

[复制链接]

尚未签到

发表于 2018-4-24 08:07:57 | 显示全部楼层 |阅读模式
    NIC Bonding on CentOS 7 with nmtui
当系统管理员希望增加可用带宽,并提供冗余和负载平衡的数据传输,内核支持bonding允许以聚合的方式实现。简单地说,绑定意味着将两个或多个物理网络接口(称为奴隶)聚合成一个单独的逻辑节点(称为主网络)。如果一个特定的NIC(网络接口卡)的经验问题,通信不受影响只要其他保持活跃。
1.先决条件
默认情况下,bonding内核模块没有启用。因此,我们将需要加载它并确保它持久。使用modprobe--first-time加载bonding模块,如果加载模块失败,会发出警告。
# modprobe --first-time bonding
以上的命令仅加载bondiing模块为当前会话,服务器重启后模块不会自动加载。为了确保持续加载,创建/etc/modules-load.d/bonding.conf文件放置于文件夹/etc/modules-load.d目录中,确保每次服务器重启时加载bonding模块。
  # echo "# Load thebonding kernel module at boot" > /etc/modules-load.d/bonding.conf
  # echo "bonding">> /etc/modules-load.d/bonding.conf
  服务器重启之后确保bonding模块自动加载
  [root@MiWiFi-R3-srvDesktop]# lsmod|grep bonding
  bonding              136705  0
  [root@MiWiFi-R3-srvDesktop]#
  2.配置bonding
  查看系统当前可用网卡,当前两块网卡上均无可用连接。
  
  [root@MiWiFi-R3-srv ~]# nmcli device status
  DEVICE       TYPE      STATE         CONNECTION
  bond0        bond      disconnected  --         
  eno16777736  ethernet  disconnected  --         
  eno33554992  ethernet  disconnected  --         
  lo           loopback  unmanaged     --         
  [root@MiWiFi-R3-srv ~]# nmcli connection show
  NAME  UUID TYPE  DEVICE
  当前服务器网卡信息如下
  [root@MiWiFi-R3-srvDesktop]# ifconfig
  eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
          ether 00:0c:29:51:e8:75  txqueuelen 1000  (Ethernet)
          RX packets 2227  bytes 216343 (211.2 KiB)
          RX errors 0  dropped 0 overruns 0  frame 0
          TX packets 109  bytes 10643 (10.3 KiB)
          TX errors 0 dropped 0 overruns 0  carrier0  collisions 0
  eno33554992:flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
          ether 00:0c:29:51:e8:7f  txqueuelen 1000  (Ethernet)
          RX packets 2633  bytes 300745 (293.6 KiB)
          RX errors 0  dropped 0 overruns 0  frame 0
          TX packets 138  bytes 11748 (11.4 KiB)
          TX errors 0  dropped 0 overruns 0  carrier 0 collisions 0
  lo:flags=73<UP,LOOPBACK,RUNNING>  mtu65536
          inet 127.0.0.1  netmask 255.0.0.0
          inet6 ::1  prefixlen 128 scopeid 0x10<host>
          loop txqueuelen 0  (Local Loopback)
          RX packets 2  bytes 196 (196.0 B)
          RX errors 0  dropped 0 overruns 0  frame 0
          TX packets 2  bytes 196 (196.0 B)
          TX errors 0  dropped 0 overruns 0  carrier 0 collisions 0
  [root@MiWiFi-R3-srvDesktop]#
  登陆图形界面,nmtui打开配置界面如下
  [root@MiWiFi-R3-srvDesktop]#nmtui
DSC0000.jpg                          选中edit a connection确定

DSC0001.jpg

点击add

   DSC0002.jpg
  bondàcreate进去bond配置界面

   DSC0003.jpg
  设置profile name及device名,选择add添加网卡,如下
   DSC0004.jpg
  设置profile name 为eth0,device设置为网卡eno16777736,点击ok。相同方法配置eth1,device设置为eno33554992。

   DSC0005.jpg
  配置完成后,返回主界面,设置mode为active-backup,设置primary设备为eno16777736。点击ok退出。
   DSC0006.jpg
   DSC0007.jpg
  查看服务器当前配置
  [root@MiWiFi-R3-srvDesktop]# cat /proc/net/bonding/mybond
  Ethernet Channel BondingDriver: v3.7.1 (April 27, 2011)
  Bonding Mode: fault-tolerance(active-backup)
  Primary Slave: eno16777736(primary_reselect always)
  Currently Active Slave:eno16777736
  MII Status: up
  MII Polling Interval (ms):100
  Up Delay (ms): 0
  Down Delay (ms): 0
  
  Slave Interface: eno33554992
  MII Status: up
  Speed: 1000 Mbps
  Duplex: full
  Link Failure Count: 0
  Permanent HW addr:00:0c:29:51:e8:7f
  Slave queue ID: 0
  Slave Interface: eno16777736
  MII Status: up
  Speed: 1000 Mbps
  Duplex: full
  Link Failure Count: 0
  Permanent HW addr:00:0c:29:51:e8:75
  Slave queue ID: 0
  [root@MiWiFi-R3-srvDesktop]#
  查看网卡信息,eno16777736与eno33554992网卡mac地址相同
  [root@MiWiFi-R3-srvDesktop]# ifconfig
  eno16777736:flags=6211<UP,BROADCAST,RUNNING,SLAVE,MULTICAST>  mtu 1500
          ether 00:0c:29:51:e8:7f txqueuelen 1000  (Ethernet)
          RX packets 3626  bytes 343058 (335.0 KiB)
          RX errors 0  dropped 0 overruns 0  frame 0
          TX packets 138  bytes 15571 (15.2 KiB)
          TX errors 0  dropped 0 overruns 0  carrier 0 collisions 0
  eno33554992:flags=6211<UP,BROADCAST,RUNNING,SLAVE,MULTICAST>  mtu 1500
          ether 00:0c:29:51:e8:7f  txqueuelen 1000  (Ethernet)
          RX packets 4034  bytes 428144 (418.1 KiB)
          RX errors 0  dropped 34 overruns 0  frame 0
          TX packets 139  bytes 11838 (11.5 KiB)
          TX errors 0  dropped 0 overruns 0  carrier 0 collisions 0
  lo:flags=73<UP,LOOPBACK,RUNNING>  mtu65536
          inet 127.0.0.1  netmask 255.0.0.0
          inet6 ::1  prefixlen 128 scopeid 0x10<host>
          loop txqueuelen 0  (Local Loopback)
          RX packets 2  bytes 196 (196.0 B)
          RX errors 0  dropped 0 overruns 0  frame 0
          TX packets 2  bytes 196 (196.0 B)
          TX errors 0  dropped 0 overruns 0  carrier 0 collisions 0
  mybond:flags=5187<UP,BROADCAST,RUNNING,MASTER,MULTICAST>  mtu 1500
          inet 192.168.31.119  netmask 255.255.255.0  broadcast 192.168.31.255
          inet6 fe80::20c:29ff:fe51:e87f  prefixlen 64 scopeid 0x20<link>
          ether 00:0c:29:51:e8:7f  txqueuelen 0 (Ethernet)
          RX packets 66  bytes 8172 (7.9 KiB)
          RX errors 0 dropped 34  overruns 0  frame 0
          TX packets 30  bytes 5018 (4.9 KiB)
          TX errors 0  dropped 0 overruns 0  carrier 0 collisions 0
  [root@MiWiFi-R3-srvDesktop]#
  再次查看当前设置状态
  [root@MiWiFi-R3-srvDesktop]# nmcli device status
  DEVICE       TYPE      STATE         CONNECTION
  mybond       bond      connected     mybond     
  eno16777736  ethernet  connected     eth0      
  eno33554992  ethernet  connected     eth1      
  bond0        bond      disconnected  --         
  lo           loopback  unmanaged     --         
  [root@MiWiFi-R3-srv ~]#
  当前设备的链接信息   
  [root@MiWiFi-R3-srvDesktop]# nmcli connection show
NAME    UUID                                  TYPE            DEVICE      
eth0    4435f07a-4585-452e-85a5-c9a968d48bab  802-3-ethernet  eno16777736
eth1    48142a3f-a088-4e27-9d96-ccc586792980  802-3-ethernet  eno33554992
mybond  fcc6f5d4-5da6-499d-97e5-e7b5ba1cd2a0  bond            mybond  
  3.bonding模式
  mode= value
  balance-rr or 0   
Sets a round-robin policy for faulttolerance and load balancing.Transmissions are received and sent outsequentially on each bonded slave interface beginning with the first oneavailable.
  active-backup or 1
Sets an active-backup policyfor fault tolerance.Transmissions  arereceived and sent out via the first available bonded slave interface. Anotherbonded slave interface is only used if the active bonded slave interface fails.
  balance-xo ror 2
Transmissions are based on the selected hashpolicy. The
  default is to derive a hash by XOR ofthe source and destination MAC addresses   multipliedby the modulo of the number of slave interfaces. In this mode traffic destined for specific peers will always be sent over thesame interface. As the destination is determinedby the MAC addresses this method works best for traffic to peers on the same linkor local network. If traffic has to pass through a single router then this modeof traffic balancing will be suboptimal.
  broadcast or 3
Sets a broadcast policy for fault tolerance.All transmissions are sent on all slave interfaces.
  80 2.3ad or 4
Sets an IEEE 802.3ad dynamiclink aggregation policy. Creates aggregation groups that share the same speedand duplex settings. Transmits and receives on all slaves in the activeaggregator. Requires a switch that is 802.3ad compliant.
  balance-tlb or5
Sets a Transmit Load Balancing (TLB) policyfor fault tolerance and load balancing. The outgoing traffic is distributed accordingto the current load on each slave interface. Incoming traffic is received bythe current slave. If the receiving slave fails, another slave takes over theMAC address of the failed slave. This mode is only suitable for local addressesknown to the kernel bonding module and therefore cannot be used behind a bridgewith virtual machines.
  balance-alb or6
Sets an Adaptive Load Balancing (ALB) policyfor fault tolerance and load balancing. Includes transmit and receive loadbalancing for IP v4 traffic.Receive load balancing is achieved through AR Pnegotiation. This mode is only suitable for local addresses known to the kernelbonding module and therefore cannot be used behind a bridge with virtualmachines.

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-451124-1-1.html 上篇帖子: 配置CentOS yum源 下篇帖子: CentOS7 yum搭建lamp
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表