1. 程式人生 > >centos6、7分別實現網卡綁定實驗

centos6、7分別實現網卡綁定實驗

bond team nmcli 聚合網絡

1. centos6 實現bonding:



友情提示:

需要兩個相同類型網卡(在虛擬機上盡量使用僅主機模式)

網卡配置文件中關閉NetworManager(NetworManager=no)

bonding 0,5,6模式不需要交換機做配置,實現難度小。其他模式在虛擬機上不配交換機的情況下偶爾實驗結果會有偏差


實驗步驟:

1.1 新建ifcfg-bond0並配置

vim ifcfg-bond0
DEVICE=bond0
BONDING_OPTS= "mode=0 miion=100"   #bonding0模式 ,倆網卡確定心跳間隔100毫秒
IPADDR=172.18.97.97
PREFIX=16
GATEWAY=172.18.0.1
NetworManager=no

1.2 修改兩個網卡配置文件

vim ifcfg-eth1
DEVICE=eth1
MASTER=bond0
SLAVE=yes
復制:cp ifcfg-eth1 ifcfg-eth0
vim ifcfg-eth0
修改DEVICE=eth0

1.3 測試

service network restart #重啟服務

ip a 查看網卡配置信息發現eth0,eth1網卡mac地址相同

用同網段另一臺主機ping 172.18.97.97 關閉一塊網卡觀察是否還能ping通

查看網卡工作狀態:

cat /proc/net/bonding/bond0

查看網卡bonding模式:

cat /sys/class/net/bond0/bonding/mode


2. centos7使用nmcli 實現bonding:


實驗步驟:

2.1 添加bonding接口

nmcli connection add type bond con-name bond0 ifname bond0 mode active-backup
nmcli connection modify bond0 ipv4.method manual ipv4.addresses 192.168.43.71/24 ipv4.gateway 192.168.43.71

2.2 添加從屬接口

nmcli connection add type bond-slave ifname ens34 master bond0
nmcli connection add type bond-slave ifname ens37 master bond0

註:如無為從屬接口提供連接名,則該名稱是接口名稱加類型構成


2.3 要啟動綁定,則必須首先啟動從屬接口

nmcli   connection   up   bond-slave-ens34
nmcli  connection  up  bond-slave-ens37

2.4 啟動綁定

nmcli connection up bond0

2.5 拆除步驟

nmcli connection down bond0 #做完這一步實際已經刪除了bonding
再手動將生成的三個配置文件刪除即可(需nmcli connection reload同步),或者如下命令刪
nmcli connection delete bond0
nmcli connection delete bond-slave-ens37
nmcli connection delete bond-slave-ens34


3. centos7使用nmcli 實現網絡組TEAM:


工作特性:

  • 網絡組不同於舊版中bonding技術,提供更好的性能和擴展性

  • 網絡組由內核驅動和teamd守護進程實現.

  • 多種方式runner
    broadcast
    roundrobin
    activebackup
    loadbalance
    lacp (implements the 802.3ad Link Aggregation Control Protocol)

  • 啟動網絡組接口不會自動啟動網絡組中的port接口

  • 啟動網絡組接口中的port接口總會自動啟動網絡組接口

  • 禁用網絡組接口會自動禁用網絡組中的port接口

  • 沒有port接口的網絡組接口可以啟動靜態IP連接

  • 啟用DHCP連接時,沒有port接口的網絡組會等待port接口的加入



方法步驟:

  1. 創建網絡組接口

    nmcli con add type team con-name CNAME ifname INAME [config JSON]
    CNAME 連接名, INAME 接口名
    JSON 指定runner方式
    格式: ‘{"runner": {"name": "METHOD"}}‘
    METHOD 可以是broadcast, roundrobin,activebackup, loadbalance, lacp

  2. 創建port接口

    nmcli con add type team-slave con-name CNAME ifname INAME master TEAM
    CNAME
    連接名
    INAME 網絡接口名
    TEAM 網絡組接口名
    連接名若不指定,默認為team-slave-IFACE
    nmcli dev dis INAME
    nmcli con up CNAME
    INAME
    設備名 CNAME 網絡組接口名或port接口

實例演示:

1. 創建網絡組

nmcli connection add type team con-name team0 ifname team0 config ‘{"runner":{"name":"loadbalance"}}‘

2. 創建port接口

nmcli connection add type team-slave ifname ens34 master team0
nmcli  connection  add  type  team-slave  ifname  ens37  master  team0

3. 啟動網絡組接口

nmcli connection up team-slave-ens37 up
nmcli connection up team-slave-ens34 up

4. 查看網絡組狀態

teamdctl team0 status


本文出自 “linux運維” 博客,請務必保留此出處http://arm2012.blog.51cto.com/2418467/1976571

centos6、7分別實現網卡綁定實驗