Bond(也稱為 NIC 組合或鏈路聚合)是一種技術 用於將多個 NIC 綁定到單個網絡設備。有可能的實現不同的目標,例如使網絡容錯, 提高性能或兩者兼而有之。
高速硬件,如光纖通道和相關的交換硬件可能相當昂貴。 通過進行鏈路聚合,兩個網卡可以作為一個邏輯接口出現,從而實現雙倍速度。 這個是大多數支持的原生 Linux 內核功能。 如果您的節點有多個以太網端口,您可以實現故障轉移。
聚合鏈接可以改善實時遷移延遲並改善 Proxmox VE Cluster 節點之間的數據復制速度。
綁定有7種模式:
-
循環(balance-rr): 按順序傳輸網絡數據包 從第一個可用的網絡接口 (NIC) 從設備通過到最后一個。 此模式提供負載平衡和容錯。
-
主動-備份(active-backup): bond中只有一個網卡活動的。 當且僅當活動的網卡失敗,備份網卡變為活動的。 單個邏輯綁定接口的 MAC 地址為僅在一個 NIC(端口)上外部可見,以避免失真網絡交換機。 此模式提供容錯功能。
-
XOR(balance-xor): 根據[(源MAC 地址與目標 MAC 地址異或)取模從NIC數量]。 這將為每個目標 MAC 選擇相同的 NIC 從屬 地址。 此模式提供負載平衡和容錯。
-
Broadcast(廣播): 在所有slave上傳輸網絡數據包。 此模式提供容錯功能。
-
IEEE 802.3ad 動態鏈路聚合 (802.3ad)(LACP): 創建共享相同速度和雙工的聚合組設置。 利用活動中的所有從網絡接口根據 802.3ad 規范的聚合器組。
-
自適應傳輸負載平衡 (balance-tlb): Linux 綁定不需要任何特殊網絡交換機的驅動程序模式支持。 傳出的網絡數據包流量根據到每個網絡上的當前負載(相對於速度計算) 從接口。 傳入流量由一個當前接收指定的從網絡接口。 如果這個接收slave失敗, 另一個slave接管失敗slave接收的MAC地址。
-
自適應負載平衡 (balance-alb): 包括 balance-tlb 和 receive 用於 IPV4 流量的負載平衡 (rlb),並且不需要任何特殊的網絡交換機支持。通過ARP協商實現接收負載均衡。 綁定驅動程序攔截發送的 ARP 回復,由本地系統輸出並覆蓋源,硬件地址與其中一個 NIC 的唯一硬件地址,單個邏輯綁定接口中的從,以便不同的網絡對等體為其網絡數據包使用不同的 MAC 地址通信。
如果您的交換機支持 LACP (IEEE 802.3ad) 協議,那么我們建議使用相應的綁定模式(802.3ad)。 否則你通常應該使用 active-backup 模式。
如果您打算在綁定接口上運行集群網絡,那么您必須在綁定接口上使用主動-被動模式,其他模式是不支持的。
以下綁定配置可用作分布式/共享存儲網絡。好處是您可以獲得更快的速度和網絡將是容錯的。
Example: Use bond with fixed IP address
auto lo
iface lo inet loopback
iface eno1 inet manual
iface eno2 inet manual
iface eno3 inet manual
auto bond0
iface bond0 inet static
bond-slaves eno1 eno2
address 192.168.1.2/24
bond-miimon 100
bond-mode 802.3ad
bond-xmit-hash-policy layer2+3
auto vmbr0
iface vmbr0 inet static
address 10.10.10.2/24
gateway 10.10.10.1
bridge-ports eno3
bridge-stp off
bridge-fd 0
Example: Use a bond as bridge port
auto lo
iface lo inet loopback
iface eno1 inet manual
iface eno2 inet manual
auto bond0
iface bond0 inet manual
bond-slaves eno1 eno2
bond-miimon 100
bond-mode 802.3ad
bond-xmit-hash-policy layer2+3
auto vmbr0
iface vmbr0 inet static
address 10.10.10.2/24
gateway 10.10.10.1
bridge-ports bond0
bridge-stp off
bridge-fd 0