欧美色图 亚洲|野外口爆视频国产|久久精品视频观看|97精品人人抽插

「芒果TV」葉靜濤:芒果TV的Spinnaker多云持續(xù)交付實踐

亞太內(nèi)容分發(fā)大會暨CDN峰會一直致力于推動CDN產(chǎn)業(yè)深度融合發(fā)展和市場普及,現(xiàn)已成為亞太地區(qū)影響力最大的內(nèi)容分發(fā)網(wǎng)絡(luò)盛會。十年來,在以阿里云、網(wǎng)宿科技、騰訊云等亞太CDN產(chǎn)業(yè)聯(lián)盟成員孜孜不輟的努力下,CDN產(chǎn)業(yè)已經(jīng)成為基礎(chǔ)性設(shè)施網(wǎng)絡(luò),以堅定的基石之姿,支撐起中國成為世界最大的互聯(lián)網(wǎng)市場。

隨著全球數(shù)字化、“一帶一路”戰(zhàn)略的推進,亞太內(nèi)容分大會暨CDN峰會的影響力正在逐漸向全球延伸,同時也將中國智造CDN及產(chǎn)業(yè)鏈推廣向全球每一個角落。

「芒果TV」葉靜濤:芒果TV的Spinnaker多云持續(xù)交付實踐-DVBCN

在6月10日上午舉辦的【內(nèi)容出海論壇】上,芒果TV運維研發(fā)負責人 葉靜濤帶來了以《芒果TV的Spinnaker多云持續(xù)交付實踐》為題的主題演講。

「芒果TV」葉靜濤:芒果TV的Spinnaker多云持續(xù)交付實踐-DVBCN

演講開始,葉靜濤分享了一個小故事,即2021年2月22日午餐時間,芒果TV監(jiān)控系統(tǒng)全面報警,有個公有云中上百臺實例被刪除!得益于一直堅守的多云機制,流量被自動轉(zhuǎn)發(fā)到其他云,故障云也只用了20分鐘完成所有實例的重建,此次故障對用戶的真正影響率不足2%。其中利用了31個伸縮組、123臺實例、8-20分鐘重建、1.93%影響率?!拔覀儓猿侄嘣频墓适拢駝t就是事故?!比~靜濤說。

言歸正傳,葉靜濤的演講總結(jié)于三個字:看、想、練??炊嘣频膬?yōu)勢,想思考和期望,練Spinnaker實踐。

首先從多云的優(yōu)勢講起包括以下幾點:一是跨云級別的高可用,是配合客戶端重試實現(xiàn)多云容災(zāi)機制。這一優(yōu)勢體現(xiàn)在當一個云不可用時,可以通過另外一家云提供服務(wù);二是避免被廠商鎖定,遷移成本幾乎為零,選擇更主動;三是避免資源不足,大型活動可在多家云平臺申請資源;四是更多區(qū)域選擇,可選區(qū)域為所有云并集。

「芒果TV」葉靜濤:芒果TV的Spinnaker多云持續(xù)交付實踐-DVBCN

其次是思考和期望,包括三方面的內(nèi)容。一是在引入多云前后的思考。引入多云前面臨的問題包括配置漂移,即每次操作引發(fā)的增量都會變成下次操作的變量,最終演化為千機千面。其次是發(fā)布的穩(wěn)定性,依賴測試用例的質(zhì)量和覆蓋率,版本變更又會造成測試用例的不可信。最后是標準與靈活,從管理角度希望做到標準化,從業(yè)務(wù)角度希望做到自定義;引入多云之后又有新的痛點:一是云分散,相同業(yè)務(wù)不同云廠商的資源要登陸到多個控制臺去操作。二是部署成本上升,每增加一家云,發(fā)布工作量將增加一倍。三是學(xué)習成本上升,不同云廠商對云的理解和設(shè)計都略有不同,每家云平臺都需要掌握。

「芒果TV」葉靜濤:芒果TV的Spinnaker多云持續(xù)交付實踐-DVBCN

葉靜濤表示,有了以上6個痛點之后,期望具備的能力包括以下九個方面:一是對云透明化、二是支持主流公有云、三是不可變基礎(chǔ)設(shè)施、四是上手簡單、五是自動流轉(zhuǎn)、六是對接主流運維工具、七是智能判定灰度結(jié)果、八是豐富的發(fā)布策略、九是優(yōu)秀的拓展能力。

奔著這一目標,芒果TV調(diào)研過很多工具,最終選擇了基于spinnaker的多云持續(xù)交付平臺。隨后引出了新問題:怎么去實踐的?

葉靜濤介紹,Spinnaker首先是多云的機制,多云的機制要體現(xiàn)在兩個方面:一是云的接入,作為平臺怎么把云接進去;二是統(tǒng)一視角,用業(yè)務(wù)視角看資源,而不是云平臺看資源。

「芒果TV」葉靜濤:芒果TV的Spinnaker多云持續(xù)交付實踐-DVBCN

關(guān)于云平臺接入這一塊只是歷程,由于是國外的產(chǎn)品,對亞馬遜云、微軟云、谷歌云支持的很好。葉靜濤說:“2018年拿到它的時候國內(nèi)其他家還沒有,我們聯(lián)系了阿里、騰訊,由這兩家上生產(chǎn),之后又接入了華為云,芒果TV自己也把Istio相關(guān)開發(fā)出來完善Spinnaker的容器云部分,在合作過程中對阿里、騰訊也有了一些反哺。例如阿里云彈性伸縮組期望值的設(shè)定、騰訊云把帶寬限定回歸到LB上,整個過程我們是互相學(xué)習,互相進步的?!?/p>

而在統(tǒng)一視角這方面,Spinnaker是怎樣通過統(tǒng)一的視角看到每個云上資源的?葉靜濤介紹道,Spinnaker要求資源按照${App}-${Stack}-${Detail}三段進行命名,所有云平臺中具有同樣${app}前綴的資源劃分到一起縱向管理。“這個過程當中看到VOD業(yè)務(wù)中有阿里云、騰訊云兩組數(shù)據(jù),其中阿里云是在做紅黑全量的迭代,紅色代表負載均衡看上去不健康,綠色是給流量,正好是做紅黑,上一個版本機器不會釋放,一旦有問題直接從LB層流量過去,就可以很快回滾。”

再來看不可變基礎(chǔ)設(shè)施,葉靜濤認為這不是新的概念,從容器引進時,這個概念已經(jīng)帶進來了。Spinnaker充分展示了云資源按需使用的魅力,以鏡像為交付物將發(fā)布縮減為創(chuàng)建和銷毀兩個動作。而Immutable方式的核心是鏡像,研發(fā)的交付物是軟件包,基于軟件版本自動更新鏡像成為新的挑戰(zhàn)。葉靜濤介紹道:“芒果TV分成三種鏡像:公共基礎(chǔ)鏡像、業(yè)務(wù)基礎(chǔ)鏡像、交付鏡像。首先,公共基礎(chǔ)鏡像是在官方的鏡像基礎(chǔ)上,芒果TV統(tǒng)一對鏡像的要求,比如操作系統(tǒng)版本、監(jiān)控組建等方面是不允許改的。其次是業(yè)務(wù)基礎(chǔ)鏡像,根據(jù)業(yè)務(wù)特點和語言環(huán)境不同準備不同的語言環(huán)境,業(yè)務(wù)探點不同,可以根據(jù)自己的端口號去配置。最后是整個交付包的制造是基于業(yè)務(wù)基礎(chǔ)鏡像開一臺機器,我們需要拉去最新軟件包的版本打進去,這也是準交付物,因為沒有經(jīng)過測試,我們有自動流水線發(fā)布到預(yù)發(fā)布環(huán)境上去,經(jīng)過各種安全代碼掃描才是交付鏡像。”

「芒果TV」葉靜濤:芒果TV的Spinnaker多云持續(xù)交付實踐-DVBCN 「芒果TV」葉靜濤:芒果TV的Spinnaker多云持續(xù)交付實踐-DVBCN

芒果TV在Spinnaker支持的部署策略,包括新增、替換、紅黑、滾動等四點。新增是只增量部署新版本服務(wù),用于灰度發(fā)布和金絲雀分析。替換是新版本服務(wù)部署完畢后清空所有老服務(wù),用于預(yù)發(fā)布環(huán)境。紅黑是新版本服務(wù)部署完畢后老服務(wù)保留,但不再接收流量。用于全量發(fā)布。 滾動是新版本與老服務(wù)按照N+1原則滾動發(fā)布,用于容器云。

有了以上的鏡像,芒果TV的三條流水線也逐漸形成。這三條流水線包括預(yù)發(fā)布流水線、灰度發(fā)布流水線和全量發(fā)布流水線。以上流水線除灰度發(fā)布需人工確認版本外皆自動觸發(fā)和執(zhí)行。

那么金絲雀分析是怎樣能智能的判斷一個產(chǎn)品迭代之后新的版本是否適用?葉靜濤介紹:“左邊是生產(chǎn)的負載均衡和生產(chǎn)的集群,右邊是預(yù)發(fā)布負載均衡和預(yù)發(fā)布集群,我們分別基于這倆集群新創(chuàng)建基線限集群和金絲雀集群兩個彈性,直接接入生產(chǎn)分擔相同的流量,此時通過監(jiān)控系統(tǒng)去采集指標,包括CPU、內(nèi)存、網(wǎng)絡(luò)、業(yè)務(wù)日志等各種指標,然后做金絲雀分析。這是其中一個指標采集下來的結(jié)果,它會產(chǎn)生金絲雀分析報告并進行評分。我們可以無限的擴指標,同時可以給它一個權(quán)重,我的總分是100分,不同業(yè)務(wù)關(guān)注的指標不同,它的權(quán)重就不同。總分超過一個閾值我們認為是安全的,低于一個閾值發(fā)布是需要暫停的,中間分數(shù)段需要人工根據(jù)金絲雀報告進行判斷。”

「芒果TV」葉靜濤:芒果TV的Spinnaker多云持續(xù)交付實踐-DVBCN

金絲雀分析帶來的收益是什么?一是完全基于生產(chǎn)環(huán)境做的,它是真實可靠的。二是與業(yè)務(wù)和應(yīng)用的版本都是解耦,不依賴測試用例,分析維度可自由擴展。三是Spinnaker的權(quán)重評分機制可以做到自動化。四是隱性收獲,分析維度的豐富可以反向推動監(jiān)控體系的完善。從而,Spinnaker在芒果TV里貫穿CICD、研發(fā)測試運維,包括在核心的位置。

再回頭看六個痛點是否有解,答案肯定是有。葉靜濤講解道:“通過統(tǒng)一的視角、統(tǒng)一的UI,云資源分散便得到了解決;部署成本上升,只要能做成自動化,就能解決多個云并行的問題;學(xué)習成本的上升,因為Spinnaker是統(tǒng)一的操作平臺,對現(xiàn)有的運營工具是兼容的,不需要學(xué)新的東西,做Spinnaker這個人肯定要去學(xué)集成進來,但是用Spinnaker的人不需要學(xué);配置漂移也得到了解決,基于鏡像發(fā)布的體系,沒有進去改的機會,我只有創(chuàng)建和銷毀;發(fā)布的穩(wěn)定性方面,穩(wěn)定性就是對版本質(zhì)量把控,首先是三條流水線,先預(yù)發(fā)布,流水線上已經(jīng)是緩慢發(fā)布的過程,中間有金絲雀基于真實流量的判定,因此我認為它是沒有問題的;最后是靈活與標準,統(tǒng)一鏡像的一部分,同時開放給對方一部分,三條流水線可以基于自己業(yè)務(wù)不同的訴求去編輯?!?/p>

「芒果TV」葉靜濤:芒果TV的Spinnaker多云持續(xù)交付實踐-DVBCN

演講最后葉靜濤表示,從 2018 年到今天,芒果TV的spinnaker道路充滿了實驗、學(xué)習、實踐與轉(zhuǎn)變,發(fā)版任務(wù)增加了十倍(現(xiàn)在每周發(fā)版次數(shù)200+,流水線執(zhí)行次數(shù)600+),但運維人員并沒有增加,并且實現(xiàn)了部分研發(fā)自治。后續(xù)將繼續(xù)豐富金絲雀分析和混沌工程用例,最終達到“誰構(gòu)建,誰運維”。

相關(guān)文章
芒果TV調(diào)整會員同時使用設(shè)備數(shù):新會員降至1臺
芒果TV調(diào)整會員同時使用設(shè)備數(shù):新會員…
芒果超媒前三季度凈利為14.44億元,實現(xiàn)營收102.77億元
芒果超媒前三季度凈利為14.44億元,實現(xiàn)…
湖南廣電局局長賀輝:年底前將全面完成整合任務(wù),推進電視機機頂盒一體化
湖南廣電局局長賀輝:年底前將全面完成…
龔政文:湖南衛(wèi)視與芒果TV雙平臺聯(lián)采聯(lián)購降低衛(wèi)視投入,《歌手2024》帶來8.1%電視新用戶
龔政文:湖南衛(wèi)視與芒果TV雙平臺聯(lián)采聯(lián)…
芒果超媒:芒果TV會員業(yè)務(wù)收入占互聯(lián)網(wǎng)視頻業(yè)務(wù)收入比重超50%
芒果超媒:芒果TV會員業(yè)務(wù)收入占互聯(lián)網(wǎng)…
長短視頻平臺又一案例!芒果TV與快手宣布達成全面深度合作
長短視頻平臺又一案例!芒果TV與快手宣…
我還沒有學(xué)會寫個人說明!