一,背景需求
我們在實(shí)施虛擬化或者超融合的時(shí)候,部署的linux業(yè)務(wù)虛擬機(jī),因業(yè)務(wù)需求,需要對幾個(gè)網(wǎng)卡做綁定。有些工程師可能不光從事安全工作,也從事主機(jī)存儲(chǔ)配置類的工作,那么配置網(wǎng)卡聚合的情況就會(huì)更多。大多數(shù)工程師對Linux不熟悉,尤其是做一些復(fù)雜的配置。我以前剛開始接觸Linux,遇到配置網(wǎng)卡聚合的情況也會(huì)慌,網(wǎng)上找了不少教程,大多數(shù)內(nèi)容長的都一樣,俗稱復(fù)制粘貼,沒有參考意義。后面我系統(tǒng)性學(xué)習(xí)了Linux,編寫了很多實(shí)用性腳本,借此機(jī)會(huì)分享下Linux下配置網(wǎng)卡聚合的腳本。
二,技術(shù)介紹
Linux網(wǎng)卡聚合和交換機(jī)聚合類似,都需要雙邊來共同協(xié)商,協(xié)商不一致,則無法正常工作。Linux網(wǎng)卡聚合有7種模式
服務(wù)器bond模式
交換機(jī)聚合模式
mode0 (balance-rr)Round-robin
on
mode1 (active-backup)Active-backup
無需配置
mode2 (balance-xor)XOR
無需配置
mode3 (broadcast)
無需配置
mode4 (802.3ad)IEEE 802.3ad Dynamic link aggregation
active
mode5 (balance-tlb)Adaptive transmit load balancing
無需配置
mode6 (balance-alb)Adaptive load balancing
無需配置
我們常用的配置就三種,
1,mode0,輪詢模式,交換機(jī)需要靜態(tài)模式或者手工模式。
2,mode1,主備模式,交換機(jī)無需配置。
3,mode4,LACP模式,交換機(jī)也需要配置為LACP。這個(gè)模式用得比較多,可以增加鏈路帶寬,負(fù)載均衡。
在現(xiàn)行的Linux發(fā)行版中,配置網(wǎng)卡聚合的程序?.NET-tools和networkManager,即大家經(jīng)常叫的bond綁定和team綁定在6系列中,只支持net-tools,即bond,在7系列中支持兩種模式,8系列中,默認(rèn)支持team模式。我在物理服務(wù)器和虛擬機(jī)上測試了多次,兩種配置模式性能無差別。有些客戶要求安裝完Linux要禁用NetworkManager 服務(wù),所以只能使用bond來做聚合。
我根據(jù)不同的版本,不同的系統(tǒng)環(huán)境適配了不同的配置模式。
此腳本只支持centos 6.x/7.x/8.x RedHat 6.x/7.x/8.x。
三,準(zhǔn)備工作
下載此腳本,上傳到需要配置的操作系統(tǒng)下。如果網(wǎng)口較充足,建議使用臨時(shí)IP,用工具上傳并ssh進(jìn)行操作,否則使用優(yōu)盤等上傳到操作系統(tǒng)中進(jìn)行配置。
四,使用方法
腳本使用Linux shell 進(jìn)行編寫,全自動(dòng),全交互,使用方便簡單。考慮到不同的終端和操作系統(tǒng)語言的復(fù)雜性,我適配了中文和英文。如果腳本亂碼,則選擇英文即可。
腳本可選擇使用bond模式和team模式來進(jìn)行綁定
選擇相應(yīng)的模式之后,會(huì)列出當(dāng)前主機(jī)所有網(wǎng)卡、IP、以及網(wǎng)關(guān)
輸入要配置的網(wǎng)卡序號(hào),序號(hào)之間用空格隔開,回車之后輸入bond名稱,此處bond名稱與bond模式無關(guān),但是為了方便分辨,建議bond模式和bond名稱統(tǒng)一。
接下來腳本會(huì)提示輸入聚合口的IP,掩碼、網(wǎng)關(guān)、DNS信息,所有信息一目了然。
所有信息填寫無誤,回車之后,會(huì)提示選擇bond綁定模式,大家根據(jù)自己的情況選擇相應(yīng)的模式
選擇模式之后,腳本會(huì)進(jìn)行進(jìn)一步的配置
配置結(jié)果
如何獲取腳本文件?因平臺(tái)因素,不能發(fā)鏈接,私聊我一下即可,私信回復(fù)。