上面提到了命令行CLI方式,網(wǎng)絡(luò)設(shè)備和服務(wù)器一樣都是用CLI方式運維。CLI(command-line interface,命令行接口)方式是一種通過在終端窗口鍵入文本命令來實現(xiàn)與服務(wù)器、網(wǎng)絡(luò)設(shè)備交互的接口,比GUI圖形式交互接口要高效得多。有時看到技術(shù)人員登錄到設(shè)備上,在鍵盤上敲入大量看不懂的命令時,總覺得這個技術(shù)很高深,很神秘,人們通過CLI方式與設(shè)備之間展開對話,讓設(shè)備按照指令來完成相應(yīng)功能。這種方式流行數(shù)十年,直到現(xiàn)在仍是數(shù)據(jù)中心里運維的主流方式。這種方式對于單臺設(shè)備來說,執(zhí)行高效,但總體上來說就低效了。比如要對網(wǎng)絡(luò)中的OSPF鄰居路由做策略,這樣不止在一臺設(shè)備上要調(diào)整配置,所有設(shè)備上都要調(diào)整,而且每臺設(shè)備調(diào)整的配置還有所不同,如果OSPF區(qū)域比較大,設(shè)備比較多,就要花費很長時間,而且還容易出錯,有時我們將執(zhí)行簡單CLI命令的操作寫成TCL腳本,然后用軟件來執(zhí)行,不過還是有不少的工作需要手工逐臺去登錄操作,非常費時。
CLI運維的方式飽受詬病,不少人想到了SNMP,通過SNMP節(jié)點可以完成設(shè)備上的大部分配置下發(fā)和調(diào)整,而且SNMP還能采集設(shè)備的運行狀態(tài)和流量統(tǒng)計,日志告警等信息,SNMP成為了網(wǎng)絡(luò)運維的一個重要手段。幾乎每個數(shù)據(jù)中心都要部署一到兩個網(wǎng)管監(jiān)控軟件,通過SNMP來獲取設(shè)備上的運行狀態(tài)信息。由于不同廠家不同型號設(shè)備的命令行差異較大,且有太多的命令是私有MIB,這就無法用SNMP方式實現(xiàn)整網(wǎng)設(shè)備管理,尤其發(fā)生網(wǎng)絡(luò)故障的時候,絕大多數(shù)的診斷命令行都是私有的,設(shè)備間各不相同,這樣通過SNMP單獨輸入,還不如直接登錄設(shè)備CLI輸入來得快,所以SNMP網(wǎng)管一般作為網(wǎng)絡(luò)運行監(jiān)控的一種手段,而不作為運維和操作設(shè)備的方法,這樣走也行不通。
怎么辦?網(wǎng)絡(luò)專家們一直在想辦法,于是乎Netconf這時出現(xiàn)。Netconf是IETF發(fā)布的標準協(xié)議,它全稱是Network Configuration Protocal。Netconf協(xié)議早在2006年IETE就發(fā)布了,是一種基于XML的網(wǎng)絡(luò)配置協(xié)議,可以基于網(wǎng)絡(luò)來安裝、操作和刪除設(shè)備配置,在Netconf架構(gòu)中,網(wǎng)絡(luò)設(shè)備充當Netconf Server 角色,運維的人員則是Netconf Client。在數(shù)據(jù)中心規(guī)模還不大的時候,Netconf并未引起人們的關(guān)注,這幾年隨著數(shù)據(jù)中心網(wǎng)絡(luò)規(guī)模越來越大,還有很多虛擬化的實現(xiàn),Netconf才得到重視。因為是統(tǒng)一標準,所以不同廠家設(shè)備都會支持,Netconf是網(wǎng)絡(luò)通用語言,所有網(wǎng)絡(luò)設(shè)備都能聽懂,這樣就可以通過Netconf輕松實現(xiàn)網(wǎng)絡(luò)配置的統(tǒng)一部署。不過,現(xiàn)實情況卻沒這么輕松,因為各廠商 Netconf數(shù)據(jù)表達存在很多差異,各個設(shè)備廠商都希望在軟件定義網(wǎng)絡(luò)的時代繼續(xù)保持硬件設(shè)備重要性,并且能夠體現(xiàn)自己公司產(chǎn)品的差異化優(yōu)勢,這是IETF不愿意看到的,也是數(shù)據(jù)中心客戶不愿意看到的。后來Google、AT&T、Facebook、Apple、Microsoft等互聯(lián)網(wǎng)服務(wù)提供商成立了OpenConfig工作組,希望提供一個中立于設(shè)備廠商的標準 API。OpenConfig沿用了Netconf的協(xié)議框架,但它不太關(guān)注底層數(shù)據(jù)傳輸,而是更關(guān)注上層數(shù)據(jù)表達和數(shù)據(jù)建模,OpenConfig只關(guān)心與互聯(lián)網(wǎng)行業(yè)用戶通用運維的工作和網(wǎng)絡(luò)設(shè)計工作相關(guān)的功能,不會為設(shè)備廠商的私有特性定義 YANG Model。只要網(wǎng)絡(luò)設(shè)備支持標準 OpenConfig YANG,就可對原始數(shù)據(jù)進行解析,不再依賴第三方軟件就可以管理多廠商多OS網(wǎng)絡(luò),進而實現(xiàn)真正網(wǎng)絡(luò)自動化。不過,OpenConfig并未得到廣大網(wǎng)絡(luò)廠商的積極回應(yīng),畢竟OpenConfig有點向網(wǎng)絡(luò)廠商砸場子的味道,網(wǎng)絡(luò)廠商自然不愿意去適配,“我的地盤我做主”,這就使得OpenConfig難產(chǎn),除了幾家大型的互聯(lián)網(wǎng)企業(yè)有膽量向網(wǎng)絡(luò)廠商叫板,其它的很少有發(fā)聲,這也讓OpenConfig推進沒有那么順利。其實,從技術(shù)實現(xiàn)上來講,不管哪種Config目的都是為了實現(xiàn)自動化。有的激進一些,有的保守一些,雖然總有不同聲音,但都是希望能改善數(shù)據(jù)中心的運維環(huán)境,提升運維的自動化水平,這個大方向不會變,這些配置技術(shù)都是實現(xiàn)自動化的手段而已。
網(wǎng)絡(luò)運維的自動化依然是一個熱門話題,還有新的技術(shù)不斷出現(xiàn),現(xiàn)有的數(shù)據(jù)中心運維水平依然比較初級,亟待改善。要將自動化運維融合到整個數(shù)據(jù)中心的運行體系中,尤其要和業(yè)務(wù)結(jié)合起來,否則自動化的運維本質(zhì)就不過是一個自動化工具而已。要讓自動化運維擁有學(xué)習能力,結(jié)合大數(shù)據(jù)、人工智能(AI)或機器學(xué)習功能軟件系統(tǒng),讓運維不再是單純?nèi)?zhí)行自動化腳本,而可以分析可用性和性能監(jiān)控、事件關(guān)聯(lián)和分析,結(jié)合具體業(yè)務(wù)去運維,這才是真正的自動化運維,最終實現(xiàn)整個數(shù)據(jù)中心的自動化運行。
版權(quán)聲明:本文為企業(yè)網(wǎng)D1Net原創(chuàng),轉(zhuǎn)載需注明出處為:企業(yè)網(wǎng)D1Net,如果不注明出處,企業(yè)網(wǎng)D1Net將保留追究其法律責任的權(quán)利。