Ubuntu 10.04下实现双网卡负载均衡
摘要:本文主要介绍和配置 在Ubuntu下 实现 bonding,双网卡负载,bonding模式为0,好处是负载平衡,另一网卡断了,也能工作。
什么是bonding
  Linux bonding 驱动提供了一个把多个网络接口设备捆绑为单个的网络接口设置来使用,用于网络负载均衡及网络冗余。
  bonding的工作模式
bonding一共有7种工作模式
  0:(balance-rr) Round-robin policy: (平衡轮询策略):传输数据包顺序是依次传输,直到最后一个传输完毕, 此模式提供负载平衡和容错能力。
  1:(active-backup) Active-backup policy:(活动备份策略):只有一个设备处于活动状态。 一个宕掉另一个马上由备份转换为主设备。mac地址是外部可见得。 此模式提供了容错能力。
  2:(balance-xor) XOR policy:(平衡策略):传输根据[(源MAC地址xor目标MAC地址)mod 设备数量]的布尔值选择传输设备。 此模式提供负载平衡和容错能力。
  3:(broadcast) Broadcast policy:(广播策略):将所有数据包传输给所有设备。 此模式提供了容错能力。
  4:(802.3ad) IEEE 802.3ad Dynamic link aggregation. IEEE 802.3ad 动态链接聚合:创建共享相同的速度和双工设置的聚合组。此模式提供了容错能力。每个设备需要基于驱动的重新获取速度和全双工支持;如果使用交换机,交换机也需启用 802.3ad 模式。
  5:(balance-tlb) Adaptive transmit load balancing(适配器传输负载均衡):通道绑定不需要专用的交换机支持。发出的流量根据当前负载分给每一个设备。由当前设备处理接收,如果接受的设备传不通就用另一个设备接管当前设备正在处理的mac地址。
  6:(balance-alb) Adaptive load balancing: (适配器负载均衡):包括mode5,由 ARP 协商完成接收的负载。bonding驱动程序截获 ARP 在本地系统发送出的请求,用其中之一的硬件地址覆盖从属设备的原地址。就像是在服务器上不同的人使用不同的硬件地址一样。
1、安装软件
ifenslave一种粘合和分离式的软件,可以将数据包有效的分配到bonding驱动。
bashapt-get install ifenslave
2、修改配置文件,根据自己需要修改即可。
bashvi /etc/network/interfaces # This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5). # The loopback network interface
auto lo
iface lo inet loopback #注释掉原来的eth0,eth1配置
# The primary network interface
#auto eth0
#iface eth0 inet dhcp #auto eth1
#iface eth1 inet dhcp #这里配置模式为轮询策略,模式代号是0,轮询间隔100ms(毫秒)。
up ifenslave bond0 eth0 eth1
down ifenslave bond0 -d eth0 eth1
bond-mode 0
bond-miimon 100 #配置bond的IP
auto bond0
iface bond0 inet static
address 192.168.0.201
netmask 255.255.255.0
gateway 192.168.0.1 #配置bond的虚拟IP(非必须)
auto bond0:1
iface bond0:1 inet static
address 192.168.1.201
netmask 255.255.255.0
gateway 192.168.1.1
3、加载bonding模块
bashsudo gedit /etc/modules
bonding
4、重启计算机,如果成功,bond0、eth0、eth1的MAC地址均会变成原来eth0的MAC。
bashsudo shutdown -r now
5、查看bonding状态
bash cat /proc/net/bonding/bond0
也可以用ifconfig 查看!
参考文献:
1、http://blog.csdn.net/sven_007/article/details/7744416
2、http://www.mike.org.cn/articles/ubuntu-nic-balancing/
Ubuntu 10.04下实现双网卡负载均衡的更多相关文章
- [转]ubuntu 10.04下的配置tftp服务器
		
[转]ubuntu 10.04下的配置tftp服务器 http://www.cnblogs.com/geneil/archive/2011/11/24/2261653.html 第1步:安装tftp所 ...
 - Ubuntu 10.04下架设流媒体服务器
		
Ubuntu 10.04下架设流媒体服务器 个人建议:使用DarwinStreamingSrvr5.5.5,因为DarwinStreamingSrvr6.0.3安装过程中有很多问题需要解决! 目前主流 ...
 - libjingler-0.6.2在windows和ubuntu 10.04下的编译(Google Talk)
		
Libjingle版本:0.6.2 所需的资源: gtest-1.6.0.zip http://download.csdn.net/detail/cl_gamer/48 ...
 - Ubuntu 10.04下如何查看分区的UUID
		
Ubuntu 10.04通过UUID来区分各个磁盘分区,在/etc/fstab配置文件中就是通过UUID来挂载分区的.UUID,英文全称为:Universally Unique Identifier. ...
 - ubuntu 10.04 下 samba 服务的配置
		
1. 安装 $ sudo apt-get install samba $ sudo apt-get install samba-common $ sudo apt-get install samb . ...
 - 在ubuntu 10.04下编译ffmpeg
		
最近准备研究ffmpeg-2.0.1. 那得先运行起来看看效果吧. 首先去官网下载源码: 然后 解压=> ./configure => make OK . 1. 编译好后,发现没有ffp ...
 - Ubuntu 10.04下安装Opengl glx
		
1.安装OpenGL Library sudo apt-get install build-essential 2. 安装OpenGL Utilities sudo apt-get install l ...
 - Ubuntu 10.04下安装Qt
		
sudo apt-get install qt4-dev-tools qt4-doc qt4-qtconfig qt4-demos qt4-designer qt-creator 其中: qt4-de ...
 - Windows 2008 Server R2双网卡负载均衡
		
源文档 <http://blog.sina.com.cn/s/blog_6025f5690101apwd.html>
 
随机推荐
- filebeat直连elasticsearch利用pipeline提取message中的字段
			
这里使用filebeat直连elasticsearch的形式完成数据传输,由于没有logstash,所有对于原始数据的过滤略显尴尬(logstash的filter非常强大). 但是由于业务需求,还是需 ...
 - CentOS 网络互通情况下把一个Linux服务器的文件发送到另一个服务器
			
scp -r 文件名/目录名 root@192.168.2.144:/home/hsw -r 发送目录使用,表示把该目录下的所有子目录以及文件发送过去
 - BZOJ 2152:聪聪可可(树上点分治)
			
题目链接 题意 中文题意. 思路 和上一题类似,只不过cal()函数需要发生变化. 题目中要求是3的倍数,那么可以想到 (a + b) % 3 == 0 和 (a % 3 + b % 3) % 3 = ...
 - 解决 Prometheus 不能获取 Kubernetes 集群上 Windows 节点的 Metrics
			
背景 接上一篇 快速搭建 Windows Kubernetes , 我们发现原来在 Windows Kubernetes 会有一些与在 Linux 上使用不一样的体验,俗称坑,例如 hostAlias ...
 - c++ 二分答案
			
c++ 二分答案 问题 使得x^x达到或超过n位数字的最小正整数x是多少?n<=2000000000 分析 对与这种较难求解的问题,我们很难想出较好的解决策略.但是,我们至少知道答案一定在1与2 ...
 - CS程序和BS程序文字转语音
			
一.项目中一直用到了文字转语音的功能,需求也比较简单,就是将一段报警信息通过语音的方式播放出来,之前一直采用CS客户端,利用微软自带的Speech语音播放库就可以完成, 1.1 封装winSpedk类 ...
 - JAVA跳出指定For循环
			
1. 问题描述 当有多个for循环的时候,如何跳出最外层循环? 2. 解决方案 2.1 正常单个for循环 package com.example.demo; public class TestFor ...
 - 版本管理--svn解决代码冲突
			
高级的svn解决冲突的方法: 选择正在冲突的文件,右键,选择Edit confilicts,这时候出现一个弹框, 看你实际的需要用自己的代码,还是用同事的代码,或者合并起来.最后点击Mark as r ...
 - BZOJ4152 The Captain(dijkstra+巧妙建图)
			
BZOJ4152 The Captain 题面很简洁: 给定平面上的n个点,定义(x1,y1)到(x2,y2)的费用为min(|x1-x2|,|y1-y2|),求从1号点走到n号点的最小费用. 很明显 ...
 - Spring Boot 整合 Shiro实现认证及授权管理
			
Spring Boot Shiro 本示例要内容 基于RBAC,授权.认证 加密.解密 统一异常处理 redis session支持 介绍 Apache Shiro 是一个功能强大且易于使用的Java ...