核心摘要: DevOps概念解析:DevOps(開(kāi)發(fā)運(yùn)維一體化)包含應(yīng)用設(shè)計(jì),、敏捷開(kāi)發(fā)、持續(xù)交付和監(jiān)控運(yùn)維等一系列流程,,涉及到企業(yè)文化,、團(tuán)隊(duì)協(xié)作流程等多個(gè)方面。開(kāi)發(fā)人員透過(guò)容器向運(yùn)維側(cè)滲透,、打通傳統(tǒng)IT工作中開(kāi)發(fā)/運(yùn)維的矛盾和溝通障礙是DevOps的核心進(jìn)步,。 DevOps企業(yè)實(shí)踐:DevOps的成功實(shí)踐需要企業(yè)工程解耦化、流程協(xié)同化和管理顆?;母淖?,要走過(guò)從資源整合到自助服務(wù)的五個(gè)步驟,。企業(yè)和團(tuán)隊(duì)需要更多地關(guān)注管理方式和文化適應(yīng)性,,引入專業(yè)機(jī)構(gòu)的咨詢和培訓(xùn)服務(wù)能夠有效減少轉(zhuǎn)型過(guò)程中的摩擦成本。 DevOps市場(chǎng)現(xiàn)狀:一體化的DevOps平臺(tái)正在成為全球范圍內(nèi)的DevOps發(fā)展趨勢(shì),,國(guó)內(nèi)企業(yè)通常采用一體化平臺(tái)+開(kāi)源軟件的方式構(gòu)建自己的DevOps體系,。2020年國(guó)內(nèi)DevOps相關(guān)產(chǎn)品的市場(chǎng)規(guī)模達(dá)到27億元,未來(lái)5年的CAGR將超過(guò)25%,,市場(chǎng)發(fā)展前景良好,。 DevOps應(yīng)用展望:DevOps不會(huì)成為一種故步自封的工具,云原生更是為DevOps大展宏圖提供了廣闊的平臺(tái),。DevOps將會(huì)在自動(dòng)化,、數(shù)據(jù)化、一體化和智能化方向上不斷自驅(qū)發(fā)展,,未來(lái)與AI,、無(wú)服務(wù)器和安全工程的融合也充滿可能性。 DevOps理念解析及行業(yè)應(yīng)用 初識(shí)DevOps:開(kāi)發(fā)運(yùn)維一體化 不只是技術(shù),,不只是工具,,不只是流程 “DevOps”一詞是“Development開(kāi)發(fā)”和“Operations運(yùn)維”兩個(gè)詞的組合,中文一般譯為“開(kāi)發(fā)運(yùn)維一體化”,。雖然在IT領(lǐng)域DevOps早已得到了業(yè)界的普遍認(rèn)可并被投入各個(gè)領(lǐng)域的廣泛應(yīng)用,,但目前行業(yè)內(nèi)對(duì)DevOps還沒(méi)有統(tǒng)一明確的定義。參考全球頭部IT公司對(duì)DevOps的理解,,我們發(fā)現(xiàn)DevOps不是單一的技術(shù)或者工具,,甚至不只是一個(gè)流程,它可以被理解為一系列可以高速,、高質(zhì)量進(jìn)行軟件開(kāi)發(fā)的工具鏈,,這種模式不僅提高了軟件開(kāi)發(fā)的效率和最終產(chǎn)品的表現(xiàn),更是現(xiàn)代IT企業(yè)協(xié)作及共享文化的體現(xiàn)和應(yīng)用,。 企業(yè)痛點(diǎn):IT人才市場(chǎng)供不應(yīng)求 企業(yè)需尋求內(nèi)生途徑以加強(qiáng)IT部門(mén)運(yùn)行效率 隨著我國(guó)企業(yè)數(shù)字化轉(zhuǎn)型的不斷深入和互聯(lián)網(wǎng)經(jīng)濟(jì)的蓬勃發(fā)展,,IT部門(mén)的職能由信息化支持向業(yè)務(wù)賦能轉(zhuǎn)換,,伴隨著信息技術(shù)產(chǎn)生的社會(huì)價(jià)值和企業(yè)價(jià)值越發(fā)顯著,IT從業(yè)人員的人力成本也在不斷提高,。根據(jù)國(guó)家統(tǒng)計(jì)局對(duì)我國(guó)2018年和2019年城鎮(zhèn)非私營(yíng)單位員工平均工資的統(tǒng)計(jì),,信息技術(shù)從業(yè)人員的工資連續(xù)兩年位列統(tǒng)計(jì)局劃分的19個(gè)大類行業(yè)之首,超過(guò)年均16萬(wàn)元,,2019年增速為9.3%,,也位于各行業(yè)中的較高水平。這一方面反映出IT產(chǎn)業(yè)的價(jià)值得到了市場(chǎng)的充分認(rèn)可,,同時(shí)也折射出這一領(lǐng)域的勞動(dòng)力市場(chǎng),、尤其是高素質(zhì)人才供不應(yīng)求的現(xiàn)狀。從用人單位的角度上看,,在無(wú)法急速改變?nèi)瞬攀袌?chǎng)現(xiàn)狀和IT人員素質(zhì)的前提下,,唯有通過(guò)內(nèi)生途徑提高IT部門(mén)的運(yùn)行效率和工作質(zhì)量,才能塑造企業(yè)的IT競(jìng)爭(zhēng)優(yōu)勢(shì),。 企業(yè)痛點(diǎn):開(kāi)發(fā)/運(yùn)維部門(mén)涇渭分明 開(kāi)發(fā)和運(yùn)維部門(mén)在工作目標(biāo)上面臨分歧,,難以有效溝通 在信息技術(shù)人才緊缺、人員素質(zhì)不能完全滿足企業(yè)業(yè)務(wù)需求的現(xiàn)狀下,,企業(yè)的IT部門(mén)還要面臨傳統(tǒng)IT系統(tǒng)內(nèi)開(kāi)發(fā)和運(yùn)維架構(gòu)的固有缺陷所帶來(lái)的低效能,,使得減少協(xié)作摩擦、提高工作效能的工具和方法更加重要,。由于存在著開(kāi)發(fā)部門(mén)求“新”而運(yùn)維部門(mén)求“穩(wěn)”的核心分歧,,傳統(tǒng)的開(kāi)發(fā)部門(mén)和運(yùn)維部門(mén)在工作環(huán)境、工作職能和工作目標(biāo)方面都有著顯著的差異,,在一些情景下甚至相反,,導(dǎo)致在實(shí)踐中兩者不僅不能有效協(xié)作,甚至還引發(fā)了一系列矛盾,,如果不能從工作流程和管理方法上做出改變從而調(diào)和這樣的分歧,,就難以培養(yǎng)起積極協(xié)作的文化氛圍,對(duì)IT部門(mén)效能提升將造成不利影響,。 企業(yè)痛點(diǎn):IT部門(mén)管理難度較大 IT業(yè)務(wù)的復(fù)雜性和專業(yè)性對(duì)領(lǐng)導(dǎo)層管理造成考驗(yàn) 除了IT部門(mén)和團(tuán)隊(duì)內(nèi)部的交流協(xié)作模式在新經(jīng)濟(jì)時(shí)代需要作出改變,,企業(yè)管理層對(duì)IT部門(mén)的把控和考核方法也亟需革新。尤其是在以應(yīng)用軟件等信息技術(shù)已經(jīng)成為企業(yè)業(yè)務(wù)拓展“基礎(chǔ)設(shè)施”的大背景下,,管理層有必要將IT部門(mén)的工作成效納入其重點(diǎn)考察的對(duì)象當(dāng)中,。然而,IT工作的高度專業(yè)性往往在業(yè)務(wù)部門(mén)和管理層視野中間豎起一道技術(shù)壁壘,,使得管理層無(wú)法直觀地理解和分析IT部門(mén)的工作效能,,因而也無(wú)法進(jìn)一步為部門(mén)工作提出指導(dǎo)性和建設(shè)性的意見(jiàn)。在目前的軟件開(kāi)發(fā)管理實(shí)踐中,,管理者不斷引入可量化的業(yè)績(jī)指標(biāo)來(lái)增加IT工作對(duì)管理層的透明度,,然而這些考核在全面性,、客觀性、有效性方面仍有提升空間,。企業(yè)亟需自動(dòng)化,、數(shù)量化、可視化的工具來(lái)提升IT部門(mén)的管理效率,。 DevOps獨(dú)有的閉環(huán)流程概念 緊密銜接的閉環(huán)流程DevOps賦能IT協(xié)作更加流暢 圖為DevOps方法獨(dú)有的開(kāi)發(fā)-運(yùn)維閉環(huán)流程,,這一象征著循環(huán)與無(wú)限的符號(hào)包含著軟件生命周期中計(jì)劃-代碼編寫(xiě)-構(gòu)建-測(cè)試-發(fā)布-部署-運(yùn)行-監(jiān)控的全流程,體現(xiàn)的是在DevOps理念與方法的支撐下,,軟件開(kāi)發(fā)與運(yùn)維工作緊密銜接,、開(kāi)發(fā)與運(yùn)維團(tuán)隊(duì)通力協(xié)作的理想狀態(tài)。21世紀(jì)以來(lái)不斷普及的敏捷開(kāi)發(fā)帶來(lái)的最大變化是“解耦”了開(kāi)發(fā)進(jìn)程,,使得這一過(guò)程更加靈活和高效,,DevOps則是在繼承敏捷開(kāi)發(fā)工作方法的基礎(chǔ)上,進(jìn)一步打破了開(kāi)發(fā)和運(yùn)維工作的界限,尤其是在容器技術(shù)的幫助下,開(kāi)發(fā)環(huán)境和生產(chǎn)環(huán)境的界限變得模糊,,使得開(kāi)發(fā)人員能夠執(zhí)行生產(chǎn)環(huán)境下的軟件運(yùn)維工作,,開(kāi)發(fā)和運(yùn)維部門(mén)的協(xié)作由此變得更加簡(jiǎn)單和高效。而由一系列軟件開(kāi)發(fā)和運(yùn)維軟件工具構(gòu)成的工具鏈則是從技術(shù)上賦予了DevOps理念深入行業(yè)實(shí)踐的動(dòng)力,,不僅改善了軟件開(kāi)發(fā)和運(yùn)維人員的工作體驗(yàn),、加強(qiáng)了工作效能,也成為了管理層透視IT工作成效的豐富的數(shù)據(jù)來(lái)源,。在一些解讀當(dāng)中,,DevOps理念也包含軟件開(kāi)發(fā)運(yùn)維中的質(zhì)量控制QA環(huán)節(jié)。 總覽DevOps的一般實(shí)踐流程 動(dòng)態(tài)的流水作業(yè),、迭代的開(kāi)發(fā)進(jìn)程,、交互的協(xié)作模式 從DevOps的流程實(shí)踐上看,總體來(lái)說(shuō)其流程可以分為需求對(duì)接和應(yīng)用設(shè)計(jì),、敏捷開(kāi)發(fā)和持續(xù)測(cè)試以及最終測(cè)試和上線運(yùn)維等三個(gè)階段,,其核心是由開(kāi)發(fā)人員和測(cè)試人員主導(dǎo)的敏捷開(kāi)發(fā)和持續(xù)測(cè)試階段。借助Scrum或Kanban等工作流方法的指引和一系列持續(xù)構(gòu)建,、持續(xù)集成,、持續(xù)測(cè)試以及持續(xù)發(fā)布工具,IT團(tuán)隊(duì)能夠高效率地開(kāi)發(fā)通過(guò)微服務(wù)架構(gòu)解耦的程序模塊,,并及時(shí),、持續(xù)地與用戶方面進(jìn)行對(duì)接,對(duì)各個(gè)模塊的研發(fā)質(zhì)量和成果進(jìn)行實(shí)時(shí)把控,。在通過(guò)最終的集成和測(cè)試之后軟件得以部署上線,,此后開(kāi)發(fā)人員能夠借助應(yīng)用容器化封裝帶來(lái)的統(tǒng)一環(huán)境之便,,與運(yùn)維人員一起對(duì)軟件的運(yùn)行質(zhì)量進(jìn)行監(jiān)控、為用戶提供支持服務(wù),,并繼續(xù)根據(jù)市場(chǎng)需求進(jìn)行版本更迭的進(jìn)一步開(kāi)發(fā)工作,。 DevOps落地實(shí)施:理念認(rèn)同 顆粒化 / 解耦 / 協(xié)同三重理念共同支撐DevOps實(shí)踐 相較于單純的IT信息化工具,,DevOps本身即是一種協(xié)同,、合作的企業(yè)文化,為了落實(shí)DevOps實(shí)踐,,企業(yè)在采用DevOps相關(guān)的開(kāi)發(fā)運(yùn)維工具的基礎(chǔ)上,,還要實(shí)現(xiàn)文化方面的理念認(rèn)同。在工作結(jié)構(gòu)方面,,IT工程需要在架構(gòu)和流程上都實(shí)現(xiàn)解耦,;在協(xié)同方法方面,IT團(tuán)隊(duì)需要構(gòu)筑緊密協(xié)作,、責(zé)任共擔(dān)的合作氛圍,;在管理思想層面,IT管理層需要落實(shí)對(duì)部門(mén)工作顆?;?、可視化、可量化的考核,。美國(guó)DevOps平臺(tái)企業(yè)Quali的實(shí)踐研究表明,,在嘗試DevOps方法的企業(yè)和人員中,認(rèn)為企業(yè)文化缺陷阻礙DevOps發(fā)展水平的占最大比重,,顯示文化因素對(duì)企業(yè)提高開(kāi)發(fā)運(yùn)維一體化水平的重要性,。 DevOps落地實(shí)施:階段路徑 從資源整合到自動(dòng)化逐步實(shí)現(xiàn)DevOps體系建設(shè) 除了企業(yè)整體從文化需要面向DevOps的流程與方法進(jìn)行調(diào)整與適應(yīng),在實(shí)踐層面上也需要對(duì)IT部門(mén)的開(kāi)發(fā),、運(yùn)維流程進(jìn)行逐步的改造與升級(jí),。這一過(guò)程不是一蹴而就的,不同的企業(yè)也可以通過(guò)不同的路徑來(lái)打造最適合的自身DevOps方法,。一般而言,,企業(yè)實(shí)現(xiàn)DevOps的落地需要經(jīng)歷五個(gè)階段,首先要實(shí)現(xiàn)企業(yè)內(nèi)部的資源整合,,提高資產(chǎn)和任務(wù)的可見(jiàn)性,;其次是構(gòu)建統(tǒng)一、流暢的線上和線下工作環(huán)境及流程,,接著要搭建能夠有效合作的團(tuán)隊(duì)體系,,加強(qiáng)資源的共享;然后借助一系列信息化的DevOps工具構(gòu)建企業(yè)的自動(dòng)化開(kāi)發(fā)運(yùn)維流水線,并生成相應(yīng)的管理指標(biāo)體系,;當(dāng)自動(dòng)化水平發(fā)展到一定水平且累計(jì)了充足的服務(wù)經(jīng)驗(yàn)后,,運(yùn)維側(cè)即能以標(biāo)準(zhǔn)化的形式為用戶提供更高效便捷的服務(wù)。 DevOps適用于什么樣的團(tuán)隊(duì),? 單個(gè)團(tuán)隊(duì)10-20人為佳,,對(duì)外包和分散的敏感度較低 IT團(tuán)隊(duì)是DevOps理念和方法最終的實(shí)踐主體,盡管DevOps對(duì)團(tuán)隊(duì)屬性并沒(méi)有固化的要求,,然而在實(shí)踐中團(tuán)隊(duì)的不同形式對(duì)開(kāi)展DevOps轉(zhuǎn)型可能會(huì)有顯著的影響,,除了無(wú)形的團(tuán)隊(duì)氛圍之外,一些客觀條件也可能會(huì)影響DevOps轉(zhuǎn)型的效果,,本報(bào)告著重討論IT團(tuán)隊(duì)的規(guī)模,,構(gòu)建方式以及地理集中度對(duì)DevOps的影響。我們認(rèn)為在這之中團(tuán)隊(duì)的規(guī)模的影響相對(duì)顯著,,過(guò)大或者過(guò)小的團(tuán)隊(duì)規(guī)模都會(huì)降低的DevOps的增效,,在實(shí)踐中10-20人的(單個(gè))軟件團(tuán)隊(duì)能夠更好地發(fā)揮DevOps降本增效的作用;而IT團(tuán)隊(duì)是內(nèi)部團(tuán)隊(duì)或是有外包團(tuán)隊(duì),、團(tuán)隊(duì)人員是否在地理位置上足夠集中兩方面的要素對(duì)DevOps實(shí)踐的影響并不大,,甚至可以認(rèn)為DevOps的出現(xiàn)就是為了解決當(dāng)前企業(yè)的IT團(tuán)隊(duì)無(wú)法實(shí)現(xiàn)地理上的絕對(duì)集中以及完全內(nèi)化無(wú)需外包從而帶來(lái)的摩擦問(wèn)題。 DevOps適用于什么樣的企業(yè),? 業(yè)務(wù)系統(tǒng)頻繁更新的企業(yè)引入DevOps的價(jià)值更加顯著 此處我們討論的是計(jì)劃將DevOps引入內(nèi)部IT團(tuán)隊(duì),,并服務(wù)于母公司的軟件需求的企業(yè),而非對(duì)外提供軟件開(kāi)發(fā)和運(yùn)維服務(wù)的企業(yè),。由于互聯(lián)網(wǎng)經(jīng)濟(jì)和電子商務(wù)不斷向各行各業(yè)加速滲透,,IT實(shí)力越來(lái)越成為影響企業(yè)運(yùn)營(yíng)水平的關(guān)鍵因素,然而并非所有的行業(yè)和企業(yè)(機(jī)構(gòu))機(jī)構(gòu)都需要DevOps的加持,,其中最核心的影響因素是該企業(yè)的業(yè)務(wù)是否需要頻繁發(fā)布新的應(yīng)用來(lái)滿足用戶的需求,如果沒(méi)有此類的敏捷開(kāi)發(fā)需求,,或是目前正在運(yùn)用的開(kāi)發(fā)方法已經(jīng)能夠滿足企業(yè)的業(yè)務(wù)需求,,則開(kāi)展DevOps的轉(zhuǎn)型耗費(fèi)的資產(chǎn)和管理投入的性價(jià)比較低。此外,,對(duì)于安全策略較為嚴(yán)格的行業(yè)和企業(yè)而言,,雖然DevOps能夠在一定程度上與安全審查流程融合,然而其敏態(tài)開(kāi)發(fā)的效果將會(huì)有所下降,。 DevOps +傳統(tǒng)行業(yè):數(shù)字化轉(zhuǎn)型捷徑 DevOps助力傳統(tǒng)行業(yè)穩(wěn)步走上云原生數(shù)字化之路 軟件開(kāi)發(fā)和運(yùn)營(yíng)并非傳統(tǒng)行業(yè)的主營(yíng)業(yè)務(wù),,因而整體上缺乏相應(yīng)的人才和軟硬件基礎(chǔ)設(shè)施,正因如此這類企業(yè)和機(jī)構(gòu)的數(shù)字化水平整體較低,。在我國(guó)數(shù)字化轉(zhuǎn)型的大趨勢(shì)下,,找到適合企業(yè)的高效數(shù)字化轉(zhuǎn)型道路將意味著在市場(chǎng)競(jìng)爭(zhēng)中取得先機(jī);對(duì)于政府部門(mén)而言,,將能夠更好地構(gòu)建數(shù)字政府和數(shù)字政府服務(wù)體系,,提高地區(qū)乃至全國(guó)的信息化基礎(chǔ)設(shè)施水平,。在傳統(tǒng)行業(yè)中,金融和能源等行業(yè)由于資金充足,、技術(shù)實(shí)力相對(duì)領(lǐng)先,,且對(duì)于各類軟件和在線應(yīng)用的需求較高,在傳統(tǒng)行業(yè)中走在數(shù)字化升級(jí)的前列,,也是率先引入DevOps方法和工具的行業(yè),。而新零售、智能制造等近年來(lái)逐步興起的互聯(lián)網(wǎng)+行業(yè)也正在積極拓展互聯(lián)網(wǎng)能力構(gòu)建渠道以及市場(chǎng)優(yōu)勢(shì),。 DevOps+科技行業(yè):軟件工程新紀(jì)元 DevOps賦能科技行業(yè)邁入軟件工程高效階段 相較于傳統(tǒng)行業(yè)以及公共事業(yè)機(jī)構(gòu),,包括軟件、電商和電信運(yùn)營(yíng)商在內(nèi)的信息科技行業(yè)一直以來(lái)是IT科技創(chuàng)新的領(lǐng)跑者,,軟件開(kāi)發(fā)和運(yùn)維架構(gòu)是支撐上述企業(yè)業(yè)務(wù)運(yùn)營(yíng)的核心能力,,但也因?yàn)槠銲T架構(gòu)復(fù)雜、團(tuán)隊(duì)龐大,,在管理和協(xié)同優(yōu)化上面臨諸多困難,。DevOps理念和工具的有助于科技類企業(yè)統(tǒng)一IT環(huán)境、提高團(tuán)隊(duì)反應(yīng)能力和研發(fā)質(zhì)量,,是企業(yè)提高其市場(chǎng)競(jìng)爭(zhēng)力的核心助力,。目前我國(guó)的頭部科技類企業(yè)的軟件部門(mén)均大都通過(guò)自研或外采的方式引入DevOps工具、踐行DevOps流程,,是DevOps的主要踐行者,。 DevOps為企業(yè)帶來(lái)的價(jià)值 工作效率及產(chǎn)品質(zhì)量得到提高,量化指標(biāo)還有優(yōu)化空間 調(diào)查結(jié)果顯示,,DevOps實(shí)踐給企業(yè)帶來(lái)最顯著的收益主要包括提高了開(kāi)發(fā)和運(yùn)維工作的效率,、提高了軟件產(chǎn)品的質(zhì)量以及用戶的滿意度,此外DevOps也對(duì)團(tuán)隊(duì)的協(xié)作水平,、任務(wù)交付的準(zhǔn)確度有所助益,,并在一定程度上降低了IT部門(mén)的運(yùn)行成本、提高了部門(mén)的工作負(fù)載能力,。值得注意的是,,相對(duì)較少的受訪者認(rèn)為DevOps的引入為部門(mén)管理提供了量化依據(jù)。我們認(rèn)為這是由于目前國(guó)內(nèi)企業(yè)采用的DevOps工具在數(shù)據(jù)儀表盤(pán)的功能還不夠完善,,盡管大部分的自動(dòng)化工具都能提供一些統(tǒng)計(jì)指標(biāo)來(lái)反應(yīng)部門(mén)和員工的工作效率以及成果,,然而這些指標(biāo)可定制化的程度較低,比較局限于技術(shù)領(lǐng)域而非聚焦管理視角,,如果要為管理層提供更加清晰和多維度的管理透視,,還需要加強(qiáng)指標(biāo)構(gòu)建的靈活度和定制化能力。 中國(guó)DevOps市場(chǎng)發(fā)展現(xiàn)狀 開(kāi)發(fā)+運(yùn)維視角下的DevOps發(fā)展歷程 對(duì)高效研發(fā)+自動(dòng)運(yùn)維的追求推動(dòng)DevOps的發(fā)展 在計(jì)算機(jī)技術(shù)和軟件開(kāi)發(fā)行業(yè)發(fā)展的很長(zhǎng)一段時(shí)間內(nèi)研發(fā)和運(yùn)維都處于涇渭分明的關(guān)系中,也因此讓我們得以從研發(fā)和運(yùn)維兩個(gè)不同的視角來(lái)觀察DevOps的誕生,。從研發(fā)角度來(lái)說(shuō),,以更高的效率交付更有質(zhì)量的產(chǎn)品始終是研發(fā)工程師們的需求;從運(yùn)維角度而言,,全球范圍內(nèi)的計(jì)算機(jī)運(yùn)維技術(shù)一直以用機(jī)器和腳本替代人工運(yùn)維為目標(biāo),。而DevOps在2015年前后的普及讓IT市場(chǎng)意識(shí)到:可以通過(guò)將研發(fā)和運(yùn)維環(huán)節(jié)互相打通、互相融入的方式來(lái)減少工作負(fù)擔(dān),、提高工作質(zhì)量,。 技術(shù)驅(qū)動(dòng):容器技術(shù)全面推廣 容器底層架構(gòu)為DevOps的推廣打下技術(shù)基礎(chǔ) DevOps理念由來(lái)已久,其在2009年被正式提出時(shí)正是云計(jì)算概念獲得廣泛關(guān)注的時(shí)間,,然而一直以來(lái)全球范圍內(nèi)的軟件企業(yè)雖然有實(shí)踐DevOps的意愿,,卻缺乏相應(yīng)的技術(shù)和工具。2013年末Docker容器引擎開(kāi)源,,隨后容器編排工具K8s逐步獲得市場(chǎng)認(rèn)可,,通過(guò)容器鏡像對(duì)應(yīng)用程序進(jìn)行標(biāo)準(zhǔn)化的封裝和編排成為軟件研發(fā)行業(yè)新一代的主流架構(gòu)。容器和微服務(wù)架構(gòu)的天然契合加速了對(duì)傳統(tǒng)巨石架構(gòu)的顛覆,,軟件內(nèi)部架構(gòu)的解耦也使得踐行DevOps方法和流程成為可能,。可以認(rèn)為docker容器的問(wèn)世和推廣為DevOps的發(fā)展打下了技術(shù)基礎(chǔ)。 生態(tài)驅(qū)動(dòng):開(kāi)源社區(qū)資源共享 DevOps實(shí)踐在開(kāi)源軟件工具的助力下獲得推進(jìn) 全球范圍內(nèi)開(kāi)源軟件社區(qū)上分享的開(kāi)發(fā)和運(yùn)維工具大大促進(jìn)了DevOps實(shí)踐,,例如Apache基金會(huì)旗下的構(gòu)建工具M(jìn)aven,、Linux基金會(huì)子項(xiàng)目持續(xù)交付基金會(huì)旗下的集成工具Jenkins、同屬Linux基金會(huì)的云原生計(jì)算基金會(huì)旗下的Kubernetes等均已成為受全球開(kāi)發(fā)者廣泛認(rèn)可的DevOps工具,。據(jù)全球最大的代碼托管社區(qū)Github統(tǒng)計(jì),,2019年中國(guó)已成為全球除美國(guó)之外最大的開(kāi)源軟件使用地區(qū),相較于2018年中國(guó)開(kāi)發(fā)者調(diào)用的開(kāi)源項(xiàng)目增長(zhǎng)了48%,,顯示開(kāi)源社區(qū)的軟件工具已成為我國(guó)開(kāi)發(fā)者的重要資源,,而我國(guó)創(chuàng)立的開(kāi)源中國(guó)社區(qū)及旗下的Gitee平臺(tái)近年來(lái)也受到越來(lái)越多的關(guān)注。開(kāi)源生態(tài)的不斷充實(shí)和發(fā)展為開(kāi)發(fā)和運(yùn)維工程師提供了多樣化的工具選擇,,構(gòu)筑起DevOps豐富的資源池,。 政策驅(qū)動(dòng):行業(yè)標(biāo)準(zhǔn)逐步建立 逐漸完善的行業(yè)標(biāo)準(zhǔn)推動(dòng)DevOps規(guī)范化發(fā)展 由于DevOps的復(fù)雜性和靈活性,全球IT領(lǐng)域尚未對(duì)DevOps的規(guī)范達(dá)成一致,。2013年OASIS推出的TOSCA(云應(yīng)用程序的拓?fù)渚幣乓?guī)范)響應(yīng)了DevOps的開(kāi)發(fā)方法,大多基于TOSCA的云編排軟件平臺(tái)如Cloudify都支持DevOps,。2018年4月,,DevOps標(biāo)準(zhǔn)項(xiàng)目——“研發(fā)運(yùn)營(yíng)一體化能力成熟度模型”在中國(guó)通信標(biāo)準(zhǔn)化協(xié)會(huì)立項(xiàng)成功,隨后中國(guó)信通院逐步對(duì)該模型進(jìn)行了完善和評(píng)估,,目前已經(jīng)發(fā)布整體架構(gòu),、敏捷開(kāi)發(fā)過(guò)程、持續(xù)交付過(guò)程、技術(shù)運(yùn)營(yíng),、組織架構(gòu)等部分,。DevOps在我國(guó)的行業(yè)規(guī)范逐步建立,為DevOps平臺(tái)提供商不斷提高DevOps服務(wù)能力提供了規(guī)范化指導(dǎo),,有利于我國(guó)DevOps產(chǎn)業(yè)的健康發(fā)展以及應(yīng)用市場(chǎng)的持續(xù)增長(zhǎng),。 DevOps研發(fā)/運(yùn)維流程與工具鏈圖譜 DevOps軟件工具的市場(chǎng)規(guī)模 未來(lái)5年DevOps市場(chǎng)復(fù)合增長(zhǎng)率將超過(guò)25% 隨著互聯(lián)網(wǎng)轉(zhuǎn)型的深入,目前各行業(yè)的頭部企業(yè)基本都已經(jīng)開(kāi)始了DevOps轉(zhuǎn)型實(shí)踐,,并形成了良好的帶頭和示范作用,,未來(lái)數(shù)年DevOps工具將繼續(xù)向企業(yè)滲透,并保持穩(wěn)定的市場(chǎng)規(guī)模的增長(zhǎng),。預(yù)計(jì)2020年年底DevOps市場(chǎng)規(guī)模將達(dá)到27億元,,5年之后這一市場(chǎng)將增長(zhǎng)至83億元,復(fù)合增長(zhǎng)率將超過(guò)25%,。值得注意的是,,DevOps實(shí)踐中所使用的大量軟件工具為免費(fèi)的開(kāi)源軟件,并不直接帶來(lái)市場(chǎng)規(guī)模的增長(zhǎng),,前述市場(chǎng)規(guī)模主要包括DevOps云平臺(tái)(包括公有云和私有云)及少數(shù)收費(fèi)軟件產(chǎn)生的市場(chǎng)價(jià)值,;其次,互聯(lián)網(wǎng)和IT是在DevOps領(lǐng)域投入最多的行業(yè)之一,,然而互聯(lián)網(wǎng)和IT企業(yè)在這一領(lǐng)域常常是以“自產(chǎn)自用”的方式構(gòu)建內(nèi)部DevOps工作框架,,從而在交易環(huán)節(jié)對(duì)DevOps市場(chǎng)的貢獻(xiàn)遠(yuǎn)不及其實(shí)際使用規(guī)模。 一體化趨勢(shì):頭部企業(yè)發(fā)展戰(zhàn)略 “一站式”能力是軟件研發(fā)平臺(tái)產(chǎn)品的普遍發(fā)展方向 DevOps理念是打通軟件工程中各個(gè)曾經(jīng)由獨(dú)立的團(tuán)隊(duì)和不同的軟件工具來(lái)實(shí)現(xiàn)的工作,,在對(duì)企業(yè)文化,、管理方式等“軟實(shí)力”提出新要求的同時(shí),也不斷催促著市場(chǎng)打磨出能夠提供相應(yīng)的生產(chǎn)力和創(chuàng)造性的軟件研發(fā)工具,,集成度更高,、生態(tài)系統(tǒng)更完整的工具鏈將成為這一行業(yè)未來(lái)大趨勢(shì):信息技術(shù)龍頭微軟不斷豐富其自有的一體化研發(fā)平臺(tái)產(chǎn)品,并通過(guò)收購(gòu)相關(guān)企業(yè)的方式來(lái)擴(kuò)大其生態(tài)影響力,,而JIRA的母公司Atlassian也不斷完善其DevOps生態(tài),,打造為軟件開(kāi)發(fā)者提供“一站式”服務(wù)的能力。 一體化趨勢(shì):國(guó)內(nèi)DevOps框架構(gòu)建 “云平臺(tái)+開(kāi)源軟件”是最主流的DevOps構(gòu)建方法 企業(yè)構(gòu)建DevOps平臺(tái)的主要途徑有四類,,伴隨云計(jì)算的發(fā)展和云平臺(tái)上產(chǎn)品生態(tài)的不斷豐富,,大量的企業(yè)選擇從公有云廠商采購(gòu)其提供的DevOps云平臺(tái),而對(duì)代碼安全和保密性以及定制化要求較高的企業(yè)則更傾向于以私有化建設(shè)的模式向私有云廠商購(gòu)買DevOps咨詢和平臺(tái)搭建服務(wù),。由于主要國(guó)際開(kāi)源社區(qū)如CNCF,、Apache均有著了大量涉及DevOps的項(xiàng)目,具備相關(guān)專家人才和技術(shù)積累的企業(yè)也可能選擇將主流的版本控制,、構(gòu)建等工具集成為DevOps流水線,,能夠以較低的成本滿足企業(yè)基本的開(kāi)發(fā)運(yùn)維需求,。對(duì)DevOps流程上各環(huán)節(jié)所用的軟件工具均進(jìn)行獨(dú)立的開(kāi)發(fā)再集成為一體化的DevOps平臺(tái)則是極少數(shù)國(guó)際IT巨頭企業(yè)的選擇。由于主要開(kāi)源工具經(jīng)過(guò)多年市場(chǎng)驗(yàn)證廣受認(rèn)可,,一般而言可以以插件的形式接入IT廠商提供的DevOps平臺(tái),,使開(kāi)發(fā)者能繼續(xù)使用長(zhǎng)期以來(lái)習(xí)慣的工作環(huán)境,也是目前國(guó)內(nèi)主流的DevOps構(gòu)建方法,。 成熟度狀態(tài):咨詢&培訓(xùn)的價(jià)值 咨詢與培訓(xùn)服務(wù)在DevOps實(shí)踐中的作用不可忽視 根據(jù)調(diào)查結(jié)果,,我國(guó)企業(yè)用戶通過(guò)多種方式推動(dòng)DevOps的轉(zhuǎn)型和創(chuàng)新,其中受到企業(yè)最普遍重視和采納的途徑是引入外部的咨詢和培訓(xùn)服務(wù),,通常這類服務(wù)由DevOps憑條或軟件廠商在項(xiàng)目中一并提供,,也有專業(yè)的IT咨詢公司可以提供第三方服務(wù)。除此之外,,由管理層自上而下推動(dòng)DevOps轉(zhuǎn)型以及從局部團(tuán)隊(duì)開(kāi)始逐步進(jìn)行試點(diǎn)和推廣也是企業(yè)常見(jiàn)的轉(zhuǎn)型途徑,,前者體現(xiàn)出管理層支持對(duì)DevOps實(shí)踐的重要意義,后者則可以看做來(lái)自用戶內(nèi)部的“咨詢”,,即利用內(nèi)部人員的試用和摸索經(jīng)驗(yàn)來(lái)減少其他部門(mén)推廣過(guò)程中遇到的摩擦,。總體來(lái)看,,DevOps的應(yīng)用除了系統(tǒng)上線和工具安裝,,更重要的是系統(tǒng)性的經(jīng)驗(yàn)和專業(yè)化的指導(dǎo),咨詢與培訓(xùn)服務(wù)的價(jià)值在這個(gè)過(guò)程中應(yīng)當(dāng)更加得到重視,。 實(shí)踐阻礙:DevOps應(yīng)用拓展的困境 DevOps的進(jìn)一步深化仰賴軟件行業(yè)的全面生態(tài)融合 調(diào)查顯示企業(yè)在DevOps轉(zhuǎn)型中遇到的主要困難可以分為客觀和主觀兩方面的因素,,其中客觀因素主要涵蓋由于DevOps理念和方法較傳統(tǒng)方式的改變帶來(lái)的難以避免的企業(yè)摩擦性成本,從調(diào)研結(jié)果來(lái)看主要包括企業(yè)缺乏DevOps領(lǐng)域的專業(yè)人才,、外包業(yè)務(wù)與企業(yè)內(nèi)部DevOps流程的銜接還不流暢以及增加了IT部門(mén)的投入,;另一方面,主觀因素主要涉及軟件產(chǎn)業(yè)鏈中的各環(huán)節(jié)的人員對(duì)DevOps理念和方法感到的不適應(yīng)所產(chǎn)生的壓力,,主要包括內(nèi)部IT員工因?yàn)閷W(xué)習(xí)成本增加而承受的負(fù)擔(dān),,以及企業(yè)下游用戶對(duì)于DevOps方法下工作流程的改變所產(chǎn)生的不適應(yīng)。解決上述問(wèn)題不僅需要各家企業(yè)內(nèi)部的努力,,還需要軟件行業(yè)產(chǎn)業(yè)鏈上的各環(huán)節(jié)共同促進(jìn)DevOps應(yīng)用的深化,,通過(guò)全面的生態(tài)融合來(lái)消解局部的摩擦。 中國(guó)DevOps應(yīng)用發(fā)展展望 DevOps:不斷自驅(qū)與進(jìn)步的IT文化 自動(dòng)化,、數(shù)據(jù)化,、一體化、智能化是未來(lái)DevOps的發(fā)展方向 盡管DevOps包含大量IT領(lǐng)域的技術(shù)和方法,,然而更多是一種協(xié)作文化和企業(yè)管理的理念和思路,,也正因如此,DevOps的應(yīng)用框架不是一成不變的,,將會(huì)隨著信息技術(shù)和軟件工具的發(fā)展而不斷革新,、不斷適應(yīng)新的軟件開(kāi)發(fā)環(huán)境和市場(chǎng)需求環(huán)境。整體來(lái)看,,未來(lái)DevOps應(yīng)用發(fā)展將呈現(xiàn)出自動(dòng)化,、數(shù)據(jù)化、一體化,、智能化四大趨勢(shì),,分別對(duì)應(yīng)目前軟件開(kāi)發(fā)和運(yùn)維領(lǐng)域人工參與較多、量化指標(biāo)不夠清晰,、開(kāi)發(fā)運(yùn)維鏈條有待完善和智能化程度尚待提高等主要問(wèn)題,,最終目標(biāo)是最大限度減少人工對(duì)無(wú)意義、重復(fù)工作的參與并提高軟件開(kāi)發(fā)和運(yùn)維工作的有效性,。 |
|
來(lái)自: 邸彥強(qiáng) > 《技術(shù)》