張洋

摘要 DevOps是近幾年來在我國逐漸發展起來的新型范型,它能夠使開發和IT運維兩者之間的協同得到保證,進而能夠完成高頻率的部署,與此同時能夠使生產環境實現安全性、可靠性、穩定性以及彈性。目前,DevOps和云計算兩者能夠一起來實現資源的按需供給。隨著DevOps制品和云服務發展的規模越來越大,DevOps知識分散的也越來越不規范,并沒有得到較為有效的組織、管理以及利用。因此我們必須要解決怎樣對可以進行選擇的DvpOps方法和工具來做出有效的措施和選擇。本文就這一問題,探討基于云服務的DevOps知識獲取與應用研究。
[關鍵詞]云服務 DevOps 實時獲取 應用研究
目前互聯網技術越來越發達,也越來越普及,但是關于軟件和服務的生命周期更新換代的間隔也在隨之而縮短,當然用戶的需求是希望能夠新版系統發布的第一時間體驗到最新的功能特性,也希望能夠在最短的時間內把系統的不足、缺陷等修復完整。所以,快速交付應用系統和持續更新應用系統現在已經成為了我國的軟件廠商以及服務提供的商家之間互相競爭的一項重要標準,能夠有效的是應用發布周期縮短是廠商滿足用戶期望以及提升自己競爭優勢的重要標準。
1 基于云服務的DevOps識獲取與應用發展中存在的問題
DevOps和云服務的產生和發展、更新換代都是比較快的,目前存在著多種多樣的DevOps相關的使用工具和方法,但是在功能方面有很多工具的作用是很相似的,所以我們面臨的困難就是如何選擇最為適合的方法和工具并且能夠把兩者組合來共同實現面向特定的應用系統的DevOps自動化。另外,雖然DevOps相關的知識被分散的開源網站或社區等互聯網上面,但是卻并沒有得到很好的管理和利用,所以要想實現DevOps的自動化和協作就必須探索DevOps知識管理的有效方法,這是必要的前提。
2 基于云服務的DevOps知識獲取與應用問題的分析
WordPress是我國目前較為流行的開源博客應用系統,基于WordPress的三層架構,其部屬和運維需求包括以下三個方面:
(1)5.O及以上版本的MySQL數據庫服務器;
(2) PHP運行環境要用5 24及以上版本;
(3) Web服務器使用Apache HTTPServer、Nginx都可以。
但是為了是WordPress最新版本能夠實現持續支付,上述三個需求都必須在系統的DevOps中才能夠實現。WordPress的多層體系結構中不同的類型的中間組件有多種不痛的可供選擇的技術來實現。
3 基于云服務的DevOps的知識管理
對于基礎設施和中間件來說,選擇應用系統的開發和運維是有很多種不同的選擇方案的。隨著近年來我國DevOps的興起和發展,DevOps知識也在以不同的形式分布在互聯網上面,通常分為兩種:非結構化和半結構化,他們分別具有不同的信息來源。一方面,對于自動發現和獲取非結構化數據相對比較困難,在機器語言不能夠準確的解決問題時,必須采用人工的方式來進行非結構化數據的抽取、整理以及評價等。人工方式又可以分為兩種形式分別是:領域專家方式以及中報的方式。如圖1所示。
4 基于云服務的DevOps的知識庫
DevOps知識管理系統的核心組件就是DevOps知識庫。因為DevOps知識庫的協同工作并不是只有開發人員和運維人員,其中還包括了由專家、爬蟲以及眾包方式等協同的關于DevOps知識的發現、獲取以及評價等。從技術方面看,DevOps知識庫是由很多個分布式的知識存儲來共同組成的。比如,開源社區維護其中的公共知識庫;而私有的知識庫可以由本公司或著部門來進行維護。所以DevOps的知識庫就是由很多的共有和私有的知識庫共同組成的。
4.1 基于云服務的DevOps知識分類
要想實現DevOps知識系統化存儲管理和使用就必須做到知識的分類和關聯,這是其必要前提。目前DevOps所涉及到的知識類型主要分為以下幾種:中間件、基礎設施、服務的提供方以及DevOps自動化工具。本文把以上的集中知識類型抽象化,這些抽象類型就可以存在和劃分很多個子類型。每一個可以重用的軟件制品和服務以及每一個具體的工具等都可以用來在為一個具體的DevOps以此來實現和一個或者更多個抽象類型來進行關聯。
4.2 實現基于云服務的DevOps的知識庫原型
基于上述提到的關于DevOps知識分類和管理的方法,設計出了關于DevOps知識庫的原型。原型系統中存在一個通過Node.js來實現的知識庫構造器,還包括一個基于Nodejs來實現的知識庫展示器。知識庫構造器可以通過讀取知識庫里面的所有內容,然后在通過分級的結構化數據庫存儲方式進一步的實現DevOps知識庫的創建和合并。另一方面,知識庫展示器可以對知識庫中的DevOps知識內容以不同的形式展現出來,這樣知識庫能應用到不同的場景。
5 結語
到目前為止,DevOps作為一種新型范型,其作用是能夠有效的、無縫銜接的試下軟件的自動化管理,并且是當前一個較為有效的途徑。通過DevOps和云計算兩者結合能夠有效的共同實現基礎設施資源的按需供給。目前可重用DevOps制品規模和云服務的規模都在擴大,在這樣的前提下應用設計人員和開發人員進行DevOps嘗試和實踐的機會也在隨之而增加,所以只有探索出完整的一套DevOps知識管理方法才能更快的發展DevOps。才能夠使基于云服務的DevOps知識獲取與應用發展的越來越人性化。
參考文獻
[1]陳詠秋,張斌,徐明珠,面向云服務的DevOps知識獲取與應用[J].計算機系統應用,2016,25 (12):221-226.
[2]張軍,曾佑新.DevOps在企業信息化戰略中的創新與應用[J].科學與信息化,2017(01).
[3]李強,王寧.私有云管理平臺加速交付服務能力實踐[J],軟件,2017,38 (06):113-119.