Bonding ;理念
將多塊網卡綁定同一IP地址對外提供服務,可以實現高可用 或者負載均衡。直接給兩塊網卡設置同一IP地址是不可以的 。通過bonding,虛擬一塊網卡對外提供連接,物理網卡的 被修改為相同的MAC地址
banding工作模式
Mode 0 (balance-rr) 輪轉(Round-robin)策略:
從頭到尾順序的在每一個slave 接口上面發送數據包。本模式提供負 載均衡和容錯的能力
Mode 1 (active-backup) 活動-備份(主備)策略:
只有一個slave被激活,當且僅當活動 的slave接口失敗時才會激活其他slave。為了避免交換機發生混 亂此時綁定的MAC地址只有一個外部端口上可見
Mode 3 (broadcast) 廣播策略:
在所有的slave接口上傳送所有的報文,提供容錯能力
active-backup、balance-tlb 和 balance-alb 模式不需要 交換機的任何特殊配置。其他綁定模式需要配置交換機以便 整合鏈接。如:Cisco 交換機需要在模式 0、2 和 3 中使用 EtherChannel,但在模式4中需要 LACP和 EtherChannel
實戰
首先確認兩塊網卡是否在一個網絡
第一步:添加bonding接口
[root@centos7 15:25:50 network-scripts]#nmcli connection add type bond con-name bond0 ifname bond0 mode active-backup ipv4.method manual ipv4.addresses 192.168.132.29/24 ipv4.dns 114.114.114.114 ipv4.gateway 192.168.136.0
命令解析:nmcli connection add 這個是創建命令必須帶的
type bond 指定類型
con-name bond0 可以認為是創建一個文件名
ifname bond0 接口名字
mode active-backup 指定模式
ipv4.method (manual | auto) 如果是manual 表示創建靜態地址 需要制定ipv4地址 ,網關 dns
如果是 auto的話表示動態地址后面ipv4 ,網關,dns都不需要指定
ipv4.addresses 指定ipv4靜態地址
ipv4.dns 114.114.114.114 dns服務器
ipv4.gateway 192.168.136.0 網關
值得注意的是這條命令會自動創建配置文件,所以就不怕重啟機器這些配置會丟失,
第二步:添加兩個從屬接口
[root@centos7 15:26:18 network-scripts]#nmcli connection add con-name bond-slave0 type bond-slave ifname eth0 master bond0
[root@centos7 15:28:16 network-scripts]#nmcli connection add con-name bond-slave1 type bond-slave ifname eth1 master bond0
自動新建了三個配置文件
第三步 : 啟動綁定
注意:要啟動綁定,則必須首先啟動從屬接口
1#,[root@centos7 15:46:00 network-scripts]#nmcli connection up bond-slave0
2#,[root@centos7 15:46:28 network-scripts]#nmcli connection up bond-slave1
3#,[root@centos7 15:46:32 network-scripts]#nmcli connection up bond0
在這個文件中能看到binding網卡的詳細狀態
[root@centos7 15:51:38 network-scripts]#cat /proc/net/bonding/bond0
ip命令也能看得出來eth0,1網卡都不工作了,
刪除bonding設備
第一步:down掉bonding設備
[root@centos7 16:03:10 network-scripts]#nmcli connection down bond0
第二步:卸載binding驅動模塊
lsmod | grep bonding 可以過濾出來bonding模塊,默認lsmod會顯示所有系統安裝的驅動模塊
卸載:
[root@centos7 16:10:29 network-scripts]#modprobe -r bonding
第四步:刪除相關配置文件
nmcli 命令也支持刪除功能 ,默認就會把對應的配置文件也刪掉 ,可以說非常方便,
[root@centos7 16:13:17 network-scripts]#nmcli connection delete bond0
[root@centos7 16:15:05 network-scripts]#nmcli connection delete bond-slave0
[root@centos7 16:15:05 network-scripts]#nmcli connection delete bond-slave1
bond0,bond-slave0,?bond-slave1 三個配置文件被自動刪掉了
最后把原來的網卡在up起來就可以回到原來的狀態了。
本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/90401