學(xué)AI,好工作 就找北大青鳥(niǎo)
關(guān)注小青 聽(tīng)課做題,輕松學(xué)習(xí)
周一至周日
4000-9696-28

一文講明白DevOps、DevSecOps、GitOps、NetOps、AiOps、ItOps、NoOps

來(lái)源:北大青鳥(niǎo)總部 2023年09月14日 09:36

摘要: DevOps=Developers+Operators,也就是研發(fā)運(yùn)維一體化,主要是通過(guò)自動(dòng)化流程使得軟件過(guò)程更加快捷和可靠。它不是一個(gè)產(chǎn)品,而是一種新的團(tuán)隊(duì)工作方式、新的技術(shù)理念。

這不一定是一個(gè)最好的時(shí)代,也不一定是一個(gè)最壞的時(shí)代,但一定是個(gè)Ops盛行的時(shí)代,在互聯(lián)網(wǎng)圈內(nèi)的你一定經(jīng)常都會(huì)聽(tīng)到這些名詞,DevOps、DevSecOps、GitOps、NetOps、ItOps、Aiops、DataOps、MLOps、NoOps,其中DevOps、DevSecOps、GitOps、NetOps、ItOps、NoOps都是屬于運(yùn)維領(lǐng)域的,因此我們今天主要也來(lái)講這些Ops。

DevOps=Developers+Operators,也就是研發(fā)運(yùn)維一體化,主要是通過(guò)自動(dòng)化流程使得軟件過(guò)程更加快捷和可靠。它不是一個(gè)產(chǎn)品,而是一種新的團(tuán)隊(duì)工作方式、新的技術(shù)理念。

一個(gè)軟件從0到1的最終交付包含如下階段:市場(chǎng)規(guī)劃、產(chǎn)品規(guī)劃、編碼設(shè)計(jì)、編譯構(gòu)建、部署測(cè)試、發(fā)布上線(xiàn)、后期維護(hù)。早期的時(shí)候全由一個(gè)人完成了,隨著團(tuán)隊(duì)的擴(kuò)張,團(tuán)隊(duì)里有了產(chǎn)品經(jīng)理、開(kāi)發(fā)人員、測(cè)試人員、運(yùn)維人員的劃分,由產(chǎn)品經(jīng)理負(fù)責(zé)需求的規(guī)劃、產(chǎn)品交互設(shè)計(jì),研發(fā)人員負(fù)責(zé)編碼、構(gòu)建包,測(cè)試人員負(fù)責(zé)功能測(cè)試和自動(dòng)化測(cè)試、上線(xiàn)發(fā)布,運(yùn)維人員負(fù)責(zé)維護(hù)線(xiàn)上服務(wù)的正常運(yùn)行、擴(kuò)容縮容,這就是敏捷開(kāi)發(fā)模型,在開(kāi)發(fā)過(guò)程階段測(cè)試介入,快速驗(yàn)證修改問(wèn)題直到基本無(wú)誤后上線(xiàn)部署。

這一切所帶來(lái)的問(wèn)題是整體的交付周期變長(zhǎng)了,團(tuán)隊(duì)之間溝通合作成本變高了,因此DevOps應(yīng)運(yùn)而生。它將整個(gè)軟件開(kāi)發(fā)測(cè)試運(yùn)維過(guò)程變?yōu)橐惑w化,每完成一個(gè)小的需求點(diǎn)便測(cè)試上線(xiàn)部署,快速驗(yàn)證需求,捕獲用戶(hù),占領(lǐng)市場(chǎng)。

DevSecOps=Developers+Operators+Securitys,DevSecOps即在保證持續(xù)集成交付、敏捷開(kāi)發(fā)的同時(shí),保證業(yè)務(wù)的安全性。在DevOps的軟件開(kāi)發(fā)過(guò)程包含計(jì)劃、編碼、構(gòu)建、測(cè)試、預(yù)發(fā)布、發(fā)布、運(yùn)維、監(jiān)控。在計(jì)劃階段執(zhí)行安全性分析,確定在哪些模塊容易引發(fā)安全問(wèn)題;在編碼階段使用API密鑰、SSH公鑰等保護(hù)代碼安全;在構(gòu)建階段執(zhí)行靜態(tài)代碼掃描來(lái)發(fā)現(xiàn)代碼中的缺陷;在測(cè)試階段檢測(cè)用戶(hù)身份驗(yàn)證、授權(quán)、SQL注入等相關(guān)的安全問(wèn)題;在預(yù)發(fā)布階段使用安全分析工具進(jìn)行全面的滲透測(cè)試、漏洞掃描;在運(yùn)營(yíng)運(yùn)維階段,通過(guò)一定的監(jiān)控體系搭建,不斷的監(jiān)控系統(tǒng)情況,保證系統(tǒng)高可用、高可靠。

GitOps=Git+Operators,這是基于Git(版本控制系統(tǒng),如Github、Gitlab)的基礎(chǔ)架構(gòu)和應(yīng)用程序結(jié)合的方式。GitOps更多是基于云原生的一個(gè)解決方案,在GitOps中,一切可以被描述的內(nèi)容(如部署策略、代碼配置、監(jiān)控)等都存儲(chǔ)在Git版本控制系統(tǒng)中、基于云原生的容器(如Kubernetes、Docker)也使用Git命令控制,不使用原有的如kubectl的方式。對(duì)于開(kāi)發(fā)人員來(lái)說(shuō),都要使用Git工具進(jìn)行代碼的托管、代碼評(píng)審,GitOps降低了開(kāi)發(fā)人員的學(xué)習(xí)成本,使用Git就可以自動(dòng)創(chuàng)建多容器的編排了。

ITOps即IT運(yùn)維全生命周期管理,在軟件全生命周期中包含主機(jī)監(jiān)控管理、日志管理、資產(chǎn)管理、事件管理等,而ITOps提供的就是把這些管理工具集成在一起的解決方案,幫助企業(yè)全方位、全鏈路的監(jiān)控、管理。傳統(tǒng)方式中企業(yè)一般都采購(gòu)不同供應(yīng)商的不同解決方案(取其優(yōu)勢(shì)),然后再組建個(gè)團(tuán)隊(duì)或找其中的某個(gè)供應(yīng)商把這些解決方案都打通,但因?yàn)槊總€(gè)供應(yīng)商的標(biāo)準(zhǔn)、技術(shù)設(shè)計(jì)都不一樣,因此打通其實(shí)是很耗費(fèi)成本。因此ItOps也正在上云,供應(yīng)商開(kāi)始通過(guò)收購(gòu)或自研提供一整套的ItOps解決方案。

NetOps即網(wǎng)絡(luò)運(yùn)維,是在網(wǎng)絡(luò)的全生命周期進(jìn)行運(yùn)維的解決方案。在設(shè)備入網(wǎng)的時(shí)候,進(jìn)行批量的刷入、監(jiān)控、目標(biāo)版本升級(jí),設(shè)備入網(wǎng)后進(jìn)行業(yè)務(wù)配置、業(yè)務(wù)驗(yàn)證,業(yè)務(wù)上線(xiàn)后進(jìn)行定期的批量審計(jì)、巡檢,保證故障識(shí)別與解決。NetOps在DevOps環(huán)境中可以更加的靈活,通過(guò)自動(dòng)化、虛擬化的方式提高解決網(wǎng)絡(luò)問(wèn)題的速度。

AiOps,即人工智能運(yùn)維,通過(guò)機(jī)器學(xué)習(xí)算法自動(dòng)的從海量運(yùn)維數(shù)據(jù)中不斷的學(xué)習(xí),結(jié)合領(lǐng)域?qū)<业闹笇?dǎo)不斷訓(xùn)練模型,最終通過(guò)模型來(lái)分析決策,達(dá)到智能運(yùn)維,在IT系統(tǒng)中總共會(huì)產(chǎn)生五類(lèi)數(shù)據(jù):機(jī)器數(shù)據(jù)、網(wǎng)絡(luò)數(shù)據(jù)、代理數(shù)據(jù)、探針數(shù)據(jù)。機(jī)器數(shù)據(jù)是IT系統(tǒng)自己產(chǎn)生的數(shù)據(jù),;網(wǎng)絡(luò)數(shù)據(jù)是網(wǎng)絡(luò)通信過(guò)程中產(chǎn)生的數(shù)據(jù);代理數(shù)據(jù)則是通過(guò)在應(yīng)用程序中插入代理程序,獲取應(yīng)用程序中函數(shù)調(diào)用次數(shù)時(shí)長(zhǎng)、調(diào)用堆棧等數(shù)據(jù);探針數(shù)據(jù)則是通過(guò)撥測(cè)模擬用戶(hù)請(qǐng)求對(duì)系統(tǒng)進(jìn)行檢測(cè)獲得的數(shù)據(jù)。獲取數(shù)據(jù)后再結(jié)合人工智能算法,如邏輯回歸、關(guān)聯(lián)關(guān)系挖掘、聚類(lèi)、決策樹(shù)、隨機(jī)森林、支持向量機(jī)、蒙特卡洛樹(shù)搜索、隱式馬爾科夫、多示例學(xué)習(xí)、遷移學(xué)習(xí)、卷積神經(jīng)網(wǎng)絡(luò)等,最后實(shí)現(xiàn)故障自動(dòng)檢測(cè)、自動(dòng)修復(fù)、自動(dòng)預(yù)測(cè)。

NoOps即無(wú)運(yùn)維,完全自動(dòng)化的運(yùn)維。在NoOps中不再需要開(kāi)發(fā)人員、運(yùn)營(yíng)運(yùn)維人員的協(xié)同,從微服務(wù)、低代碼、無(wú)服務(wù)全結(jié)合起來(lái),開(kāi)發(fā)者在軟件生命周期中只需要聚焦業(yè)務(wù)開(kāi)發(fā)即可,所有的維護(hù)都交由云廠(chǎng)商來(lái)完成。NoOps的目標(biāo)就是去除在軟件開(kāi)發(fā)過(guò)程中所有可能出現(xiàn)的人為因素影響,提高交付速度、交付質(zhì)量。

整個(gè)開(kāi)發(fā)運(yùn)維的發(fā)展趨勢(shì)是從ItOps、DevOps、NetOps、AiOps、DevSecOps、GitOps、NoOps,而ItOps、NetOps、AiOps更多是運(yùn)維域的解決方案,DevOps、DevSecOps、GitOps是開(kāi)發(fā)運(yùn)維域的解決方案,NoOps是終極解決方案?,F(xiàn)在這些概念你都清晰了嗎?


標(biāo)簽: ops
熱門(mén)班型時(shí)間
人工智能就業(yè)班 即將爆滿(mǎn)
AI應(yīng)用線(xiàn)上班 即將爆滿(mǎn)
UI設(shè)計(jì)全能班 即將爆滿(mǎn)
數(shù)據(jù)分析綜合班 即將爆滿(mǎn)
軟件開(kāi)發(fā)全能班 爆滿(mǎn)開(kāi)班
網(wǎng)絡(luò)安全運(yùn)營(yíng)班 爆滿(mǎn)開(kāi)班
報(bào)名優(yōu)惠
免費(fèi)試聽(tīng)
課程資料
官方微信
返回頂部
培訓(xùn)課程 熱門(mén)話(huà)題 站內(nèi)鏈接