從顛覆性的技術(shù)到DevOps工具和實(shí)踐的持續(xù)發(fā)展,在未來的一年里有很多可以談?wù)摰脑掝}。重要的是要記住,不管如何發(fā)展,技術(shù)和人才仍然是推動行業(yè)變革的關(guān)鍵力量。
使用GitOps擴(kuò)展容器化和編排治理
在2021年,Kubernetes將更為流行。當(dāng)開發(fā)團(tuán)隊(duì)在全球范圍內(nèi)部署他們的產(chǎn)品時,將面臨著規(guī)模問題;運(yùn)維人員的壓力則來源于需要跨多個云管理多個實(shí)例。
通常,操作團(tuán)隊(duì)使用push模式,其中傳遞管道將更新發(fā)送到Kubernetes集群。這種模式帶來了挑戰(zhàn)。例如,軟件團(tuán)隊(duì)提出的兩個常見問題是“在給定的環(huán)境中部署了什么版本”和“我們能快速回滾到以前的版本嗎”,在push模式下,這些問題很難得到解決。
GitOps是另一種部署范例,集群本身從駐留在源代碼管理中的清單中“拉”出更新(使Git成為名稱的一個組成部分)。這里不深入討論GitOps如何工作的更多細(xì)節(jié),重點(diǎn)是關(guān)注其價值以及為何它將成為2021年的關(guān)鍵趨勢。然而,值得重申的是,使用GitOps會使事情容易得多。Git存儲庫的內(nèi)容會告訴你應(yīng)該在集群中部署什么,Git提交歷史實(shí)際上可以作為集群部署歷史和審計(jì)跟蹤。
首先,已部署應(yīng)用程序的所有組件都存儲在源代碼管理下。這不僅意味著源代碼本身,還描述看應(yīng)用程序如何在集群內(nèi)運(yùn)行的Kubernetes清單。這個功能意味著我們可以存儲、版本和管理Kubernetes資源的期望狀態(tài)。
接下來,可以將集群和Git之間的狀態(tài)等同起來,從而允許可重復(fù)和可審核的部署。開發(fā)人員或運(yùn)維人員手動執(zhí)行集群更改的情況并不少見。這些特別的變化從來沒有被記錄在任何地方,而且是脆弱的。使用GitOps可以解決這個問題,因?yàn)闆]有記錄在Git中的手動更改很容易被丟棄。
最后,團(tuán)隊(duì)可能多次對集群進(jìn)行更改,而這些更改在任何地方都沒有記錄。配置漂移是一個臭名昭著的問題,它持續(xù)的時間越長,它就變得越嚴(yán)重。部署失敗的典型場景是階段環(huán)境和生產(chǎn)環(huán)境之間的差異。開發(fā)人員在登臺環(huán)境中測試他們的應(yīng)用程序,并假設(shè)它在生產(chǎn)環(huán)境中也可以工作。GitOps提供了一個解決方案,使運(yùn)營商能夠減少配置偏差。
關(guān)注價值和價值流管理
DevOps團(tuán)隊(duì)仍在努力從構(gòu)想到實(shí)現(xiàn)價值的可視化和周期時間。在數(shù)字轉(zhuǎn)型上花費(fèi)了數(shù)百萬美元,這通常會產(chǎn)生局部優(yōu)化,但不會產(chǎn)生系統(tǒng)性的業(yè)務(wù)結(jié)果。價值流管理推動了對應(yīng)用系統(tǒng)思維的關(guān)注,以首先確定在哪里和什么類型的投資將導(dǎo)致交付期望的業(yè)務(wù)結(jié)果,然后在整個組織中擴(kuò)展這些概念。
今年,DevOps將從產(chǎn)品交付擴(kuò)展到價值交付,實(shí)現(xiàn)更廣泛的數(shù)字化轉(zhuǎn)型,將業(yè)務(wù)成果從外到內(nèi)的視角重新納入為其提供動力所需的人員、流程和技術(shù)。
DevOps轉(zhuǎn)換必須與正確的目標(biāo)和業(yè)務(wù)KPI(如客戶滿意度)保持一致,然后不斷調(diào)整流程和技術(shù)以改進(jìn)它們。越來越多的組織將圍繞價值流來設(shè)計(jì)DevOps轉(zhuǎn)換,價值流映射作為早已確立的一項(xiàng)長期實(shí)踐,為基于DevOps原則的改進(jìn)打下基礎(chǔ)。
通過檢查其價值流管理平臺的數(shù)據(jù)和見解,團(tuán)隊(duì)將能夠進(jìn)行調(diào)整,根據(jù)價值流績效選擇進(jìn)行轉(zhuǎn)變還是堅(jiān)持現(xiàn)狀,并持續(xù)接收實(shí)時反饋。
分析、人工智能和機(jī)器學(xué)習(xí)將繼續(xù)干擾開發(fā)、安全和運(yùn)維
DevSecOps正變得越來越智能,特別是在基于風(fēng)險的漏洞管理方面,軟件安全尋求將漏洞評估自動化并協(xié)調(diào)到交付管道中。
到2021年,解決方案現(xiàn)在可以自動設(shè)置策略防護(hù)欄,并為負(fù)擔(dān)過重、資源不足的安全團(tuán)隊(duì)提供基于風(fēng)險的漏洞管理,這些安全團(tuán)隊(duì)在采用云技術(shù)之前面臨挑戰(zhàn)。
然而,我們將看到的發(fā)展是使用智能來識別實(shí)質(zhì)性的變化,理解開發(fā)人員的行為,并取代人工修復(fù)漏洞的嘗試。團(tuán)隊(duì)不必花費(fèi)有限的財政和人力資源來建設(shè)安全的基礎(chǔ)設(shè)施。相反,這一趨勢將使用人工智能和機(jī)器學(xué)習(xí)來構(gòu)建安全的應(yīng)用程序和基礎(chǔ)設(shè)施。
隨著分析系統(tǒng)使用各種技術(shù)(如機(jī)器學(xué)習(xí)、深度學(xué)習(xí)和自然語言處理),從價值流中獲取數(shù)據(jù)(包括人類和機(jī)器數(shù)據(jù))變得更加容易,預(yù)計(jì)這一趨勢將滲透到整個交付管道。圍繞部署、遵從性和應(yīng)用程序操作的智能協(xié)助將節(jié)省人力和減少錯誤。
DevOps平臺
在新的現(xiàn)實(shí)中,COVID-19加速了數(shù)字顛覆的速度。為了在有限的預(yù)算下保持競爭力,每家公司都面臨著提高交付速度和上市時間的越來越大的壓力。為了解決這個問題,更多的公司將轉(zhuǎn)向平臺方式進(jìn)行DevOps轉(zhuǎn)型,以擴(kuò)大規(guī)模并幫助加速數(shù)字轉(zhuǎn)型。
簡而言之,平臺的目標(biāo)是消除規(guī)模障礙,減少外來的認(rèn)知負(fù)荷,并鋪平前進(jìn)的道路,讓開發(fā)者可以專注于交付業(yè)務(wù)價值。