2018年3月21-22日,由中國信息通信研究院主辦、中國通信標準化協會支持的"OSCAR云計算開源產業大會"在國家會議中心舉行。DevOps論壇作為分論壇之一,于21日下午召開。
論壇匯聚了華圖教育、高效運維社區、京東云、用友暢捷、DevOps時代社區和哈爾濱銀行數據中心等多位行業專家,對DevOps的標準體系進行權威解讀,并將企業各自的DevOps實踐進行了分享。
(華圖教育技術總監 郭宏澤)
華圖教育技術總監郭宏澤帶來的精彩演講題為《基于Python的企業級運維平臺》。他表示,歷經十幾年的發展,運維已從手工運維、腳本運維,發展至自動化運維階段。他就自己在運維過程中的經驗和如何從零開始開發一套基于Python的運維平臺進行了分享。
郭宏澤介紹到,企業在運維中面臨的挑戰也越來越多,一是系統架構變得越來越復雜。隨著IaaS云化、容器化、PaaS智能化,依賴庫多樣化、RUNTIME復雜化、運維人員無法應對新時代的運維要求。
二是技術債務。由于資源成本壓力,中小企業的IT運維及IT系統存在大量歷史債務,而企業的能力不足以應付技術債務導致故障頻發,從而造成客戶的應用體驗不佳,無法滿足客戶的需求。
三是人員流動。他表示,企業關鍵性人物的離職會造成整個系統的不穩定性、可持續性概率直線增加。
四是戰略規劃。郭宏澤表示,企業的運維比較復雜且資源分配不合理,一般沒有固定的戰略規劃,導致整個系統很混亂。
他指出,目前企業面臨最大的瓶頸是:傳統的運維思路和思維已無法支撐目前的業務發展。
運維的發展歷程可歸結為,從手工運維到腳本工具,到流程系統,到運維平臺,最后達到智能運維。
郭宏澤表示,在流程治理運維上,花費時間較長,而要完成一項運維任務則需要處理很多環節。為了解決這種手工的、沒有自動化的、過于復雜的流程,DevOps理念產生了。
DevOps理念落地方向之一是運維自動化平臺,主要是面向日常的運維任務管理,部署流水線面向的是端到端的交付。
針對如何在企業中構建運維平臺,郭宏澤介紹到,構建平臺有兩種方式,一是自建;二是購買。根據他多年的運維經驗,企業最需要的是掌握開發能力去開發一套適合自身工作流程的一套平臺。這一過程中,首要考慮的就是理念的問題。
“我們在運維平臺開發的時候沒有真正開發一個平臺而是在原來基礎之上給它加了一個可視化”。一是敏捷開發。進行軟件工程的管理,香港免備案主機 美國服務器,使得運維開發平臺和業務開發流程及模式一致;二是快速迭代。用敏捷的開發方法,快速迭代平臺的功能,發現問題后立刻修改平臺,使其功能更貼近運維工作;三是灰度發布。四是模塊化開發。五是不斷重構。要給平臺留下重寫的路徑和接口,即進行不斷重構和迭代的理念。六是經驗沉淀。
運維平臺的首要任務也是核心任務是完成CMDB,即硬件管理和應用管理。他指出,資產管理是主要任務,包括服務器、服務器屬性、帶寬、IP和機房等硬件相關的信息。而應用配置上,主要是軟件信息,包括軟件包、配置文件、監控屬性、安全屬性、業務屬性、架構屬性、權限屬性和運營屬性。資產管理主要面向的是資源管理,包括IDC、Network、Server、虛擬化、CDN、操作系統和DNS等。
在后臺技術選型上,他認為,能夠解決問題的語言就是好語言,“你的團隊可以用Java開發,也可以用Python開發,但是咱們本地用的是Python+Diango.”
MTV也就是軟件工程里的MVC,即模塊化開發。郭宏澤這樣說道,“在Python里面,用戶請求以后我通過UL分發器分發到我的不同功能模塊上,由功能模塊總的管理邏輯器調用數據庫的增刪改查模塊,將其和前端頁面的模塊最終形成一個給用戶返回的結果。”
Diago的價值在于可以解決它內置豐富的應用和模塊,不會企業耗費太多精力就可開發,保證所有的戰略資源全都放在了如何實現業務上。