主備模式的鍊路聚合将其中一個接口置于備份狀态,并且僅當活動接口斷開連結時才會使其處于活動狀态。
現在讓我們在CentOS 7中配置網卡綁定,運作ip link指令檢視可以使用的網卡
[root@localhost ~]# ip link
1: lo: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp0s3: mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether 08:00:27:7b:d3:32 brd ff:ff:ff:ff:ff:ff
3: enp0s8: mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether 08:00:27:81:d3:be brd ff:ff:ff:ff:ff:ff
使用nmcli配置主備模式鍊路聚合使用nmcli配置主備模式鍊路聚合
在這裡使用enp0s3和enp0s8兩個網卡配置 主備模式的鍊路聚合。
建立Team接口
[root@localhost ~]# nmcli connection add type team con-name team0 ifname team0 config '{"runner":{"name":"activebackup"}}'
Connection 'team0' (4df78635-b9fc-4539-ab02-27db11c656fe) successfully added.
運作nmcli con show檢視team0的配置
[root@localhost ~]# nmcli con show
NAME UUID TYPE DEVICE
team0 4df78635-b9fc-4539-ab02-27db11c656fe team team0
enp0s3 5005942f-a7fd-4e55-b8e7-77928d8da72d ethernet enp0s3
Wired connection 1 45dee64a-53b3-3e2a-b2d4-e377f3e668a2 ethernet enp0s8
添加Slave接口
在這裡使用enp0s3和enp0s8兩個網卡作為team0的slave接口:
[root@localhost ~]# nmcli connection add type team-slave con-name team0-port1 ifname enp0s3 master team0
Connection 'team0-port1' (15183c4a-2053-4b53-ad58-de5a07ae3ae9) successfully added.
[root@localhost ~]# nmcli connection add type team-slave con-name team0-port2 ifname enp0s8 master team0
Connection 'team0-port2' (a34e20b0-3422-46e5-a947-bb2eaa6c0622) successfully added.
檢視端口配置資訊:
[root@localhost ~]# nmcli connection show
Wired connection 1 45dee64a-53b3-3e2a-b2d4-e377f3e668a2 ethernet enp0s8
team0-port1 15183c4a-2053-4b53-ad58-de5a07ae3ae9 ethernet --
team0-port2 a34e20b0-3422-46e5-a947-bb2eaa6c0622 ethernet --
配置設定IP位址
給team0配置設定一個靜态的IP位址并啟動team0配置:
[root@localhost ~]# nmcli connection modify team0 ipv4.method manual ipv4.addresses 192.168.0.200/24 ipv4.gateway 192.168.0.1 ipv4.dns 202.102.128.68
[root@localhost ~]# nmcli connection up team0
Connection successfully activated (master waiting for slaves) (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/4)
檢視連接配接配置資訊,發現team0-port1沒有綁定在enp0s3這個網卡接口上
[root@localhost ~]# nmcli connection
這是以内ifcfg-team0-port1配置檔案和ifcfg-enp0s3兩個配置檔案都設定為開機啟動了
是以我們需要關閉enp0s3的開機啟動,在這裡我們把enp0s3和Wired connection 1這兩個配置都關掉開機啟動
[root@localhost ~]# nmcli connection modify enp0s3 autoconnect no
[root@localhost ~]# nmcli connection modify Wired connection 1 autoconnect no
然後重新開機一下網絡服務,檢視連結配置:
[root@localhost ~]# systemctl restart network
[root@localhost ~]# nmcli connection
[root@localhost ~]# ip ad
可以看到team0-port1和team0-port2都綁定在對應的網卡上面了,team0的ip位址顯示的是手動設定的192.168.0.200
驗證
檢視team0的狀态:
[root@localhost ~]# teamdctl team0 state
setup:
runner: activebackup
ports:
enp0s3
link watches:
link summary: up
instance[link_watch_0]:
name: ethtool
link: up
down count: 0
enp0s8
link watches:
link summary: up
instance[link_watch_0]:
name: ethtool
link: up
down count: 0
runner:
active port: enp0s8
現在活動的端口是enp0s8,我們斷開這個端口,看一下主備模式配置是否工作:
[root@localhost ~]# nmcli device disconnect enp0s8
Device 'enp0s8' successfully disconnected.
link watches:
link summary: up
instance[link_watch_0]:
name: ethtool
link: up
down count: 0
active port: enp0s3
看到活動接口切換到enp0s3上面了。
總結