通常想要做到頻寬合併,不外乎是備援容錯、負載平衡、雙埠合併,通常一台伺服器都會有兩張網路介面卡,不過都只會使用用到一張網路介面卡,那這時將伺服器做頻寬合併是有必要的,以免浪費一張網路介面卡,也可以減輕一張網路介面卡運作的負擔。
檢查網路設定可以看到有兩張網路介面卡eth0跟eth1,現在要將兩張網路介面卡頻寬合併,必需將兩張網路介面卡做設定。
[root@localhost ~]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:0C:29:91:5F:2E
inet addr:192.168.0.200 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe91:5f2e/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:43 errors:0 dropped:0 overruns:0 frame:0
TX packets:49 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:4745 (4.6 KiB) TX bytes:5831 (5.6 KiB)
eth1 Link encap:Ethernet HWaddr 00:0C:29:91:5F:38
inet addr:192.168.0.201 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe91:5f38/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:4 errors:0 dropped:0 overruns:0 frame:0
TX packets:11 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:422 (422.0 b) TX bytes:746 (746.0 b)
先切換到network-scripts目錄下,編輯第一張網路卡eth0,內容輸入如下,編輯完後存檔。
[root@localhost network-scripts]# cd /etc/sysconfig/network-scripts
[root@localhost network-scripts]# vi ifcfg-eth0
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
MASTER=bond0 //頻寬合併後的網路介面卡設定,bond0為合併頻寬的網路介面卡名稱
SLAVE=yes
再來編輯第二張網路介面卡eth1,輸入方式與eth0一樣,編輯完後存檔。
[root@localhost network-scripts]# vi ifcfg-eth1
DEVICE=eth1
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
MASTER=bond0 //頻寬合併後的網路介面卡設定,bond0為合併頻寬的網路介面卡名稱
SLAVE=yes
接下來建立一個新檔案ifcfg-bond0,內容輸入如下,第5、6、7、8行請依該環境使用IP設定,編輯完後存檔。
[root@localhost network-scripts]# vi ifcfg-bond0
DEVICE=bond0
ONBOOT=yes
IPADDR=192.168.0.200 //頻寬合併後的IP位址
BOOTPROTO=none
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
DNS1=192.168.0.1
編輯modprobe.conf,加上兩行設定, miimon=100為每100毫秒(0.1秒)檢查網路一次,可依個人需求設定,這樣代表網路如果斷線,0.1秒就會恢復連線,mode為網路模式,有7種可以設定,通常設定0、1、6這幾種。
[root@localhost /]# vi /etc/modprobe.conf
alias bond0 bonding
options bond0 miimon=100 mode=1
Mode模式功能可以依下表說明選擇。
mode
功能
功能說明
0
balance-rr
負載平衡模式需有 switch 設定 (trunk) 支援才能發揮實質效果,具容錯功能, 其中一張網路卡失效仍可持續運作
1
active-backup
同一時間只有單一網路卡運作,Active Slave 其中一張網路卡斷線時自動啟用另一張網路卡不需 switch 支援
2
balance-xor
具容錯作用
3
broadcast
所有網路卡一起收送網路封包,具容錯功能, 其中一張網路卡斷線仍可持續運作
4
802.3ad
無實際功能,不建議使用
5
balance-tlb
傳出自動負載平衡,傳入由 Current Active Slave 負責,具容錯功能,其中一張網路卡失效仍可持續運作,不需 switch 支援及設定
6
balance-alb
傳出及傳入皆自動負載平衡,具容錯功能, 其中一張網路卡斷線時仍可持續運作,網路卡區動程式需支援 setting hardware address 功能,不需 switch 支援及設定
全部設定完成後,重新啟動網路介面卡,讓bond0重新啟動。
[root@localhost /]# service network restart
Shutting down interface bond0: [ OK ]
Shutting down loopback interface: [ OK ]
Bringing up loopback interface: [ OK ]
Bringing up interface bond0: [ OK ]
查看網路卡設定,可以看到只有bond0有設定IP位址,不過其他兩張網路介面卡還是正常運作。
[root@localhost /]# ifconfig
bond0 Link encap:Ethernet HWaddr 00:0C:29:91:5F:2E
inet addr:192.168.0.200 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe91:5f2e/64 Scope:Link
UP BROADCAST RUNNING MASTER MULTICAST MTU:1500 Metric:1
RX packets:3491 errors:0 dropped:0 overruns:0 frame:0
TX packets:1699 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:330865 (323.1 KiB) TX bytes:268485 (262.1 KiB)
eth0 Link encap:Ethernet HWaddr 00:0C:29:91:5F:2E
UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1
RX packets:2670 errors:0 dropped:0 overruns:0 frame:0
TX packets:1669 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:245559 (239.8 KiB) TX bytes:265153 (258.9 KiB)
eth1 Link encap:Ethernet HWaddr 00:0C:29:91:5F:2E
UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1
RX packets:821 errors:0 dropped:0 overruns:0 frame:0
TX packets:31 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:85306 (83.3 KiB) TX bytes:3566 (3.4 KiB)
查看bonding狀態,可以查看出bond0,這樣就算頻寬合併成功。
[root@localhost /]# cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.5.0 (November 4, 2008)
Bonding Mode: fault-tolerance (active-backup)
Primary Slave: None
Currently Active Slave: eth0
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0
Slave Interface: eth0
MII Status: up
Link Failure Count: 0
Permanent HW addr: 00:0c:29:91:5f:2e
Slave Interface: eth1
MII Status: up
Link Failure Count: 0
Permanent HW addr: 00:0c:29:91:5f:38
留言