云原生的應(yīng)用創(chuàng)新經(jīng)驗,正在被行業(yè)上下游不斷提起和討論,其實(shí)踐也正從行業(yè)先鋒、先進(jìn)應(yīng)用企業(yè)開始走向千行百業(yè)。
文|徐鑫
編|任曉漁
AI孫燕姿在B站火了。
最近幾年,B站時常有新的內(nèi)容形態(tài)和話題破圈�?缒晖頃�、數(shù)字人、虛擬直播、大型賽事,各種新內(nèi)容消費(fèi)場景帶來了用戶規(guī)模的快速擴(kuò)張。數(shù)據(jù)顯示,B站月均活躍用戶數(shù)從2019年Q4的1.16億增長到了2022年Q4的3.26億。伴隨著用戶和內(nèi)容破圈,B站的平臺系統(tǒng)復(fù)雜性也快速增加。
這對云上的運(yùn)維、穩(wěn)定性及成本管理都提出了新的要求。B站在云上系統(tǒng)穩(wěn)定和高可用系統(tǒng)的治理有不少實(shí)踐。以云上的系統(tǒng)穩(wěn)定為例,B站已經(jīng)建成了完備的SRE(站點(diǎn)可靠性工程)質(zhì)量運(yùn)營體系,SRE質(zhì)量運(yùn)營團(tuán)隊在云上掃雷,積累了保障B站安全穩(wěn)定運(yùn)營的豐富經(jīng)驗。
日前,在全球云原生交流平臺“創(chuàng)原會”組織的走進(jìn)B站的活動上,這些經(jīng)驗也分享給了來自不同行業(yè)、關(guān)注云原生應(yīng)用的與會者們。
新一波技術(shù)浪潮來勢洶涌,內(nèi)容平臺云上業(yè)務(wù)創(chuàng)新迎來了新機(jī)遇,也給確定性運(yùn)維提供了新的可能性。前端的業(yè)務(wù)洶涌創(chuàng)新背后,都離不開先進(jìn)的平臺底層架構(gòu)的支撐。早已完成云原生改造的企業(yè)們已經(jīng)享受到了紅利,在降本增效的大背景下,這些企業(yè)已經(jīng)開始探討更深一層的成本和性能平衡問題。
01
誰在為平臺保駕護(hù)航
B站技術(shù)團(tuán)隊沒有浪費(fèi)任何一次風(fēng)險處理經(jīng)驗。
2021年發(fā)生過一次故障處理事件,處理過程被他們視作一次經(jīng)典的案例,現(xiàn)在已經(jīng)被盤出了包漿。不僅在內(nèi)部學(xué)習(xí),B站技術(shù)團(tuán)隊將它整理制作成了復(fù)盤文章和視頻,講述從發(fā)現(xiàn)到協(xié)同SRE質(zhì)量運(yùn)營團(tuán)隊及相關(guān)技術(shù)人員解決問題的過程。如同打怪一般,挖掘平臺穩(wěn)定運(yùn)營的風(fēng)險點(diǎn)并排除風(fēng)險,引了數(shù)百萬人閱讀和圍觀。
這一出圈的過程,某種程度是當(dāng)下互聯(lián)網(wǎng)平臺普遍面臨系統(tǒng)穩(wěn)定性考驗的縮影。
隨著互聯(lián)網(wǎng)逐漸滲透到更廣泛人群,國內(nèi)主要平臺用戶體量已達(dá)到了驚人的數(shù)字。軟件系統(tǒng)越來越復(fù)雜,業(yè)務(wù)變更速度快,往往更容易導(dǎo)致質(zhì)量問題。一旦出現(xiàn)故障,損失也頗為嚴(yán)重。有機(jī)構(gòu)統(tǒng)計,一小時的宕機(jī)可給IT企業(yè)帶來損失超過100萬元。
實(shí)際上各大平臺做了不少努力,來提升系統(tǒng)穩(wěn)定性。例如,大企業(yè)內(nèi)部都建了非常多的平臺,包括工程平臺、壓測平臺、容量預(yù)估平臺、變更管理平臺等來同步信息。通常,企業(yè)內(nèi)也有非常多人力來保證系統(tǒng)穩(wěn)定,比如多數(shù)公司里都有測試、運(yùn)維和研發(fā)等多個團(tuán)隊來配合作業(yè)。但這些平臺普遍存在信息孤島問題,而故障和穩(wěn)定性是有時間跨度的周期問題。許多企業(yè)缺乏從整個質(zhì)量周期層面來管理和應(yīng)對風(fēng)險及故障。
在創(chuàng)原會組織的技術(shù)分享會上,B站SRE體系負(fù)責(zé)人劉昊向與會人士介紹,B站十分關(guān)注云上的應(yīng)用程序可靠、可用和安全,專門設(shè)立了SRE質(zhì)量管理團(tuán)隊來監(jiān)控和管理故障的事前、事中和事后的流程。
劉昊認(rèn)為,要從故障預(yù)防、故障發(fā)現(xiàn)、故障定位、故障恢復(fù)、故障改進(jìn)的全生命周期來關(guān)注和運(yùn)營故障,企業(yè)也需要通過平臺化能力去提升故障發(fā)現(xiàn)效率、降低故障恢復(fù)的時長,最終能夠深挖故障價值,并確保改進(jìn)措施能夠有效落實(shí)。
B站做了非常多細(xì)節(jié)工作來確保這套理念的落地。例如,針對故障事前、事中、事后,做了事件運(yùn)營中心。這個中心收斂了上游的各種報警系統(tǒng)、客訴系統(tǒng)、輿情系統(tǒng)、變更系統(tǒng),通過人工上報和自動上報結(jié)合的方式監(jiān)測各類系統(tǒng)內(nèi)的報警信息。
一旦有事件發(fā)生,首先接入到風(fēng)險預(yù)警體系,最后才判斷是不是故障。風(fēng)險預(yù)警相當(dāng)于掃雷,基于統(tǒng)一的事件識別來挖掘各類風(fēng)險,要把潛在風(fēng)險挖出來,管控風(fēng)險,提升效率,還要讓風(fēng)險的一些指標(biāo)可度量。
有些沒兜住的預(yù)警會產(chǎn)生故障。其中非常重要的工作是,讓需要知道故障信息的人士得到該知道的信息。B站有兩套體系可以完成組織、業(yè)務(wù)和人的匹配,既可以通過組織架構(gòu)找到與業(yè)務(wù)相關(guān)的人,也能通過內(nèi)部的投訴系統(tǒng)把職責(zé)、業(yè)務(wù)、團(tuán)隊關(guān)聯(lián)在一起。匹配完成后,質(zhì)量運(yùn)營體系還會再做一些冗余事件聚類降噪,使各類故障信息就能通告到各個關(guān)注方。
為了讓已經(jīng)發(fā)生過的故障產(chǎn)生價值,他們還設(shè)置了非常詳細(xì)的,包含了定性問題和定量問題,來提升復(fù)盤文檔的價值。
那份出圈的2021年故障復(fù)盤,B站的技術(shù)團(tuán)隊現(xiàn)在還在反芻。劉昊向與會的創(chuàng)原會成員們解釋,這一過程有助于企業(yè)內(nèi)形成對故障處理的肌肉記憶,讓新進(jìn)入團(tuán)隊的新人能夠?qū)W習(xí)企業(yè)技術(shù)架構(gòu)模式及協(xié)同方式,從而規(guī)避類似的故障。“外面熱搜都炸了,新來的研發(fā)還在慢吞吞看代碼的BUG,團(tuán)隊已經(jīng)形成了SOP(標(biāo)準(zhǔn)作業(yè)流程),但他可能完全想不到去看SOP。”他的比喻引發(fā)現(xiàn)場人士會心一笑。
與會者們也好奇,SRE質(zhì)量運(yùn)營團(tuán)隊在組織內(nèi)的角色定位和價值如何度量。一位同樣在內(nèi)容平臺的技術(shù)人員發(fā)出靈魂拷問,“SRE是否必須為公司所有業(yè)務(wù)的故障背鍋,有SRE,故障次數(shù)一定要下降嗎?”
劉昊對此毫不猶疑,在他看來,如果正確認(rèn)知了SRE的角色,就很難成背鍋俠。“SRE要背的指標(biāo)是,如果系統(tǒng)內(nèi)實(shí)際有20個風(fēng)險點(diǎn),SRE只挖出了2個風(fēng)險點(diǎn),剩下的18個沒能和業(yè)務(wù)方一起挖出來。這就是SRE的錯。”另外,他認(rèn)為,如果質(zhì)量運(yùn)營體系實(shí)現(xiàn)了全面覆蓋,但故障增多,SRE要能提供數(shù)據(jù)分析出薄弱環(huán)節(jié),讓技術(shù)團(tuán)隊知道系統(tǒng)的薄弱點(diǎn),才能投入技術(shù)和人力資源去改善。
快速的業(yè)務(wù)變化和系統(tǒng)變動下,SRE體系正扮演B站站點(diǎn)可靠性工程層面的白帽子角色,排除故障,保障云上系統(tǒng)安全穩(wěn)定。
02
業(yè)務(wù)創(chuàng)新紅利來自云原生改造
B站業(yè)務(wù)蓬勃創(chuàng)新的出圈過程中,除了掃雷的站點(diǎn)可靠性工程白帽子們存在,還有非常多幕后角色在細(xì)分技術(shù)戰(zhàn)場發(fā)揮作用。
AIGC爆火,加速了各大內(nèi)容平臺的創(chuàng)新速度。B站也有不少AIGC相關(guān)產(chǎn)品來豐富內(nèi)容生態(tài)。例如,去年3月開始,B站正式推出了虛擬直播專區(qū),主播可以自定義長什么樣,自由選擇身材和衣服配套,定制自己的虛擬角色,虛擬玩法。
高校的研究也給內(nèi)容平臺的AIGC熱潮加了一把火。最近開源社區(qū)有人使用浙江大學(xué)教授趙洲團(tuán)隊推出的AIGC相關(guān)的生成式語音模型DiffSinger,這款產(chǎn)品很快在B站獲百萬瀏覽量。趙洲介紹,此前他們的產(chǎn)品AudioGPT沒有辦法跟用戶進(jìn)行交互,有了ChatGPT之后他們調(diào)用了它的框架,幫助自己的產(chǎn)品理解用戶的意圖。
小紅書音視頻架構(gòu)的負(fù)責(zé)人陳靖感受到了這股趨勢。他判斷,2022年開始內(nèi)容生產(chǎn)明顯進(jìn)入了智能時代。在創(chuàng)原會的分享上,陳靖坦言,過去曾感覺AIGC內(nèi)容并不那么靠譜,但隨著大模型實(shí)現(xiàn)智能涌現(xiàn),他認(rèn)為,AIGC將給創(chuàng)作者提供啟發(fā),賦能創(chuàng)作鏈路,內(nèi)容創(chuàng)作領(lǐng)域也會出現(xiàn)智能化浪潮。
除了業(yè)務(wù)本身,大模型給智能運(yùn)維也帶來一些新的可能性,但這還在探索之中。創(chuàng)原會副理事長、華為云Marketing部長董理斌與華為云的一些工程師交流時發(fā)現(xiàn),在售后維護(hù)場景下,工程師們已經(jīng)利用AI開發(fā)了一些類似知識問答的系統(tǒng),助力可靠性運(yùn)維。這類系統(tǒng)可以在網(wǎng)絡(luò)出現(xiàn)故障后,根據(jù)過去的經(jīng)驗給出處理建議。當(dāng)下工程師們也在思考,基于大模型能否利用網(wǎng)絡(luò)上各種各樣的歷史數(shù)據(jù),能否加速模型的積累,推動知識類產(chǎn)品從過去的知識問答發(fā)展到自動處理和操作。
劉昊同樣認(rèn)為智能運(yùn)維是未來的發(fā)展方向,他也判斷仍需時間才能落地,問題出在智能運(yùn)維場景下,喂給模型的高水平的SOP語料比較缺乏。不過在單點(diǎn)運(yùn)維場景,AI技術(shù)已在B站實(shí)際場景中發(fā)揮作用,例如,底層資源維護(hù)層面,大數(shù)據(jù)場景下的磁盤故障預(yù)測,可通過AI手段實(shí)現(xiàn)。
無論是面向用戶的業(yè)務(wù)場景創(chuàng)新,還是企業(yè)內(nèi)的各類新興服務(wù)嘗試,離不開底層技術(shù)的支撐,其中既包括新的云上的技術(shù)方案使用,也包括底層架構(gòu)的云原生化改造。
以B站的虛擬直播為例,這個新場景出現(xiàn)后,不少開通虛擬直播的主播已經(jīng)順利完成了吸粉和商業(yè)化進(jìn)程。實(shí)際上,用戶能體驗到虛擬直播絲滑、低延時和高質(zhì)量的內(nèi)容體驗,與B站此前在現(xiàn)象級直播事件中打造出的邊緣分布式方案分不開。
通常情況下,直播需要保證過程里的穩(wěn)定性、降低時延,同時有伸縮性且成本較低。比如B站的英雄聯(lián)盟S12全球總決賽直播,為期35天,91場賽事,直播間實(shí)時人氣突破3.1億。流量洪峰的考驗下,B站聯(lián)合華為云共同建設(shè)了B站的分布式直播方案,消除了之前統(tǒng)一轉(zhuǎn)碼源站的單點(diǎn)故障,增強(qiáng)了直播過程中的穩(wěn)定性、安全性,同時依托中心云平臺上的海量彈性資源池,按需調(diào)度,更好地提升了用戶的互動體驗。
除了極限場景里磨練出來的方案,B站當(dāng)下的業(yè)務(wù)創(chuàng)新還離不開一個底層角色——經(jīng)過云原生化改造的平臺架構(gòu)。
B站在2017年下半年開始了以Kubernetes引領(lǐng)的底層架構(gòu)的云原生改造。劉昊告訴數(shù)智前線,在C端消費(fèi)者感知層面,當(dāng)時傳統(tǒng)架構(gòu)模式的劣勢尚不明顯,但是技術(shù)團(tuán)隊已經(jīng)發(fā)現(xiàn)了一些典型問題。例如,在緩存上容器時,用其他的方案做緩存服務(wù)的PaaS化。配置熱更新后,容器沒有辦法原地生效。但如果重啟又會影響業(yè)務(wù)進(jìn)行,而在Kubernetes架構(gòu)下能很方便完成更新,實(shí)現(xiàn)容器快速擴(kuò)容。同時,內(nèi)部平臺的接口豐富度和底層操作系統(tǒng)層的適配度,經(jīng)過云原生化改造后也大大提升。
2019年開始,B站就嘗到了紅利。隨著用戶群體開始破圈,內(nèi)部應(yīng)用數(shù)量也飆升。劉昊記得,內(nèi)部應(yīng)用一開始只有1000個,從2019年下半年快速增長,到當(dāng)下已經(jīng)有2萬多個應(yīng)用,幾年內(nèi)十倍增長。服務(wù)增長通常會帶來軟件開發(fā)的管理成本上升,保障團(tuán)隊的管理成本也飆升。
但經(jīng)過云原生化的改造后,開源社區(qū)有非常多的現(xiàn)成工具,B站可以直接使用現(xiàn)有的技術(shù)成果,避免了團(tuán)隊規(guī)模的指數(shù)級增長。先進(jìn)的底層架構(gòu)還方便他們把外部資源如華為云作為資源的備用池,一旦出現(xiàn)大型活動容量突增場景,可以快速接入外部資源,保障了應(yīng)用的穩(wěn)定可用。
03
深度用云時代的成本優(yōu)化
完成了云化改造后,相關(guān)技術(shù)團(tuán)隊開始更深一步重視“協(xié)同”、“優(yōu)化”等,其中云上的成本成本管理問題日益凸顯。
小紅書音視頻架構(gòu)部門負(fù)責(zé)人陳靖觀察到,國內(nèi)主流視頻處理平臺架構(gòu)的演進(jìn)經(jīng)歷了從單體服務(wù)自建機(jī)房,逐步到計算存儲CDN云化,之后通過容器技術(shù),實(shí)現(xiàn)了微服務(wù)架構(gòu),今天已經(jīng)基本向Serverless云原生化演進(jìn)。
這些變化是伴隨著內(nèi)容平臺的業(yè)務(wù)挑戰(zhàn)而來。過去十年里,內(nèi)容發(fā)布數(shù)量飆升,用戶對音視頻的質(zhì)量要求在提高,為了更好提供服務(wù),平臺也需要同步加速在內(nèi)容平臺的處理速度,并且要以相對低的成本完成。
“由于很早開始云服務(wù),小紅書得以將主要精力投入到業(yè)務(wù)研發(fā),快速迭代升級,從業(yè)務(wù)速度、媒體質(zhì)量和整體成本三個方面實(shí)現(xiàn)了平衡。”陳靖介紹。
陳靖團(tuán)隊內(nèi)部關(guān)注到了一個案例。亞馬遜的Prime Video是一個識別用戶查看視頻質(zhì)量問題的應(yīng)用,最初亞馬遜的技術(shù)團(tuán)隊用了很多分布式組件來實(shí)現(xiàn)。后來這個服務(wù)的性能比較差,經(jīng)過排查,他們發(fā)現(xiàn)Step Functions居然是瓶頸的所在。
亞馬遜的技術(shù)人員很疑惑,很好的技術(shù)為什么在這個場景里會有瓶頸?他們把這個服務(wù)整個遷到單體,降低了90%的成本,整體伸縮性反而有提高。這使行業(yè)內(nèi)開始討論微服務(wù)的應(yīng)用場景問題。
微服務(wù)能很快把應(yīng)用架構(gòu)搭起來,幾周甚至幾天驗證出對客戶的價值,這是單體的架構(gòu)很難實(shí)現(xiàn)的。而經(jīng)過微服務(wù)驗證價值后,如果基于企業(yè)內(nèi)節(jié)省資源,降低成本的考量,在特定業(yè)務(wù)場景里,就可以采用單體方案。
陳靖介紹,目前在小紅書的業(yè)務(wù)場景里,技術(shù)團(tuán)隊會優(yōu)先考慮使用微服務(wù),但他們也發(fā)現(xiàn),在一些公司里可能會存在這樣的情況,技術(shù)團(tuán)隊希望通過微服務(wù)達(dá)到架構(gòu)清晰、方便理解的效果,但最后卻出現(xiàn)微服務(wù)開發(fā)越來越多,越迭代越復(fù)雜的情況。
如何避免過度使用微服務(wù)呢?以Prime Video為例,它只是一個大的業(yè)務(wù)架構(gòu)里的監(jiān)控用戶視頻質(zhì)量的小功能,陳靖認(rèn)為這并不是一個值得分拆的組件,用單體化的方式去實(shí)現(xiàn)難度并不大。
華為云容器服務(wù)首席架構(gòu)師張琦從云上資源利用的角度來提供了另一種看法。張琦在自己接觸的大量案例中發(fā)現(xiàn),在經(jīng)過容器化改造之后,業(yè)務(wù)拆分成很小的微服務(wù),業(yè)務(wù)團(tuán)隊需要為每一個微服務(wù)申請資源。過程中,業(yè)務(wù)團(tuán)隊通常會給微服務(wù)運(yùn)行需要的資源量留出余量。當(dāng)每一個微服務(wù)都有它的buffer,加起來以后,整個的資源占用比單體的時候要多很多。從這個例子中可以看出云上資源管理和成本控制的必要性。一份調(diào)查顯示,全球范圍內(nèi)超過90%的受訪企業(yè)已經(jīng)開始FinOps實(shí)踐。
張琦介紹,在業(yè)界談?wù)摰幂^多的FinOps解決方案中,都會提供了一個成本洞察和成本優(yōu)化的大盤,可以給財務(wù)團(tuán)隊、運(yùn)營支撐團(tuán)隊、IT團(tuán)隊等提供相應(yīng)的決策參考。具體的方案上,會用各類技術(shù)手段,把此前公司內(nèi)部業(yè)務(wù)的煙囪式的資源池作優(yōu)化,統(tǒng)一調(diào)配,融合調(diào)度、混合部署,解決資源利用率的問題,華為云也基于云原生基礎(chǔ)設(shè)施構(gòu)建了相關(guān)的技術(shù)降本的解決方案,比如通過微服務(wù)和批量計算任務(wù)分時使用資源消減集群和節(jié)點(diǎn)資源碎片;提供隊列、組、作業(yè)優(yōu)先級、公平調(diào)度、資源預(yù)留等多種抽象,統(tǒng)一滿足微服務(wù)、大數(shù)據(jù)、AI多業(yè)務(wù)調(diào)度需求;并在CPU、內(nèi)存等多維度上為應(yīng)用提供高優(yōu)低優(yōu)的自動控制,使資源分時復(fù)用,提升資源利用率;同時通過打通多集群資源池,為應(yīng)用提供統(tǒng)一的資源視圖,實(shí)現(xiàn)部署運(yùn)行最優(yōu)、服務(wù)流量治理最優(yōu)。
他用一個客戶的案例舉例,該客戶的應(yīng)用部署在自己的集群里,大數(shù)據(jù)任務(wù)和其他業(yè)務(wù)服務(wù)混在一起,此前使用時會出現(xiàn)干擾。如果沒有任何控制,會嚴(yán)重影響到業(yè)務(wù)運(yùn)行的質(zhì)量。通過一系列技術(shù)手段干預(yù),整體提升了資源利用率,最后資源利用率提升到了40%多。
Gartner預(yù)測,到2025年,云原生平臺將在超過95%的新數(shù)字計劃中作為基礎(chǔ),而此前2021年的數(shù)據(jù)只有不到40%。隨著廣大的企業(yè)完成云原生的改造,企業(yè)的關(guān)注重心也在改變。
八年前,云原生技術(shù)興起之際,產(chǎn)業(yè)上下共同的合力推動了開源生態(tài)的標(biāo)準(zhǔn)共建、技術(shù)開放、成果共享。后云原生時代,云原生企業(yè)的應(yīng)用實(shí)踐,云廠商的創(chuàng)新解決方案和開源技術(shù)社區(qū)的開放共創(chuàng),正在推動技術(shù)生態(tài)的進(jìn)一步完善。創(chuàng)原會這樣的開放技術(shù)交流平臺,匯集行業(yè)人士探討新的技術(shù)應(yīng)用和落地實(shí)踐,正在推動云原生的最佳實(shí)踐從先鋒和先進(jìn)應(yīng)用企業(yè)走向千行百業(yè)。
榜單收錄、高管收錄、融資收錄、活動收錄可發(fā)送郵件至news#citmt.cn(把#換成@)。
海報生成中...