關(guān)于 AIOps 的過去與未來,微軟亞洲研究院給我們講了這些故事
作者 | 賈凱強
出品 | AI科技大本營(ID:rgznai100)
在過去的15年里,云計算實現(xiàn)了飛速發(fā)展,而這種發(fā)展也為諸多的前沿技術(shù)奠定了基礎(chǔ),AIOps便在此環(huán)境中獲得了良好的發(fā)展契機。在數(shù)字化轉(zhuǎn)型的浪潮下,云計算已經(jīng)成為了整個社會的基礎(chǔ)設(shè)施之一。當企業(yè)把服務(wù)建立在云上,云計算的平臺性能、安全性等要求也在不斷增加,這種情況下,運維的升級便已如箭在弦上。
為了進一步明晰AIOps技術(shù)發(fā)展的趨勢,微軟亞洲研究院常務(wù)副院長,微軟杰出首席科學家張冬梅,微軟亞洲研究院首席研究員林慶維兩位專家為大家做出了明確的解析。
云時代下,AIOps的希望與契機
在云計算時代里,云平臺的系統(tǒng)規(guī)模已然成為了一種大規(guī)模分布式且復雜度非常高的操作系統(tǒng)。系統(tǒng)之間存在各種問題,盡管工程師在設(shè)計時已經(jīng)盡量將其模塊化,但不改的依然是系統(tǒng)的復雜度。而要保證復雜系統(tǒng)的穩(wěn)定、高效和安全等,就必須在整體設(shè)計、開發(fā)、運維等各方面完成模式轉(zhuǎn)變。
張冬梅博士介紹稱,云計算帶來的范式轉(zhuǎn)變主要包括了四個層面。首先是基于規(guī)則的系統(tǒng),變成數(shù)據(jù)驅(qū)動的系統(tǒng)。以前開發(fā)模式基本上是憑借著經(jīng)驗和想象而來,難以預測運行狀態(tài)如何,軟件在運行的時候會發(fā)生很多事情,模式的轉(zhuǎn)變就是希望把運行時產(chǎn)生和記錄的數(shù)據(jù)進行分析,增加對整個系統(tǒng)狀況的理解。基于此,整個系統(tǒng)在設(shè)計時將不再一成不變,而是有不斷變化的思想,從基于規(guī)則到數(shù)據(jù)驅(qū)動。
第二則是從靜態(tài)到自適應(yīng)的發(fā)展。當系統(tǒng)不再是固定的,如CI/CD一樣,系統(tǒng)可能隨時開發(fā),隨時變化,并附帶諸多檢查,當新代碼提交并構(gòu)建后,經(jīng)過測試會再進行部署,依賴部署策略,在更大的范圍內(nèi)部署到整個平臺上去。整個過程從靜態(tài)變成了動態(tài),系統(tǒng)也需要在動態(tài)過程當中,根據(jù)外部環(huán)境的變化進行自身的調(diào)整。
第三則是從局部到整體的觀念轉(zhuǎn)化。在一個大的云計算系統(tǒng)中不能只看一點,應(yīng)該把視野放大。比如在云平臺里面肯定會有存儲,但是當某塊硬盤壞掉時,要考慮的不僅僅是換硬盤,還要考慮為什么它會壞?它壞了之后,是否旁邊的也存在風險。
第四便是防患于未然。以往的被動式反應(yīng)是等系統(tǒng)出了問題才去處理,但是云時代更要做的是防患于未然,要主動在其快出問題的時候,先行采取措施,讓問題最好不要出現(xiàn)。而AIOps便是這樣的一種機制。尤其是在大的云計算平臺,其往往可以根據(jù)自身特點和期望,對其設(shè)計、實現(xiàn)、運維這三個方面實現(xiàn)模式轉(zhuǎn)變。
事實上,微軟亞洲研究院早在十余年前就開始對AIOps領(lǐng)域進行研究。那么到底什么是AIOps呢?張冬梅博士解釋稱AIOps是通過創(chuàng)新的AI、ML技術(shù),讓用戶可以有效且高效地設(shè)計、構(gòu)建、運營大規(guī)模復雜的云服務(wù)。
微軟亞洲研究院常務(wù)副院長、微軟杰出首席科學家張冬梅
關(guān)于現(xiàn)在,AIOps能夠帶來怎樣的改變
微軟亞洲研究院在嘗試AIOps的更多可能,關(guān)于AIOps的定義,其主要有三個方面的研究。
第一是服務(wù)/系統(tǒng),即AI for System。軟件的源代碼只有運行起來才是一個軟件系統(tǒng),而從運行的系統(tǒng)觀點來看待問題,其便關(guān)系到系統(tǒng)的性能、穩(wěn)定性、安全性等各方面的問題。
第二是客戶,即AI for Customer。系統(tǒng)可以服務(wù)于個人,也可以服務(wù)于企業(yè)。那么為用戶服務(wù)時便一定要注重用戶體驗。
第三是開發(fā)/運維的生產(chǎn)效率,即AI for DevOps。開發(fā)和運維主要是針對開發(fā)人員和運維人員,如果能夠用智能技術(shù)幫到他們,提高生產(chǎn)效率,則可以讓平時的工作能夠變得更加順暢。
那么AIOps的應(yīng)用場景包含了哪些呢?在系統(tǒng)服務(wù)方面,會常常用于異常行為檢測和預警,其可以基于數(shù)據(jù)采取機器學習的方法,再結(jié)合專業(yè)領(lǐng)域知識,實現(xiàn)較好的判斷和預判。
在開發(fā)和運維方面,如CI/CD等。其不僅需要在不影響用戶的情況下快速讓系統(tǒng)恢復正常,還需要找出問題出現(xiàn)的原因,但是由于系統(tǒng)的復雜性導致很多時候很難發(fā)現(xiàn)問題漏洞,因此需要甄別如日志等各種信息并進行大量的診斷,從而可以通過智能的方法將診斷工作提高效率。
在客戶方面,也需要讓客戶的體驗提升。微軟的云平臺經(jīng)過多年實踐后,將AIOps方面的實踐提煉成工具,并提供給客戶。當客戶自己構(gòu)建服務(wù)和運維時,基于整個云平臺,就能夠幫助客戶構(gòu)建其他服務(wù)。
在整個運維系統(tǒng)里面,AIOps的研發(fā)難度可謂排名前列。在不同的場景中,有著不同的系統(tǒng)、客戶和DevOps運維等。不同的場景會使得研究的角度不同,研究人員需要針對共性問題進行抽象,并從研究角度解決共性問題,找到可推廣的算法或者解決方案,這樣才能提高解決問題的效率。
在AIOps的研發(fā)過程中,其主要面對的挑戰(zhàn)有四個領(lǐng)域。首先是檢測,也就是需要知道問題能否及時知道;第二是診斷,要及時的找到問題在哪里,并了解根本原因;第三是預測,其需要防患于未然,而不只是出現(xiàn)問題才采取措施;第四是優(yōu)化,面對多重約束等問題需要不斷地將模型和產(chǎn)品進行打磨優(yōu)化。
面向未來,AIOps還有哪些發(fā)展
微軟亞洲研究院多年以來在AIOps方面進行了深入的研究工作。其在AIOps方向上起步非常早,早在2009年前后便已經(jīng)成立了Software Analytics Group(軟件分析組),并希望從數(shù)據(jù)驅(qū)動的角度研究軟件領(lǐng)域。這其中包括了運行系統(tǒng)問題、用戶體驗問題、開發(fā)效率問題等。
云計算作為過去10到15年里整個軟件和工業(yè)范式的轉(zhuǎn)變,云計算系統(tǒng)也變成了運行軟件的主要形式。因此,Software Analytics研究的焦點便集中到云計算系統(tǒng),微軟亞洲研究院也相應(yīng)提出了云智能/AIOps。Software Analytics做的事情就像是軟件行業(yè)的數(shù)字化轉(zhuǎn)型。用數(shù)字化轉(zhuǎn)型的觀念來看,AIOps就像把整個云計算平臺用最先進的AI技術(shù),實現(xiàn)持續(xù)不斷的創(chuàng)新。
張冬梅博士認為,AIOps的發(fā)展一定要落地,如果不能對軟件工業(yè)進步做出任何貢獻,那么技術(shù)就沒有太大意義。因此微軟亞洲研究院在研究的同時,也在尋找機會將其真正部署到微軟的Azure云平臺里面,從而對公司和社會做出一些貢獻。
林慶維隨后對微軟亞洲研究院在AIOps方面的工作進行了補充。服務(wù)系統(tǒng)方面,檢測異常行為很重要。現(xiàn)在硬件問題是虛擬機宕機的原因之一,在大型的硬件平臺中,磁盤故障是造成硬件問題的主要原因。研究員們希望在出故障之前,系統(tǒng)能更早地意識到或者是能預測出磁盤故障并采取措施。如把用戶的虛擬機遷移到別的機器上去,或者通過軟啟動等方式解決問題,讓用戶不會受到影響。其可以作為一個機器學習的問題,讓模型從大量硬盤的歷史數(shù)據(jù)中學習到知識之后,根據(jù)目前磁盤的狀態(tài),預測將來是否可以及時采取措施。
開發(fā)和運維方面,在云平臺上不會像桌面軟件那樣很長時間才更新一次。云平臺上,每時每刻都有非常多的新的部署產(chǎn)生,需要時時刻刻檢測其安全性,避免任何一個部署出問題,進而導致整個云平臺宕機。因此,這就需要通過AIOps的方法,以智能的方式來解決問題,在中間階段將問題抑制,回歸到安全狀態(tài)。針對安全部署診斷問題,在云平臺上面的部署,需要確保從小規(guī)模部署到大規(guī)模的每一步都是安全的,最后才能部署到云平臺。在整個部署的過程中需要檢測所有的健康信號,包括各種資質(zhì)、傳感器信號、狀態(tài)等,必須精確評估是否與部署相關(guān)。
因此,微軟亞洲研究院提出了遷移學習方案和主動學習方案,即主動遷移學習異常檢測ATAD。該方案在云平臺上的挑戰(zhàn)主要集中在難獲得高質(zhì)量的標簽數(shù)據(jù),所以微軟亞洲研究院采用了遷移學習的方式將其他數(shù)據(jù)學到的知識轉(zhuǎn)化為目標領(lǐng)域。并通過主動學習,讓工程師給出不同的優(yōu)先級,得到最好的學習效果。通過遷移學習和主動學習,其能夠?qū)崿F(xiàn)較好的效果。用少于0.1%的人工標注,得到了非常好的準確率。目前這一方案已經(jīng)用于云平臺中,達到了高效的準確度和召回率,且沒有大的遺漏。
微軟亞洲研究院首席研究員林慶維
在AIOps未來的研究方向上,微軟亞洲研究院希望其能夠更加自主化,幫助用戶做出最優(yōu)的決策,而不需要人工干預;再比如希望其能夠更加主動化,不能等問題出現(xiàn)才想起來解決問題,應(yīng)該在問題出現(xiàn)之前,就將其扼殺于萌芽狀態(tài);第三則是希望其能夠更加通用,希望以后跨平臺的AIOps應(yīng)用,不僅是服務(wù)于云平臺,而是服務(wù)于所有平臺。
*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。