當多米諾骨牌倒下時:只有DataOps和AI以及機器學(xué)習(xí)才能讓微服務(wù)和分布式系統(tǒng)立于不敗之地
譯文【51CTO.com快譯】可以想象這樣一個場景:當IT運維人員準備享受咖啡的時候,突如其來的急促報警會攪亂他們的好心情。即便經(jīng)過不懈努力解決了大量的警報信息,如此大的工作量也會使運維人員深陷疲憊。我們不禁要問:系統(tǒng)為什么不能通過智能的方式預(yù)測問題并在報警發(fā)出之前就修復(fù)它們呢?想象一下, 當IT運維人員使用復(fù)雜的 IT系統(tǒng)和混合云上的應(yīng)用程序來處理告警信息時會發(fā)生什么?無疑!他們會身陷 “報警泥潭”,無法自拔。
為了達到如下幾個目的,為微服務(wù)量身打造的新興架構(gòu)就誕生了:
- 支持業(yè)務(wù)能力
- 自動將應(yīng)用程序部署為服務(wù)
- 端點智能
- 語言和數(shù)據(jù)的去中心化控制
任何應(yīng)用中的微服務(wù)都有緊密關(guān)聯(lián)的跡象,這種關(guān)聯(lián)會導(dǎo)致多米諾骨牌效應(yīng)。應(yīng)用中任何一點延遲或更改都會以意想不到的速度影響到其他服務(wù)。每個數(shù)字原生企業(yè)都依賴于兩個要素:數(shù)據(jù)和分布式系統(tǒng)。兩個要素可以保證企業(yè)應(yīng)用中服務(wù)的完整交付。數(shù)字原生組織越成熟,就會使用更多的分布式系統(tǒng),也會擁有更多的數(shù)據(jù)。
成熟的云原生企業(yè)會遇到另一個問題,那就是數(shù)據(jù)碎片化。這需要構(gòu)建一個整體的應(yīng)用方案來解決。Gartner 估計,IT 基礎(chǔ)設(shè)施產(chǎn)生的數(shù)據(jù)量會以每年兩到三倍的速度增長。
在這樣的背景下,為什么人類要為應(yīng)用程序故障負責(zé)?這使我們回過頭來質(zhì)疑一些基本的配置和報警解決方式。
在現(xiàn)代微服務(wù)世界中哪些需要改變?
1. 準備你的日志
打破集中和孤立的架構(gòu),請將日志匯集到一個系統(tǒng)中。無論是存放還是展示,盡量讓它們保存到同一個數(shù)據(jù)源中??紤]到微服務(wù)會生成大量數(shù)據(jù),單一視圖的方式可以讓日志輕松地被搜索到。這是升級現(xiàn)代微服務(wù)監(jiān)控方法的基本操作。
2. 管理分布式網(wǎng)絡(luò)
分布式網(wǎng)絡(luò)及其通信不容忽視。它是任何組織的重要組成部分。使用可以長期保存歷史數(shù)據(jù)的集群解決方案,并不會通過過度的下采樣(downsampling 對樣本再次采樣,舍棄多余的樣本)而犧牲數(shù)據(jù)粒度。開源和 SaaS 云服務(wù)使這種解決方案變得更加復(fù)雜。但是它們可以確保當你工作的監(jiān)控系統(tǒng)與第三方平臺集成后能提供完整的可觀察性,即便這個三方平臺擁有大型和動態(tài)的生態(tài)系統(tǒng)也是如此。
3. 管理動態(tài)日志/跟蹤數(shù)據(jù)
隨著基于微服務(wù)的應(yīng)用程序演進與變化,它們生成數(shù)據(jù)的變化也悄然發(fā)生??紤]到在這種情況下監(jiān)控系統(tǒng)也需要檢測異常,所以不能僅僅依賴于手動創(chuàng)建的報警規(guī)則。最重要的是,關(guān)鍵報警不會因為日志數(shù)據(jù)的創(chuàng)建或更新而被忽略。
智能與機器人數(shù)據(jù)自動化 (RDA)
機器人數(shù)據(jù)自動化 (RDA Robotic Data Automation)旨在自動處理數(shù)據(jù),并使監(jiān)控系統(tǒng)和流程更加智能從而管理報警。機器學(xué)習(xí)算法可以使用歷史數(shù)據(jù)和現(xiàn)有學(xué)習(xí)模型隨時隨地創(chuàng)建新報警規(guī)則。它處理底層機器數(shù)據(jù)和報警,進而提供優(yōu)化報警處理過程的建議。RDA 讓報警處理過程變得智能化,以減少人為干預(yù)。
邁向新的微服務(wù)世界
摒棄舊監(jiān)控方法的四大原因如下:
1. 更多的應(yīng)用程序正被部署到云中。
2. 迭代會顯得更加頻繁,對于程序的微小修改都需要將整體應(yīng)用重新編譯和發(fā)布。
3. 每次變更都會影響到其他模塊,正所謂牽一發(fā)而動全身。
4. 如果沿用舊有監(jiān)控的擴展方式則會影響到整個應(yīng)用程序,實際上只需要擴展部分資源就可以滿足監(jiān)控擴展需求。
同時,新的微服務(wù)架構(gòu)模式需要關(guān)注服務(wù)發(fā)現(xiàn)、配置管理、負載均衡、消息傳遞等。您需要具備數(shù)據(jù)獲取和與第三方系統(tǒng)集成的能力。通過RDA 的AIOps(人工智能運維)方式幫助實現(xiàn)混合 IT系統(tǒng)的性能與可用性監(jiān)控。
譯者介紹
崔皓:51CTO社區(qū)編輯,資深架構(gòu)師,擁有18年的軟件開發(fā)和架構(gòu)經(jīng)驗,10年分布式架構(gòu)經(jīng)驗。曾任惠普技術(shù)專家。樂于分享,撰寫了很多熱門技術(shù)文章,閱讀量超過60萬。??《分布式架構(gòu)原理與實踐》??作者。
原文標題:When Dominoes Fall: Microservices and Distributed Systems Need Intelligent DataOps and AI/ML To Stand Up Tall,作者:Srinivas Miriyala
【51CTO譯稿,合作站點轉(zhuǎn)載請注明原文譯者和出處為51CTO.com】