近幾年來,互聯(lián)網(wǎng)行業(yè)處于一個快速發(fā)展的快車道,一個又一個風(fēng)口不斷地涌向周邊行業(yè)。共享單車的出現(xiàn)解決了人們出行最后一公里的問題;新零售概念的提出,無人貨柜的出現(xiàn),更是將線上和線下的數(shù)據(jù)打通,優(yōu)化了人們的購物體驗(yàn);以抖音為首的短視頻應(yīng)用,在一夜間爆紅,成為當(dāng)下社交與宣傳的重要載體。
而數(shù)據(jù)中心作為支撐這些業(yè)務(wù)的基礎(chǔ)設(shè)施,其規(guī)模也隨著業(yè)務(wù)的激增逐漸擴(kuò)大,單集群內(nèi)超過數(shù)萬臺服務(wù)器的情況已不再罕見。面對如此龐大的服務(wù)器數(shù)量,在網(wǎng)絡(luò)建設(shè)之初的交換機(jī)網(wǎng)絡(luò)開局已成為網(wǎng)工的夢魘。
一、數(shù)據(jù)中心開局現(xiàn)狀
聚焦于數(shù)據(jù)中心場景,我們先來回顧一下傳統(tǒng)的交換機(jī)網(wǎng)絡(luò)開局流程。
圖1 傳統(tǒng)網(wǎng)絡(luò)設(shè)備開局流程
Step 1: 提前準(zhǔn)備交換機(jī)的版本文件;
Step 2: 根據(jù)部署的架構(gòu)場景選擇對應(yīng)的配置模板;
Step 3: 開始"搬磚",到達(dá)現(xiàn)場,設(shè)備拆箱集中堆放,加電啟動;
Step 4: 使用U盤插到交換機(jī),串口線連接設(shè)備,逐臺進(jìn)行版本升級(若需要);
Step 5: 根據(jù)配置模板結(jié)合實(shí)際設(shè)備的情況進(jìn)行VLAN、IP、路由以及其他基本信息的修訂,然后開始刷配置(另外按照各公司要求,還會協(xié)助收集設(shè)備的SN用于資產(chǎn)管理);
Step 6: 協(xié)調(diào)弱電同學(xué)幫忙搬到機(jī)房上架;
Step 7: 基于Checklist完成連通性的測試工作。
整套流程下來,既耗人力,又耗時間。據(jù)實(shí)際項目經(jīng)驗(yàn)來看,在不堆疊的前提下完成一臺設(shè)備的升級和配置大約在10分鐘,堆疊情況下由于設(shè)備需要重啟,需要30分鐘才能完成。
總結(jié)來看,對于支撐數(shù)萬臺服務(wù)器集群的數(shù)據(jù)中心網(wǎng)絡(luò)場景,如果按照這種傳統(tǒng)的開局模式來部署,會存在以下幾點(diǎn)不足:
效率低下:靠手工方式進(jìn)行設(shè)備的版本升級、刷腳本,效率非常低;
出錯率高:重復(fù)性的工作會導(dǎo)致網(wǎng)工疲于思考,稍有不慎出現(xiàn)失誤,需要額外的時間用于排查錯誤更正,產(chǎn)生一定的時間損耗。
對此,各廠家做了許多的探索,比如零配置上線技術(shù)。
二、數(shù)據(jù)中心自動化開局
隨著數(shù)據(jù)中心規(guī)模的不斷增大,標(biāo)準(zhǔn)化的建設(shè)方式已經(jīng)成為主流。每個集群內(nèi)的服務(wù)器以及網(wǎng)絡(luò)設(shè)備的規(guī)模都是固定的,對應(yīng)到網(wǎng)絡(luò)設(shè)備的配置策略也是一致的(當(dāng)然IP等基礎(chǔ)信息會略有不同)。因此,在這樣標(biāo)準(zhǔn)化、規(guī)范化的場景下,我們可以將這些重復(fù)性的、機(jī)械性的工作編成處理邏輯,交給網(wǎng)絡(luò)設(shè)備自己去完成上線工作,進(jìn)而解放人力,同時也降低了人們出錯的風(fēng)險。
廠商對于自動化上線技術(shù)的開發(fā),主要是利用編程語言(比如Python、Go等)進(jìn)行邏輯處理,讓網(wǎng)絡(luò)設(shè)備自行加載,完成上線,例如ZAM技術(shù)(Zero-configure Automatic Manage)。
交換機(jī)自動化上線的思路:新出廠或空配置的設(shè)備上電啟動后自動向文件服務(wù)器中獲取文件并加載(包括版本文件、配置文件、補(bǔ)丁文件等),實(shí)現(xiàn)設(shè)備的免現(xiàn)場配置、部署,從而避免了運(yùn)維人員重復(fù)地執(zhí)行刷腳本、升級等機(jī)械性操作,提升開局效率。