日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux 网卡绑定updelay,Linux 配置双网卡绑定实现负载均衡

發布時間:2024/9/30 linux 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux 网卡绑定updelay,Linux 配置双网卡绑定实现负载均衡 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Linux 配置雙網卡綁定,實現負載均衡

1、Bond的工作模式

Linux bonding驅動提供了一個把多個網絡接口設備捆綁為單個的網絡接口設置來使用,用于網絡負載均衡及網絡冗余。

bonding一共有7種工作模式(mode):

1)、bond=0,(balance-rr) Round-robin policy: (平衡輪詢策略):傳輸數據包順序是依次傳輸,直到最后一個傳輸完畢,此模式提供負載平衡和容錯能力。

2)、bond=1,(active-backup) Active-backup policy:(活動備份策略):只有一個設備處于活動狀態。一個宕掉另一個馬上由備份轉換為主設備。mac地址是外部可見得。此模式提供了容錯能力。

3)、bond=2,(balance-xor) XOR policy:(平衡策略):傳輸根據[(源MAC地址xor目標MAC地址)mod設備數量]的布爾值選擇傳輸設備。 此模式提供負載平衡和容錯能力。

4)、bond=3,(broadcast) Broadcast policy:(廣播策略):將所有數據包傳輸給所有設備。此模式提供了容錯能力。

5)、bond=4,(802.3ad) IEEE 802.3ad Dynamic link aggregation. IEEE 802.3ad 動態鏈接聚合:創建共享相同的速度和雙工設置的聚合組。此模式提供了容錯能力。每個設備需要基于驅動的重新獲取速度和全雙工支持;如果使用交換機,交換機也需啟用 802.3ad 模式。

6)、bond=5,(balance-tlb) Adaptive transmit load balancing(適配器傳輸負載均衡):通道綁定不需要專用的交換機支持。發出的流量根據當前負載分給每一個設備。由當前設備處理接收,如果接受的設 備傳不通就用另一個設備接管當前設備正在處理的mac地址。

7)、bond=6,(balance-alb) Adaptive load balancing: (適配器負載均衡):包括mode5,由 ARP 協商完成接收的負載。bonding驅動程序截獲 ARP在本地系統發送出的請求,用其中之一的硬件地址覆蓋從屬設備的原地址。就像是在服務器上不同的人使用不同的硬件地址一樣。

2、配置步驟

以下步驟為Ubuntu系統,配置bond=6的雙網卡綁定步驟,其他模式的方法一樣;

2.1、安裝ifenslave軟件

fenslave為一種粘合和分離式的軟件,可以將數據包有效的分配到bonding驅動

sudo apt install ifenslave

2.2、/etc/modules文件

在/etc/modules文件中加入以下配置

bonding mode=6 miimon=100

mode=6 表示采用模式1;

miimon是用來進行鏈路監測的。比如miimon=100,表示系統每100ms監測一次鏈路連接狀態,如果有一條線路不通就切換另一條線路。

2.3、修改/etc/network/interfaces文件配置

首先需要確定網卡接口的名稱,可以通過ifconfig命令查看,當前是網卡接口分別是ens33和ens34;在/etc/network/interfaces文件增加如下配置

# 雙網卡配置

auto ens33

iface ens33 inet manual

bond-master bond0

auto ens34

iface ens34 inet manual

bond-master bond0

auto bond0

iface bond0 inet static

address 192.168.20.10

netmask 255.255.255.0

gateway 192.168.20.2

dns-nameservers 192.168.20.1 119.29.29.29

bond-slaves ens33 ens34

bond-lacp-rate 1

bond-mode 6

bond-miimon 100

2.4、加載binding模塊

#? 載入模塊

$ sudo modprobe bonding

# 查看模塊,如果模塊已經加載,顯示出來

$ sudo lsmod|grep bonding

bonding? ? ? ? ? ? ? 163840? 0

2.5、查看狀態

?查看網絡配置

$ ifconfig

bond0? ? Link encap:以太網? 硬件地址 00:0c:29:34:7a:4a

inet 地址:192.168.20.10? 廣播:192.168.20.255? 掩碼:255.255.255.0

inet6 地址: fe80::20c:29ff:fe34:7a4a/64 Scope:Link

UP BROADCAST RUNNING MASTER MULTICAST? MTU:1500? 躍點數:1

接收數據包:964 錯誤:0 丟棄:0 過載:0 幀數:0

發送數據包:4205 錯誤:0 丟棄:0 過載:0 載波:0

碰撞:0 發送隊列長度:1000

接收字節:75022 (75.0 KB)? 發送字節:300032 (300.0 KB)

ens33? ? Link encap:以太網? 硬件地址 00:0c:29:34:7a:4a

UP BROADCAST RUNNING SLAVE MULTICAST? MTU:1500? 躍點數:1

接收數據包:2740 錯誤:0 丟棄:0 過載:0 幀數:0

發送數據包:3416 錯誤:0 丟棄:0 過載:0 載波:0

碰撞:0 發送隊列長度:1000

接收字節:3899473 (3.8 MB)? 發送字節:278409 (278.4 KB)

ens34? ? Link encap:以太網? 硬件地址 00:0c:29:34:7a:54

UP BROADCAST RUNNING SLAVE MULTICAST? MTU:1500? 躍點數:1

接收數據包:1369 錯誤:0 丟棄:0 過載:0 幀數:0

發送數據包:2125 錯誤:0 丟棄:0 過載:0 載波:0

碰撞:0 發送隊列長度:1000

接收字節:106846 (106.8 KB)? 發送字節:139061 (139.0 KB)

?查看binding狀態

$ cat /proc/net/bonding/bond0

Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)

Bonding Mode: adaptive load balancing

Primary Slave: None

Currently Active Slave: ens33

MII Status: up

MII Polling Interval (ms): 100

Up Delay (ms): 0

Down Delay (ms): 0

Slave Interface: ens33

MII Status: up

Speed: 1000 Mbps

Duplex: full

Link Failure Count: 0

Permanent HW addr: 00:0c:29:34:7a:4a

Slave queue ID: 0

Slave Interface: ens34

MII Status: up

Speed: 1000 Mbps

Duplex: full

Link Failure Count: 0

Permanent HW addr: 00:0c:29:34:7a:54

Slave queue ID: 0

2.6、驗證測試

?物理上關閉一個網卡(拔網線)

# 關閉前,速率是2000Mb/s

$ ethtool bond0

Settings for bond0:

Supported ports: [ ]

Supported link modes:? Not reported

Supported pause frame use: No

Supports auto-negotiation: No

Advertised link modes:? Not reported

Advertised pause frame use: No

Advertised auto-negotiation: No

Speed: 2000Mb/s

Duplex: Full

Port: Other

PHYAD: 0

Transceiver: internal

Auto-negotiation: off

Cannot get wake-on-lan settings: Operation not permitted

Link detected: yes

# 關閉后,速率速率變成1000Mb/s

$ ethtool bond0

Settings for bond0:

Supported ports: [ ]

Supported link modes:? Not reported

Supported pause frame use: No

Supports auto-negotiation: No

Advertised link modes:? Not reported

Advertised pause frame use: No

Advertised auto-negotiation: No

Speed: 1000Mb/s

Duplex: Full

Port: Other

PHYAD: 0

Transceiver: internal

Auto-negotiation: off

Cannot get wake-on-lan settings: Operation not permitted

Link detected: yes

注意:不可以使用ifdown 關閉網卡,會導致網絡中斷

3、總結

Linux bonding一共有7種工作模式(mode),如果是想要加大網卡的吞吐量,通常會使用mode=6的模式,如果是注重網絡的穩定,通常會使用mode=1的模式;

總結

以上是生活随笔為你收集整理的linux 网卡绑定updelay,Linux 配置双网卡绑定实现负载均衡的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。