一、Team鏈路聚合介紹
1. Teaming技術(shù)簡(jiǎn)介
1.Teaming技術(shù)就是把同一臺(tái)服務(wù)器上的多個(gè)物理網(wǎng)卡通過(guò)軟件綁定成一個(gè)虛擬網(wǎng)卡;
2.我們可以通過(guò)Teaming技術(shù)做鏈路聚合,實(shí)現(xiàn)不同網(wǎng)卡的網(wǎng)卡的負(fù)載均衡和冗余;
2. 網(wǎng)卡的bonding和Teaming技術(shù)
1.一般在在RHEL5/RHEL6中使用的是Bonding,而RHEL7提供了一項(xiàng)新的實(shí)現(xiàn)技術(shù)Teaming,用來(lái)實(shí)現(xiàn)鏈路聚合的功能。
2.網(wǎng)卡的鏈路聚合一般常用的有"bond"和"team"兩種模式,"bond"模式最多可以添加兩塊網(wǎng)卡,"team"模式最多可以添加八塊網(wǎng)卡。
3. Team常用工作模式
Team常用工作模式如下:
- roundrobin: 以輪循的模式傳輸所有端口的包
- activebakup:主備模式這是一個(gè)故障遷移程序,監(jiān)控鏈接更改并選擇活動(dòng)的端口進(jìn)行傳輸
- loadbalance: 監(jiān)控流量并使用哈希函數(shù)以嘗試在選擇傳輸端口的時(shí)候達(dá)到完美均衡
- broadcast: 廣播容錯(cuò),設(shè)備通過(guò)所有端口傳輸數(shù)據(jù)包
二、實(shí)踐環(huán)境規(guī)劃
本次實(shí)踐規(guī)劃:
hostname | team接口IP地址 | 物理網(wǎng)卡 | 操作系統(tǒng)版本 |
---|---|---|---|
jeven | 192.168.200.126 | ens37/38/39/40 | centos 7.6 |
三、添加物理網(wǎng)卡
1. 新增物理網(wǎng)卡
給虛擬機(jī)新增四張物理網(wǎng)卡
需要注意的是添加的網(wǎng)絡(luò)適配器需網(wǎng)絡(luò)模式一致,添加的個(gè)數(shù)為2的指數(shù)。
2. 查看網(wǎng)卡信息
查看新增的4張網(wǎng)卡ens37/38/39/40,已正常添加。
[root@jeven ~]# ip add |grep ens
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
inet 192.168.3.166/24 brd 192.168.3.255 scope global noprefixroute dynamic ens33
120: ens37: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
inet 192.168.200.215/24 brd 192.168.200.255 scope global noprefixroute dynamic ens37
121: ens38: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
inet 192.168.200.216/24 brd 192.168.200.255 scope global noprefixroute dynamic ens38
122: ens39: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
inet 192.168.200.212/24 brd 192.168.200.255 scope global noprefixroute dynamic ens39
126: ens40: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
inet 192.168.200.217/24 brd 192.168.200.255 scope global noprefixroute dynamic ens40
四、Team鏈路聚合配置
1. 查看team的工作模式
通過(guò)teamd.conf查看team的工作模式
man teamd.conf
2. 創(chuàng)建team0的網(wǎng)絡(luò)接口
使用 nmcli 命令,添加一個(gè) team 網(wǎng)絡(luò)接口 team0,我們選擇的team模式是activebakup主備模式。
[root@jeven ~]# nmcli connection add type team con-name team0 ifname team0 config '{"runner": {"name": "activebackup"}}'
Connection 'team0' (7d4367b3-4f6b-4fbf-968f-daf110d7292b) successfully added.
3. 配置team0接口的IP地址
配置team0接口的IP地址為192.168.200.126/24
mcli connection modify team0 ipv4.addresses 192.168.200.126/24 ipv4.method manual
4. 添加team0的子接口
將物理網(wǎng)卡ens37、ens38、ens39、ens40作為team0的子接口。
[root@jeven ~]# nmcli connection add type team-slave con-name team0-port1 ifname ens37 master team0
Connection 'team0-port1' (66450b15-fdec-48d8-9df4-ba8ab29c8633) successfully added.
[root@jeven ~]# nmcli connection add type team-slave con-name team0-port2 ifname ens38 master team0
Connection 'team0-port2' (dc869a3b-d9bd-49a7-a1b8-1368e5f2e0db) successfully added.
[root@jeven ~]# nmcli connection add type team-slave con-name team0-port3 ifname ens39 master team0
Connection 'team0-port3' (df21f75f-0343-45e7-9051-f3063cedfee0) successfully added.
[root@jeven ~]# nmcli connection add type team-slave con-name team0-port4 ifname ens40 master team0
Connection 'team0-port4' (58838a61-fb21-443f-a932-959ebd40c21e) successfully added.
5. 激活網(wǎng)卡
重啟網(wǎng)絡(luò)服務(wù)
[root@jeven network-scripts]# nmcli con reload
[root@jeven network-scripts]# nmcli con up team0-port1
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/38)
[root@jeven network-scripts]# nmcli con up team0-port2
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/39)
[root@jeven network-scripts]# nmcli con up team0-port3
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/40)
[root@jeven network-scripts]# nmcli con up team0-port4
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/41)
6. 檢查team0接口的狀態(tài)
檢查team0接口的狀態(tài),當(dāng)前活動(dòng)的網(wǎng)卡為ens37。
[root@jeven network-scripts]# teamdctl team0 state
setup:
runner: activebackup
ports:
ens37
link watches:
link summary: up
instance[link_watch_0]:
name: ethtool
link: up
down count: 0
ens38
link watches:
link summary: up
instance[link_watch_0]:
name: ethtool
link: up
down count: 0
ens39
link watches:
link summary: up
instance[link_watch_0]:
name: ethtool
link: up
down count: 0
ens40
link watches:
link summary: up
instance[link_watch_0]:
name: ethtool
link: up
down count: 0
runner:
active port: ens37
五、測(cè)試Team鏈路聚合
1. 測(cè)試team0接口的網(wǎng)絡(luò)連通情況
在宿主機(jī),ping其team0的IP地址,網(wǎng)絡(luò)正常。
ping 192.168.200.126 -t
1. 停用ens37網(wǎng)卡
在本機(jī)停用ens37網(wǎng)卡,在局域網(wǎng)其他主機(jī)測(cè)試其連通性。
- 本機(jī)停用ens37網(wǎng)卡
[root@jeven ~]# ifdown ens37
Device 'ens37' successfully disconnected.
- 查看當(dāng)前team接口狀態(tài),可以看到現(xiàn)在ens40網(wǎng)卡接管服務(wù)。
[root@jeven ~]# teamdctl team0 state
setup:
runner: activebackup
ports:
ens38
link watches:
link summary: up
instance[link_watch_0]:
name: ethtool
link: up
down count: 0
ens39
link watches:
link summary: up
instance[link_watch_0]:
name: ethtool
link: up
down count: 0
ens40
link watches:
link summary: up
instance[link_watch_0]:
name: ethtool
link: up
down count: 0
runner:
active port: ens40
3. 測(cè)試網(wǎng)絡(luò)情況
繼續(xù)查看網(wǎng)絡(luò)連通性,網(wǎng)絡(luò)正常,網(wǎng)絡(luò)沒(méi)有中斷。
六、刪除子接口操作
1. 刪除子接口
查看網(wǎng)卡連接信息
[root@jeven ~]# nmcli con show
NAME UUID TYPE DEVICE
docker0 85baca8e-d2b0-4fdc-bf5d-2d202ae7d2a3 bridge docker0
ens33 ba415981-963e-4130-984a-8dd764f4bb70 ethernet ens33
team0 7d4367b3-4f6b-4fbf-968f-daf110d7292b team team0
team0-port1 66450b15-fdec-48d8-9df4-ba8ab29c8633 ethernet ens37
team0-port2 dc869a3b-d9bd-49a7-a1b8-1368e5f2e0db ethernet ens38
team0-port3 df21f75f-0343-45e7-9051-f3063cedfee0 ethernet ens39
team0-port4 58838a61-fb21-443f-a932-959ebd40c21e ethernet ens40
virbr0 d83517b6-f9f1-434b-bf41-dcedb7cb1bde bridge virbr0
刪除子接口
[root@jeven ~]# nmcli con delete team0-port4
Connection 'team0-port4' (58838a61-fb21-443f-a932-959ebd40c21e) successfully deleted.
[root@jeven ~]# nmcli con delete team0-port3
Connection 'team0-port3' (df21f75f-0343-45e7-9051-f3063cedfee0) successfully deleted.
2. 查看網(wǎng)卡信息
查看網(wǎng)卡連接信息
[root@jeven ~]# nmcli con show
NAME UUID TYPE DEVICE
docker0 85baca8e-d2b0-4fdc-bf5d-2d202ae7d2a3 bridge docker0
ens33 ba415981-963e-4130-984a-8dd764f4bb70 ethernet ens33
team0 7d4367b3-4f6b-4fbf-968f-daf110d7292b team team0
team0-port1 66450b15-fdec-48d8-9df4-ba8ab29c8633 ethernet ens37
team0-port2 dc869a3b-d9bd-49a7-a1b8-1368e5f2e0db ethernet ens38
virbr0 d83517b6-f9f1-434b-bf41-dcedb7cb1bde bridge virbr0
Wired connection 4 02e53166-ccb4-38cf-b922-a5ffd8c549e5 ethernet ens40
Wired connection 1 2650ffb4-2ebf-361f-b30f-489f12a7b889 ethernet --
Wired connection 2 412789b9-ffeb-3280-8129-8c4465f0a779 ethernet --
Wired connection 3 80a0f41d-942f-3e88-8d22-c63604519d15 ethernet --
查看team接口狀態(tài)文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-737934.html
[root@jeven ~]# teamdctl team0 state
setup:
runner: activebackup
ports:
ens37
link watches:
link summary: up
instance[link_watch_0]:
name: ethtool
link: up
down count: 0
ens38
link watches:
link summary: up
instance[link_watch_0]:
name: ethtool
link: up
down count: 0
runner:
active port: ens38
3. 重啟team0
重啟team0,查看當(dāng)前網(wǎng)絡(luò)連接狀態(tài),ens39/40兩張網(wǎng)卡已停止使用。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-737934.html
[root@jeven network-scripts]# nmcli con reload
[root@jeven network-scripts]# nmcli con up team0
Connection successfully activated (master waiting for slaves) (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/52)
[root@jeven network-scripts]# nmcli con show
NAME UUID TYPE DEVICE
docker0 85baca8e-d2b0-4fdc-bf5d-2d202ae7d2a3 bridge docker0
ens33 ba415981-963e-4130-984a-8dd764f4bb70 ethernet ens33
team0 7d4367b3-4f6b-4fbf-968f-daf110d7292b team team0
team0-port1 66450b15-fdec-48d8-9df4-ba8ab29c8633 ethernet ens37
team0-port2 dc869a3b-d9bd-49a7-a1b8-1368e5f2e0db ethernet ens38
virbr0 d83517b6-f9f1-434b-bf41-dcedb7cb1bde bridge virbr0
Wired connection 1 2650ffb4-2ebf-361f-b30f-489f12a7b889 ethernet --
Wired connection 2 412789b9-ffeb-3280-8129-8c4465f0a779 ethernet --
Wired connection 3 80a0f41d-942f-3e88-8d22-c63604519d15 ethernet --
Wired connection 4 02e53166-ccb4-38cf-b922-a5ffd8c549e5 ethernet --
到了這里,關(guān)于Linux系統(tǒng)之Team鏈路聚合配置的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!