team
鏈路聚合(聚合鏈路 網絡卡繫結)
多張網絡卡繫結在一起(至少兩張),虛擬出一個網絡卡team0與外部通訊。
作用:提高網絡卡裝置的可靠性,提供冗餘,解決網絡卡的單點故障。
構建思路:
eth1,eth2,team0組成一個隊,只在team0上配置IP,eth1,eth2上
不配置地址。eth1和eth2是team0的slave成員,team0每5秒檢測一次
自己的slave是否存在,如果其中一個slave故障,team0會把資料包轉給
另外一個slave成員,同時tema0會每2秒向故障的slave傳送hello包,
slave故障時它才會再次接收轉發資料任務。
建立虛擬網絡卡的格式:
# nmcli connection 新增 型別 team 配置檔名 team0 網絡卡名 team0
每次開機自動啟用 鏈路聚合管理方式為 熱備份方式
新增slave成員的格式:
# nmcli connection 新增 型別 team-成員 配置檔名 team0-1 網絡卡名
eth1 主裝置為 team0
1.建立虛擬網絡卡team0
[root@server0 ~]# nmcli connection add type team con-name team0
ifname team0 autoconnect yes config '{"runner": {"name": "activebackup"}}'
#要建立聚合鏈路這裡的type用team,常用的型別還有ethernet和bridge
#con-name team0 虛擬網絡卡配置檔名字是team0
#ifname team0 建立的虛擬網絡卡名稱是team0
#autoconnect yes 開機自動啟動
#config '{"runner": {"name": "activebackup"}}' 定義team工作模式為activebackup
#工作模式的內容較長不容易記憶,可以檢視man幫助 man teamd.conf 全文搜尋/example
[root@server0 ~]# ifconfig #檢視生成的虛擬網絡卡team0
#生成配置檔案位置:/etc/sysconfig/network-scripts/
#目錄下檔名稱為ifcfg-tema0
2.新增slave成員team0-1和team0-2
[root@server0 ~]# nmcli connection add type team-slave con-name team0-1 ifname eth1 autoconnect yes master team0 #要新增的是slave成員所以type的型別是team-slave #ifname eth1需把網絡卡名稱為eth1的裝置新增成slave #con-name team0-1記錄eth1身份的配置檔名team0-1 #autoconnect yes 開機自啟動 #master team0,eth1裝置的master是team0 [root@server0 ~]# nmcli connection add type team-slave con-name team0-2 ifname eth2 autoconnect yes master team0
#生成配置檔案位置:/etc/sysconfig/network-scripts/
3.為tema0配置IP地址
[root@server0 ~]# nmcli connection modify team0 ipv4.method manual ipv4.addresses 192.168.1.1/24 connection.autoconnect yes
4 啟用地址
[root@server0 ~]# nmcli connection up team0 [root@server0 ~]# nmcli connection up team0-1 [root@server0 ~]# nmcli connection up team0-2
如果無法啟用,刪除所有配置重新來過
[root@server0 ~]# nmcli connection delete team0
[root@server0 ~]# nmcli connection delete team0-1
[root@server0 ~]# nmcli connection delete team0-2
5 檢視tema0的狀態
[root@server0 ~]# teamdctl team0 state
setup:
runner: activebackup #工作模式是activebackup
ports:
eth1
link watches:
link summary: up
instance[link_watch_0]:
name: ethtool
link: up #eth1當前為up狀態
eth2
link watches:
link summary: up
instance[link_watch_0]:
name: ethtool
link: up #eth2當前為up狀態
runner:
active port: eth2 #當前活躍裝置為eth2
[root@server0 ~]# ifconfig eth2 down #禁用eth2網絡卡,檢視自動切換的狀態
[root@server0 ~]# teamdctl team0 state