命令行界面(CLI)的消亡史
IT行業正在向所有的一切都采用應用程序編程接口(API)演進,這使得企業能夠自動執行重復性任務,提高效率并減少錯誤的系統。但是,這引出了新的問題:在IT系統中API的大量使用會取代命令行界面(CLI)嗎?
網絡工程師多年來一直依賴CLI進行網絡配置,但市場研究公司Gartner認為,CLI正在失去其在配置和運營網絡方面的地位,并預測到2020年,只有30%的網絡運營團隊會使用CLI,遠低于目前的85%。
什么是CLI
CLI包含多個組件:
- 用戶輸入/輸出
- 命令行編輯,歷史命令,完成的命令
- 輸入解析、參數驗證和命令調度/執行
- 錯誤處理和報告
大多數產品都包含至少兩種CLI模式
- 交互模式:用于查詢設備運行數據的命令,它通常用于收集故障排除數據,包括show命令以及查看設備配置的命令
- 配置模式:管理員更改設備的操作
CLI具有依靠簡單的telnet或Secure Shell會話進行通信的優點,以及用于識別和執行命令的解析引擎。它不需要額外的軟件(ASN.1,JSON或XML解析器)或協議(CMIP,SNMP)。CLI的缺點也很明顯,雖然CLI也可與作為API使用,但是CLI缺少錯誤特定的返回代碼,控制系統可與理解錯誤的類型并采取適當的措施。有時,自動化工具還必須處理輸入或輸出文本中的偶爾錯字,CLI通常與手動配置更改有關,這是造成企業網絡中斷的主要原因。
取代CLI
業界目前正在逐漸取代CLI,因為單次配置一臺設備已經不能滿足需求,需要開始配置整個IT系統。例如要在所有企業網絡設備(UC終端,交換機,路由器,防火墻和負載均衡器)上部署一致的服務質量(QoS)策略。理想情況下,我們將有一個通用的QoS模型,API映射到設備特定的配置。查詢QoS實施操作的通用模型將允許我們驗證IT系統是否按照我們設計的那樣運行。
用API替換CLI并不困難,較新的設備通常通過使用命令元素的XML或JSON編碼的REST接口支持CLI和API,另外,有些設備只支持API接口,CLI只是一個使用API調用的模塊。
Gartner分析師指出,將CLI轉移到集中的基于策略的操作是“網絡團隊必須處理由于使用微服務/容器以及物聯網設備泛濫所帶來的規模需求的前兆”。CLI并不會完全消失,依然對深入的故障排除或測試有效果,但是相關的CLI的測試認證就不那么重要,取而代之的是架構級技能,專注于網絡自動化、API編程以及與其他基礎設施的集成。
為了與這種轉變保持一致,Gartner建議企業在購買新基礎設施時要求網絡自動化,而不要讓傳統CLI技術影響他們的購買決策。企業還應該利用API來實現更高的網絡靈活性,并將投資重點從CLI和專有認證轉移到網絡編程工具和通過API編排。
SD-WAN和開放網絡的興起
根據Gartner的說法,軟件定義的廣域網(SD-WAN)是企業在不依賴于CLI的情況下所期望的技術之一。該公司預測,到2018年,與傳統路由器相比,WAN邊緣基礎設施更新項目中將有超過40%將基于SD-WAN設備和/或基于x86的虛擬化客戶端設備,與現在不到2%的份額相比,這是企業在這方面的巨大投入。
Gartner還認為開放源代碼在企業網絡中扮演著更重要的角色:到2020年,開源和自建選項至少占數據中心網絡市場的20%,而現在占比不到2%。
Gartner研究總監Naresh Singh指出,DevOps組織傾向于使用開源產品,越來越多的企業計劃采用DevOps方法,在2層和3層交換、路由和4-7層網絡服務等核心業務領域,都有開放網絡社區。OpenSwitch,ODL,ONOS,OPNFV,Nginx和HAProxy等項目也吸引了廣泛的用戶和供應商參與,從而使他們有更多的主流企業采用的機會。
基于意圖的網絡
Gartner還預測了基于意圖的網絡以及在分支機構部署直接互聯網接入,根據Gartner的數據,10%的企業將使用基于意圖的網絡設計和操作工具。Gartner副總裁兼杰出分析師Joe Skorupa解釋說,“意圖”從業務角度描述了網絡所需的服務,而不是如何配置各個參數,并作為配置的通用語言。
基于意圖的網絡通過在部署之前驗證設計,防止配置錯誤以及通過持續監控來減少網絡中斷。根據Gartner的數據,雖然意圖型網絡剛剛興起,但企業在分支機構部署直接互聯網的速度會更快。到2020年底,將有60%以上的企業部署基于意圖的網絡。
CLI最終會被API所取代嗎?在短期之內不可能,但是CLI在企業當中所占的比例毫無疑問會下降。基于API的服務器、網絡設備和IT系統等都會慢慢侵蝕CLI的占有率,但值得注意的是CLI的重要地位依然不會被取代,在企業的應用中,CLI還將長期存在。