Windows Server 2012 NIC Teaming 介紹和一些需要注意事項

Windows Server 2012 NIC Teaming 也稱作 負載平衡/故障轉移 (LBFO)。主要功能就是帶寬聚合,負載均衡以及故障轉移。Windows Server 2012 首次內置了這個功能,所以配置NIC Teaming不再需要網卡廠商的驅動程序上配置。具體就不多說了,想必大家都已經有所瞭解。直接進入主題寫一些我最近學到的關於NIC Teaming的配置細節和要求限制。

 

 

一,NIC Teaming的要求及限制
 

1.       Hyper-V 主機上支持最多32個網卡組成一個Team.

2.       VM上支持最多2個網卡組成一個Team。

3.       VM 上做NIC TEAMING 只支持“Switch Independent configuration / Address Hash distribution”模式。

4.       VM上做TEAMING 不會影響Live Migration.

5.       只能用以太網卡組成TEAM,不支持WWAN,WLAN,Bluetooth.

6.       不能對在hyper-V主機上的虛擬網卡做Team。

7.       對於兩個速度不一樣的網卡,不支持使用active/active 模式。可以用一個 活動(active),一個備用(standby)模式。NIC TEAMING的分發模式不會基於網卡的速度來分發,一個包含10Gbps 的網卡和一個100Mbps網卡的TEAM,可能會給兩塊網卡各發送一半的流量。但是可以讓10Gbps網卡作爲活動,100Mbps網卡作爲備用。

8.       不能在Team之上再建Team。並且不能將第三方的TEAM 方案和Windows Server 2012 的Teaming 混合使用。

 

 

具體還有很多細節,這個官方文檔上寫的挺詳細的,值得一讀:

 

http://www.microsoft.com/en-us/download/details.aspx?id=30160 

 
 
 
二,NIC Teaming 的配置模式以及負載平衡模式
 
 
   1. 配置模式
      配置模式有3種:
  •  Switch-independent 
   交換機上不需要做任何配置
  •     Static teaming (Switch-dependent teaming)
   需要在交換機和主機上都做配置
  •   LACP (Switch-dependent teaming)
   少數交換機上實現自動配置,在大多數交換機上需要在端口上啓用LACP
 
 
後兩種Switch-dependent teaming 模式可以讓入站和出站帶寬達到Team成員適配器的聚合帶寬,因爲所有的Team 成員適配器是被看做一條大的通道。
 
 
Switch-independent 模式中,組成Team的網絡適配器可以連接在不同的交換機上。
 
Switch-dependent teaming模式則要求,組成Team的適配器都必須連接在同一個物理交換機上。
 
 
 
2. 負載平衡模式

 

Load balancing mode 有兩種:

 

·         Address Hashing

這種算法會基於數據包的地址組成部(源,目標的MAC, IP, 以及端口號)分創建一個哈希值,然後把具有這個哈希值的數據包分配到可用的NIC上。通常這種分配方式就足夠在可用的NIC上建立有效負載。
         
         

·         Hyper-V switch port

 

因爲每個VM都有獨立的MAC地址,所以VMMAC地址或者VM所連接的Hyper-V switch 端口可以做爲劃分流量的基礎,交換機在分發入站流量的時候,可以基於目標Mac 地址(VM Mac地址)來在多條鏈路上分發。然後如果HOST上的VM數量較少時,這種分發方式不能充分做到負載均衡,因爲同一時間內,只有一個NIC在發送一個VM上的流量,並且單一VM的帶寬也被限制在單一NIC的可用帶寬之內。但這種方式在使用VMQs的時候非常有用。

 
 

 

 

3.如何選擇不同的配置方法 NIC Teaming Configuration)和數據分發算法(Load distribution algorithms)

 

·         Switch Independent configuration / Address Hash distribution

 
這種配置方式會通過選用的地址哈希來分發送數據包到所有活動的NIC成員上,因爲在路由的時候,一個IP地址只能關聯一個MAC地址,所以這種方式在接收入站通信時,只能通過一個TEAM 成員來接收。這也意味着入站通信不會超過TEAM 中一個成員的帶寬。
 
這種配置方式最適合用在如下的情況裏:
 
需要考慮在不同的物理交換機上做Team;需要用 活動/備用 active/standby)模式;Team VM;在服務器上跑的工作流有大量出站負載,少量入站負載,例如IIS。
 
 

·         Switch Independent configuration / Hyper-V Port distribution

 

這種方式會基於Hyper-V 交換機的端口號來在所有活動的Team 成員(NIC)上分發流量。每個Hyper-V端口的帶寬不會大於一個TEAM 成員(NIC)的帶寬。

 
由於Hyper-V 端口號是和Team NIC 綁定的,所以同一個VM上的入站和出站流量都用的是同一個Team NIC。
 
 
這種配置方式最適合用在如下的情況裏(同時):
 
VM的數量遠大於Team 成員的數量,可以接受VM的帶寬被限制在一個TEAM NIC成員的可用帶寬之內。
 
 
 

·         Switch Dependent configuration / Address Hash distribution

 
這種配置方式會通過選用的地址哈希來分發送數據包到所有活動的NIC成員上。和所有switch dependent configurations 一樣,交換機來決定如何在TEAM NIC上分發入站通信。
 
 
這種配置方式最適合用在如下的情況裏(同時):
 
在可以保證使用相同交換機上做TEAM時,達到最大性能;在Hyper-V 交換機下做Teaming,VM的帶寬需要大於一個TEAM NIC 的可用帶寬。
 
 

·         Switch Dependent configuration / Hyper-V Port distribution

 

這種方式會基於Hyper-V 交換機的端口號來在所有活動的Team 成員(NIC)上分發流量。每個Hyper-V端口的帶寬不會大於一個TEAM 成員(NIC)的帶寬。和所有switch dependent configurations 一樣,交換機來決定如何在TEAM NIC上分發入站通信。

 
 
這種配置方式最適合用在如下的情況裏 (同時):
 
VM的數量遠大於TEAM NIC 的數量;需要用使用特定協議(如LACP 而對TEAM方式有要求;限制VM的帶寬不能大於TEAM 成員中一個NIC的帶寬。
 
 
 
 
 
三,配置 NIC Teaming
 
 

1   打開Server Manger. NIC Teaming,點 'Disabled'

 

 

 

2.       點擊TASKS -- New Team

 

 

 
 

3.       NIC Team起一個名字, 選擇想要做Team的網卡,

 

然後選擇Teaming Mode,這裏我就選擇“Switch Independent”; 負載均衡模式選擇“Address Hash”;Standby Adapter 選擇None.2個網卡都設置爲活動。

       
如果需要給Team 做VLAN, 可以在最下方的Primary team interface 選擇VLAN number.
配置好之後點擊OK。必須注意,如果需要在Team上做VLAN,不要在組成Team的網卡上(例如這裏是Internal 1, Internal 2)分別作VLAN設置。 
 

 

 

4.       等待NIC Team配置完成,完成後狀態會顯示‘OK

 

 

 

5.       這時我們在網絡連接中就可以看到新建號的NIC Team.

 
 
 

 

 

在給Hyper-V HOST 創建虛擬網絡的時候,可以選擇用新建的 NIC Team 來創建Hyper-V 交換機,如圖。

 

 

 
 邊學習邊分享,如果文章中有錯誤,歡迎指正!:-)
 
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章