CentOS 7.2 team實現網卡聚合鏈路(雙網卡綁定)腳本及驗證

使用team實現網卡聚合鏈路腳本:

#!/bin/bash
#創建一個名爲team0的鏈路接口
IP=192.168.101.1
GATE=192.168.101.254
ETH1=eno1
ETH2=eno2
#ETH3=eno3
#ETH4=eno4
nmcli con add type team con-name team0 ifname team0 config '{"runner": {"name":"activebackup"}}'
#nmcli con add type team con-name team1 ifname team1 config '{"runner": {"name":"activebackup"}}'
cat <<EOF> /etc/sysconfig/network-scripts/ifcfg-$ETH1
TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
NAME=$ETH1
DEVICE=$ETH1
ONBOOT=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
PEERDNS=yes
PEERROUTES=yes
EOF
cat <<EOF> /etc/sysconfig/network-scripts/ifcfg-$ETH2
TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
NAME=$ETH2
DEVICE=$ETH2
ONBOOT=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
PEERDNS=yes
PEERROUTES=yes
EOF
cat <<EOF> /etc/sysconfig/network-scripts/ifcfg-team0
DEVICE=team0
TEAM_CONFIG="{\"runner\": {\"name\":\"activebackup\"}}"
DEVICETYPE=Team
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
NAME=team0
ONBOOT=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPADDR=$IP
PREFIX=24
GATEWAY=$GATE
EOF
nmcli connection add type team-slave con-name team0-port1 ifname $ETH1 master team0
nmcli connection add type team-slave con-name team0-port2 ifname $ETH2 master team0
nmcli connection up team0-port2
nmcli connection up team0-port1
reboot


驗證:

1.查看team0狀態:

[root@localhost ~]# teamdctl team0 state view
setup:
  runner: activebackup
ports:
  eno1
    link watches:
      link summary: up
      instance[link_watch_0]:
        name: ethtool
        link: up
        down count: 0
  eno2
    link watches:
      link summary: up
      instance[link_watch_0]:
        name: ethtool
        link: up
        down count: 0
runner:
  active port: eno1    #當前主接口

2.列出team0端口

[root@localhost ~]# teamnl team0 ports
 3: eno2: up 1000Mbit FD 
 2: eno1: up 1000Mbit FD 

3.測試,宕掉當前主接口,看是否切換

[root@localhost ~]# nmcli device disconnect eno1
Device 'eno1' successfully disconnected.
[root@localhost ~]# teamnl team0 ports
 3: eno2: up 1000Mbit FD 
[root@localhost ~]# teamdctl team0 state view
setup:
  runner: activebackup
ports:
  eno2
    link watches:
      link summary: up
      instance[link_watch_0]:
        name: ethtool
        link: up
        down count: 0
runner:
  active port: eno2  #切換成功

詳細瞭解team,可訪問紅帽官網

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章