SOFAStack 背後的實踐和思考|新一代分散式雲 PaaS 平臺,打造企業上雲新體驗

SOFAStack發表於2021-12-29

近幾年雲端計算的發展如火箭般迅猛,異構變革日新月異,這是基礎設施層明確的發展趨勢。值得關注的是,隨著基礎設施的複雜度越來越高,也為整個基礎設施的統一資源排程帶來了極大挑戰。

在越來越複雜的異構基礎設施上,存量應用和增量應用應該如何上雲?面對大量異構基礎設施帶來的挑戰,企業如何最大化上雲價值?

12 月 15 日,在以“引領分散式雲變革,助力灣區數字經濟”為主題的全球分散式雲大會上,螞蟻集團數字科技事業部產品總監馬振雄分享了分散式雲異構基礎設施之上,螞蟻集團在構建分散式雲 PaaS 平臺 SOFAStack 背後的實踐和思考。

圖片

PART. 1 服務網格定義新的應用上雲路徑

隨著雲原生的發展,企業在技術升級的過程中伴隨著大量的歷史包袱,這些歷史包袱是所有存量的異構功能,這些異構功能有以下幾個特徵:技術架構異構、通訊協議異構、開發框架異構。

這些存量的應用如何在異構的基礎設施上統一納管,背後就涉及到了應用的全生命週期,從研發時的應用改造成本,到執行時如何對異構應用做統一服務治理,再到運維時如何對基礎設施進行統一後設資料管理、統一變更、統一容災、統一應急以及資金安全,這些都是存在於 PaaS 層的挑戰。

如果說 IaaS 層的統一資源排程以資源為視角和出發點,那麼在上層 PaaS 則需要以應用為視角思考整個分散式基礎設施的複雜度到底會帶來哪些挑戰,以及企業應該如何應對。

企業存在大量的歷史包袱,歷史包袱五花八門,如果要把這些歷史包袱全部改造成分散式應用或者雲原生應用,背後需要的代價非常昂貴,很難有一家企業在短時間內願意負擔起這樣的時間和成本,徹底將所有的歷史包袱雲原生化。

相比於其他上雲方式,Service Mesh 能夠實現跨平臺、跨協議,並且業務程式碼無侵入改造,從而快速地將應用植入 Sidecar 完成 Mesh 化,獲得分散式紅利、安全可觀測,並且整個架構平滑演進。企業在架構升級過程中可以按部就班、循序漸進,並且實現端到端的安全可信以及全鏈路可觀測能力。

總體來說網格服務首先降低了傳統應用改造成分散式、雲原生應用的成本問題;其次是解決了所有企業新老系統的互聯互通和統一納管的問題;第三是讓企業應用架構在升級過程變得更平滑;第四是讓所有企業保留自己存量系統的技術棧,且保留了企業自身自主可控性要求。

Forrester 長期以來對螞蟻集團的創新技術保持關注,Forrester 首席分析師、Serving Technology Executives 服務技術決策者戴鯤釋出《螞蟻集團服務網格總體經濟影響》,並分享了他對於 Mesh 的研究,

未來要實現開發的智慧化,需要通過微服務來進行智慧化程式,不再像以前一樣零敲碎打。對傳統應用進行定製化,要通過網格服務動態地組裝,實現雲上開發。

通過對螞蟻集團客戶的訪談,Forrester 發現無論是傳統金融機構還是網際網路金融機構,都面臨在混合架構下存在的共性挑戰,包括基礎設施升級換代、應用開發升級、雲上雲下互動等方方面面。Forrester 發現網格服務從單體應用改造成本節省到運維安全管理效率提升等方面都有明顯的收益,通過研究三年資料測算,使用螞蟻服務網格產品後,客戶的投資回報率達到 99%。

PART. 2 SOFAStack 實現異構統一運維與彈性容災

基於自身的技術積累和場景打磨,螞蟻數字科技定義了分散式雲 PaaS 平臺在運維態的六大能力,包括統一後設資料管理、統一叢集資源管理、統一變更能力、統一應急能力、統一容災能力,和統一端到端從業務、應用到基礎設施的可觀測能力。在此基礎上,螞蟻數字科技重新定義 SRE,實現統一應用運維能力。

行業一般認為 SRE 中的“R”(Reliability)是可靠性,螞蟻數字科技結合自身十幾年來對業務可用性和連續性的極致追求,經歷了十多次雙十一大規模驗證,對 SRE 進行重新定義,將 SRE 裡的 R 從 Reliability 轉變為 Risk,意味著螞蟻自身的保障體系是以風險為核心。最終通過十幾年來的技術沉澱,打造了自己的技術風險保障平臺 TRaaS。也正是因為這十幾年沉澱的精華,才能讓螞蟻做到業務、應用、基礎設施的運維無人值守,運維“自動駕駛”。

螞蟻的技術風險防控體系從上到下分別代表了三個目標:高可用、資金安全、低成本。三個組織保障:團隊、文化、制度。再到需求、研發、釋出以及監控的四條防線,最終沉澱出一套完整的技術風險保障體系的平臺能力,整個平臺由四個能力板塊組成,包括了從應急、變更到容量、資金安全。

圖片

應急平臺建立起了以風險為核心的事前、事中、事後的故障風險保障體系,分別對應故障風險檢測能力、故障定位能力、故障應急和自愈能力,以及故障的回溯能力。變更平臺建立起了以變更為核心的事前、事中、事後的變更風險自動分析、防禦、阻斷能力。容量平臺建立起了對於全域性資料中心和系統整體瓶頸的自動探測、容量規劃和容量保鮮能力。最後的資金平臺,通過對業務應用無侵入地建立起了資金核對第二道防線,幫助企業徹底規避資金安全風險,減少資損。

如果說第一個核心的挑戰解決的是研發態和執行態的問題,第二個核心挑戰解決運維態問題,第三個核心挑戰,要解決的是從整體架構上解決容災態的問題。

隨著分散式雲基礎設施的蓬勃發展,企業資料中心從集中化走向離散化,這意味著企業任何一個應用隨時隨地可以跑在全國的任何一家資料中心機房的任何一個節點。這種變化背後,從應用視角來看,迫切需要整體的系統應用架構,支撐業務突破地域和城市級別的無限可擴充套件能力。基於螞蟻對於業務連續性的極致追求,螞蟻在支撐業務發展過程中,建立起了金融行業超大規模的三地五中心,並沉澱了一套異地多活單元化架構,解決企業在容災、彈性、灰度方面的三大痛點。

容災方面,可以支撐企業的資料中心架構徹底從單活走向同城雙活、兩地三中心、再走向多地多活。一個業務單元發生故障不會影響到另外一個業務單元,從架構本身原生保障了業務的可靠性和連續性。

彈性方面,由於靈活部署和快速擴容機制,能夠結合靈活的流量調撥機制,支撐企業的資料中心突破城市和地域級別的擴充套件,做到真正意義上的無限可擴充套件。

灰度,結合跨單元的路由分發,可以輕易地做到藍綠單元這樣具有創新的業務灰度方式。

多地多活的架構非常複雜,從上至下包含了四層,從接入層做路由規則和路由分發,到應用層的中介軟體路由,再到資料層的資料分片和資料路由,最後到運維層的統一容災、統一監控、單元拓撲。

以金融行業為例,大型銀行在主機下移過程中,需要面臨的重要課題就是如何將核心系統下沉到分散式叢集,在分散式叢集下移過程中如何匹配主機系統效能和穩定性,背後很重要的能力就是多地多活架構。

圖片

最終,螞蟻在以上三個核心挑戰的實踐過程中,沉澱出新一代分散式雲 PaaS 平臺 SOFAStack。平臺在金融行業有非常多的頭部客戶案例,從原生能力就滿足了金融行業遠高於其他行業在容量、效能、規模、高可用、合規、降本提效等方面的高標準要求。更重要的是 SOFAStack 來源於金融行業,但不止於金融行業,螞蟻希望通過 SOFAStack 賦能到更多的行業,完成更多企業的數字化轉型。

PART. 3 SOFAStack 未來演進方向

Mesh 的未來會經歷三個重要的發展階段:

第一個階段,不止是 Service Mesh,還有更多 Mesh 產品形態出現,包括訊息 Mesh、快取 Mesh、DB Mesh 等。在這個階段,將會幫助企業更輕鬆地自主掌控異構執行時基礎設施;

第二個階段,在相容異構執行時基礎設施之上,嘗試定義社群或者事實的 API 標準,這個標準能讓企業擁有統一的程式設計介面。當企業開發完一個應用,底層的基礎設施發生任何變更,對於應用來說都是無感的。在這個階段的願景是讓應用 build once,run anywhere,一旦應用開發完成,就不再需要做任何變更,可以隨時跑在全國任何一個機房的資料中心節點,並且這個節點向上承載的執行時基礎設施是可變的;

第三個階段,如果說前兩個階段是把基礎服務範疇端到端下沉到基礎設施,在第三個階段更多要看到的是橫向能力的下沉,包括資源呼叫和系統呼叫。在這個階段,將會嘗試儘可能把業務應用裡更多和業務本身不相關的邏輯下沉到 Sidecar,徹底解放業務開發,讓業務開發者關注能力程式設計,而不需要關注底層,迴歸業務本位,聚焦業務本身。

最後,螞蟻集團一直致力於技術架構前瞻性佈局和持續創新,會繼續在異構基礎設施上打磨端到端的可信原生能力。

未來,螞蟻希望將 SOFAStack 打造成各行各業數字化轉型的跨雲作業系統。

本週推薦閱讀

網商雙十一基於 ServiceMesh 技術的業務鏈路隔離技術及實踐

雲原生執行時的下一個五年

積跬步至千里:QUIC 協議在螞蟻集團落地之綜述

Service Mesh 在中國工商銀行的探索與實踐

img

相關文章