大勢所趨!生於雲,長於雲,開發者如何更好地吃透雲原生?

語言: CN / TW / HK

引言

 

這個時代的企業與開發者,生於雲,長於雲。傳統雲端計算產業走向成熟,新興技術百花齊放,雲原生開始從概念普及走向規模化落地,已成不可逆的大勢所趨。Gartner 預測到 2025 年,95% 數字化運維將通過雲原生平臺進行支撐。

 

一方面是網際網路企業對雲原生的領先探索,另一方面是傳統行業對雲原生價值認知的模糊、企業雲原生技術能力參差不齊、雲原生化 IT 架構改造面臨沉重歷史包袱等現實問題。如何讓企業、開發者真正地享受到雲原生的技術紅利?

 

第四屆 Techo TVP 開發者峰會以「雲以致用,智效合一」為主題,為行業、企業與開發者們帶來了前沿的雲原生技術趨勢與實踐總結。在這為期兩天的技術盛宴中,從如何理解、應用、落地雲原生不斷深入,帶著開發者們探索雲原生的最佳落地實踐。

 

Day1:雲原生落地現狀與未來趨勢分析

 

(一)雲原生在企業落地的現狀與趨勢

 

Linux 基金會亞太地區戰略總監、CNCF 中國區總監,騰訊雲 TVP Keith Chan帶來了題為《雲原生在企業落地的現狀與趨勢》的演講。

 

“雲原生無處不在”,是 Keith 老師在分享開始的階段給參會者的輸入。他表示,從 2015 年 CNCF 成立至今,雲原生這項技術已經走向了主流,不論是網際網路企業還是傳統企業,都在擁抱雲原生化的技術棧。究其原因,主要是在於雲原生技術的幾大優勢:

  • 更佳的資源效率使你可以用更少的伺服器運行同樣數量的服務;
  • 雲原生基礎設施提高了開發速度、服務速度的同時,降低了風險;
  • 雲原生允許多種雲 (包括公有云之間的轉換或在多個雲上執行) 以及混合雲 (在您的資料中心和公有云上切換任務);
  • 雲原生架構使得更快速地部署成為可能。

 

Keith 老師介紹道,雲原生技術加速應用開發、高度容錯、易於擴充套件、開放技術等優勢特點,讓企業沒有考慮的時間,現在就需要去主動擁抱雲原生。下圖中的企業,都是雲原生這項技術的終端使用者,不難看出雲原生技術被廣泛應用在各行各業中,成為新一代的基礎設施——未來就在這裡,它建立在雲原生之上。

 

CNCF 近幾年在雲原生技術方向持續加大投入,目前已有超過 120 多個專案,全球 contributor 人數也已經超過 13 萬人,有 186 個國家和地區一起在雲原生領域做貢獻。2021 年 CNCF 釋出了雲原生調查報告,資料顯示 Kubernetes 的使用率持續增長,達到了有史以來的最高水平,96% 的組織在使用或評估這項技術。Kubernetes 已被大型企業完全接受,甚至在新興技術中心也在發展,比如非洲,73% 的受訪者在生產中使用 Kubernetes。

雲原生技術走向底層的趨勢,本身就賦能了其他技術的發展。比如量子計算、5G、區塊鏈、AI 等等,而這其中,雲原生技術對邊緣計算的影響尤為突出。到 2025 年,Gartner 預測,四分之三的企業級資料將在邊緣建立和處理——這將會發生在傳統資料中心或雲之外,更接近終端使用者。

 

Keith 老師表示,在邊緣場景使用雲原生的好處有以下幾點:

  • 能夠完成更快的回滾: 出現故障或存在錯誤的邊緣部署可以迅速恢復到工作狀態;
  • 更細化、分層的容器支援: 我們不需要更新整個容器,雲原生微服務提供了一種極其靈活的方式來開發和交付細粒度的服務和控制;
  • 採取雲原生路徑也有經濟利益: 雲原生提供的頻寬減少和流線型資料可以降低成本,使其成為一種非常有效的企業工具。可以允許基於消費的邊緣計算定價方法,而無需大量的前期資本支出。

 

隨後,Keith 老師也重點介紹了 CNCF 旗下的典型開源專案 SuperEdge、Nocalhost 在各個行業的應用案例。他也表示,中國在雲原生技術的投入非常大,也有了很多具有代表性的國人驅動的開源專案。

 

分享最後,Keith 老師總結道,未來雲原生技術的發展將在雲原生安全、邊緣計算、服務網格、WebAssembly、混沌工程等方向有更多機會和發展。

 

(二)聚焦 FinOps,成本大師助力雲原生降本

 

騰訊雲容器技術專家孟凡傑帶來了題為《聚焦 FinOps,成本大師助力雲原生降本》的主題演講。

 

“在雲原生無處不在的現狀背後,隱藏著雲成本存在較大浪費的另一個問題”。孟凡傑老師在開場之初,給出了另一個輸入。根據 Flexera 釋出的《2021 雲端計算市場發展狀態報告》,資料顯示 30%-35% 的雲支出被浪費了,沒有產生任何價值。騰訊雲通過客戶資料分析和調研發現,客戶叢集中資源成本浪費非常嚴重,有眾多客戶提出關於提高資源利用率的訴求。

 

孟凡傑老師分析表示,容器技術的資源調配能力可以顯著降低成本,但云客戶的實際使用率卻相當低,這個現象的背後體現出了當前 Kubernetes 原生能力不足的現狀,在資源配置、彈性及業務穩定性方面,都給業務人員帶來了“不會配、不敢配、不能配”的挑戰,影響了容器的使用率。

 

企業在運營的過程中,創造利潤的核心需求來自於降本增效的兩條腿走路。孟凡傑老師提到,增效一直是技術迭代的主要方向,無論是雲原生型別的輕量化框架,還是研發效能、流程和工具等鏈路上的理念與輪子,都已經非常成熟。但在降本這個維度上,大部分企業做得還遠遠不夠。在向雲原生技術棧遷移的過程中,對資源效能的優化做得還不夠到位。來自 IDC 中國的預測報告指出,到 2023(中國 2024)年,80%(中國 50%)使用雲服務的組織將建立專門的 FinOps 功能用於自動化檢測和優化雲資源,以實現價值最大化。

 

孟凡傑老師介紹道,FinOps 定義了一系列雲財務管理規則和最佳實踐,通過助力工程和財務團隊、技術和業務團隊彼此合作,進行資料驅動的成本決策,使組織能夠獲得最大收益。騰訊在去年,作為國內首家頂級會員加入了 FinOps 基金會,深度認同 FinOps 的理論和實踐模型,內部也遵循 FinOps 的理論和指導。

 

 

近日,騰訊雲正式釋出了國內首個雲原生 FinOps開源專案—— Crane。Crane 嚴格以 FinOps 能力規劃作為指導,實現了從成本展示、浪費識別、成熟度評估、資源優化、費率優化為一體的一站式解決方案。

Crane :https://github.com/gocrane/crane

 

Crane 架構如下圖所示:

 

 

基於 Crane 開源底座,騰訊雲推出了雲原生資源優化產品成本大師,其理念與 Crane 一脈相承:

  • 讓產品更易用:成本視覺化、靈活的匯聚維度、成本優化;
  • 讓業務更省錢:資源配置更簡單,用智慧的方式推薦資源、彈性,保業務穩定性;
  • 讓平臺資源利用更高效:面向資源運營的高層 API,讓平臺側可以將節點分類並定義水位線;節點水位定義和水位控制;閒置資源再分配,提升資源利用率;業務分級控制,確保高優業務穩定性;
  • 讓負載更均衡:底層依賴 Prometheus 採集真實負載,代替 Request 值;引入節點歷史負載指標 (1h 內最大利用率,1天內最大利用率),感知業務波峰;
  • 讓顯示卡更強大:全新升級雲原生排程框架;重磅推出在離線混合部署;全面覆蓋主流作業系統。

 

分享最後,孟凡傑老師也介紹了成本挑戰下的騰訊雲原生戰略升級規劃,並引出了 FinOps 產業聯盟成立儀式的歷史性時刻。

 

 

(三)FinOps 產業聯盟成立儀式

 

FinOps 產業聯盟成立儀式上,中國產業網際網路發展聯盟常務副祕書長陳勝喜;騰訊雲容器產品中心總經理鄒輝;騰訊標準事物中心高階總監梅述家;騰訊開源聯盟主席、FinOps 基金會董事單致豪;Linux 基金會亞太區總監楊軒;招商局集團有限公司數字化中心技術專家、騰訊雲 TVP 山金孝;Thoughtworks 中國區生態合作總監李鑄等眾多行業大咖獻上了自己對 FinOps 產業聯盟的美好寄語,並期待 FinOps 產業聯盟在未來的雲財務發展規劃、數字化轉型過程中發揮更大作用與價值。

 

(四)降本增效利器:分散式雲+ FinOps,釋放雲原生技術紅利

 

騰訊雲容器產品中心總監於廣遊帶來了題為《降本增效利器:分散式雲+ FinOps,釋放雲原生技術紅利》的主題演講。

 

“雲原生領域有三個趨勢,環境更復雜,運維更困難,應用更多樣”。這是於廣遊老師在雲原生領域工作多年後觀察到的發展脈絡。在這樣的發展趨勢下,騰訊雲對旗下容器產品進行了全新升級,帶來了雲邊新演進、運維新正規化和效能新高度等重磅優化,且技術能力全棧開源。

 

在雲邊新演進層面,騰訊雲推出了 TKE Anywhere 系列能力,將 TKE 延伸到任意環境,幫助企業、使用者無時無地無差異的獲得騰訊雲原生能力。不論是 IDC 的上雲,還是雲邊一體、邊緣自洽,還是混合多雲的場景,騰訊雲原生分散式雲都可以實現全覆蓋,真正地解決了雲原生領域環境複雜的難題。

 

 

在運維新正規化層面,騰訊雲自研了 Serverless 容器(EKS)底層技術的 heeler,這其中包括自研 Serverless 容器排程器、高效能安全容器等關鍵技術。在完全相容k8s api 的基礎上,無需關心任何節點運維問題,可高效支撐業務漸進式的 Serverless 遷移和業務高低峰不同階段的彈性擴容,是雲原生運維的新正規化。

 

 

此外,騰訊雲還推出了一種全新的 K8S 叢集模式: TKE Housekeeper,能夠讓使用者像管理 Workload 一樣宣告式管理 Node 節點。

 

針對雲原生服務場景進行優化的 etcd 託管解決方案,全面支援開源的 etcd 分散式儲存能力,為使用者提供高穩定、可觀測、免運維的雲原生 etcd 服務,這裡同樣包括開源行業首個 etcd 一站式治理平臺 Kstone。

 

在效能方面,騰訊雲原生分散式雲也達到了新的高度。無論是自研的高效能伺服器、晶片、網絡卡等硬體基礎設施,還是虛擬化技術和智慧網絡卡及 AI 加速等軟體水平,都是騰訊雲容器計算加速能力的典型代表。

 

分享最後,於廣遊老師還介紹了騰訊雲【燎原社】的生態合作計劃,藉助於【燎原社】這個企業雲原生應用助力平臺,將以簡單化、標準化、一站式的方式,助力解決企業雲原生應用問題。

 

(五)雲原生在騰訊集團業務落地及降本增效實踐

 

騰訊集團雲原生規劃架構師楊遠洲帶來了題為《雲原生在騰訊集團業務落地及降本增效實踐》的主題演講。

 

“騰訊集團早在 2009 年就開始使用容器技術,在騰訊雲推出 TKE 產品後,業務也已遷移到 TKE 技術棧之上。在這麼多年的雲原生化實踐背後,騰訊集團結合自身業務特點,沉澱了雲原生技術的理念思考與落地總結。”

 

楊遠洲老師介紹道,騰訊集團有著業務種類多、差異大,各業務按峰值備資源的特點,對騰訊而言單純的上雲遠遠不夠,要讓資源在業務之間動態流動才是降本增效的核心,而這正是雲原生技術的特點和優勢。

 

業界對於雲原生落地的模型有很多,在騰訊集團看來,可量化、可落地才是其中的關鍵。具體而言,可量化有云原生監控資料自動化採集、去除業務間的指標差異性、聚焦核心指標三條標準,可落地同樣有業務之間可對齊、公示排行榜、獎懲措施三條原則。

 

 

騰訊雲原生的落地方法是“從下往上”和“從上往下”兩條路並舉的方式,前者通過底層技術基礎設施的構建,提供雲原生化底座,後者通過設立研發效能、資源效能兩項指標的方式推動業務的降本增效。

 

 

在這樣的原則驅使下,騰訊制定了一套雲原生成熟度模型,成熟度得分主要分為平臺得分和業務得分兩個方面,其核心目標是橫向量化評估集團業務雲原生能力,推動雲原生落地。這套成熟度模型針對平臺和業務分別進行量化評估考核,得分情況從 workload、產品、部門維度層層彙總,按核心數加權計分,最終計算出整個部門和整個公司的成熟度得分,來監測集團內雲原生成熟度的進展。

 

 

隨後,楊遠洲老師也用內部某業務 HPA 的案例,詳細解釋了騰訊雲原生成熟度模型的評分方式。他表示,騰訊集團內部實踐效果比較好的降本增效措施有以下幾條:

  • 共享叢集:共享叢集資源 buffer,業務混布,錯峰使用增強排程能力;
  • 業務容器使用規範:限制 CPU Request/Limit 過大、限制 CPU/記憶體比、限制 Static 綁核/獨佔節點等;
  • over commit:讓業務在容器節點資源空閒的時候能夠用到更多資源;
  • 業務可排程 & HPA:業務無狀態彈性伸縮和有狀態的優雅退出的能力建設;平臺保障業務的資源和隔離性;
  • 平臺重排程 & CA:平臺在業務可排程基礎上,進行重排程;重排程出來的閒置節點,優先銷燬退回到 CA 資源池;各個業務、共享叢集共享資源池;
  • 在離線混布:針對線上業務波谷利用離線資源填補,提升資源利用率。

 

分享最後,楊遠洲老師表示騰訊集團雲原生的未來展望主要分為落地和技術兩大塊。在落地方面,繼續推動雲原生在騰訊集團的落地,持續讓業務對雲原生架構進行升級,加速資源在業務間的流轉,按需取用,用完就退,實現真正的降本增效。在技術方面,繼續探索騰訊集團業務在 Serverless 的應用,在離線混部 Caelus 混部方案的探索。

 

(六)圓桌對話:企業用雲成本優化的發展趨勢探討

 

圓桌環節,騰訊雲容器產品中心總經理鄒輝老師;Linux 基金會亞太區總監楊軒老師;微眾銀行資深技術專家、Apache EventMesh 創始人陳廣勝老師;Thoughtworks 中國區生態合作總監李鑄老師;招商局集團有限公司數字化中心技術專家、騰訊雲 TVP 山金孝老師等大咖圍繞企業用雲成本優化的發展趨勢探討做了深入討論,此處節選了大咖們所分享的 FinOps 在企業內的實踐案例,分析了各自的成功經驗與面臨的挑戰。

 

鄒輝:前面環節 FinOps 技術方面的經驗已經分享比較多了,我想分享下一些非技術層面的經驗。

 

騰訊內部很早之前就在探索 FinOps,每年都會規劃成本優化這塊的策略和目標。這些策略的制定和目標的達成,有一個虛擬組織在推進;這個組織包含了多個團隊,比如有些團隊負責資源的採購和業務資源的增長規劃,有些團隊負責成本策略,有些團隊負責平臺和技術方案,有些團隊負責業務落地。每年都會有一些定期的管理措施,把大家拉在一起,協同推進成本優化這個事。

 

除了組織之外,在成本優化過程中;我們也需要有配套的平臺或者流程,來保障目標的落地。

 

平臺上聚合了我們在成本優化過程中所需要的所有資訊,比如資源利用率、空閒資源分佈、業務實時成本等,讓組織裡的所有參與方都能很方便了解到各自需要的資訊。而流程能夠確保我們策略正確地被執行,比如在騰訊內部,為了讓大家更好的去利用雲原生技術降低成本,我們建立了雲原生成熟度模型,定期將業務和平臺方 “是否用好雲原生” 打分量化出來,來推動大家真正用好。

 

楊軒:我們可以參考騰訊內部千錘百煉得出來的 FinOps 經驗,可以發現這些組織、技術和流程的事情對很多中小型企業而言可能都是一種負擔。這正是 FinOps 產業聯盟成立的價值,將這些有價值的思考、實踐給沉澱下來,通過平臺協作,建立基本的認知以推動 FinOps 理念的落地。如何建設組織架構以推動 FinOps 落地,合規流程上有何建議,雲資源使用如何衡量利用效能等,這些最基本的單元都可以通過 FinOps 產業聯盟來進行一些定義,讓企業少踩很多坑。

 

另外,也希望像騰訊雲這樣大體量的公有云廠商,未來會在雲平臺上推出更多 FinOps 友好的工具,讓更多 FinOps 產業聯盟的會員單位能夠接入雲平臺,更好地服務。通過雲平臺工具,幫助企業快速搭建 FinOps 體系,在企業內形成機制,也許可以加速這個過程。希望以後也能通過 Linux 基金會、通過平臺溝通,能在中國有更好的體系化 FinOps 落地經驗出來。

 

陳廣勝:成本優化這個事情主要分兩方面來看。第一個方面,要看目標是什麼,是隻降成本還是要提高效率,還是兩者兼得。從我們的角度看比較清晰的業務目標是戶均成本不能超過一個閾值,一旦超過了要從各個方面去優化,降低成本空間。實際優化過程中,不僅僅是把資源利用率優化就完了,還會涉及到架構優化、設計開發的問題,要讓優化的過程能夠保證業務的連續性、穩定性。

 

第二個方面,目標確定後,最難的是怎麼推動事情落地。因為這些優化的工作,會在當下的業務工作中造成額外的成本,時間也會較長,不一定能夠馬上完成。微眾銀行內部是通過多個部門去配合推動,一個是架構管理辦公室,從整體上看產品架構設計是否合理,另一個是運營部門同事跟蹤實際落地的效果。成本優化不是一蹴而就的,而是一個持續不斷迭代的過程,企業應該根據自己的實際情況來評估,怎樣達到最好的效果。

 

李鑄:我們服務的企業很多都是非原生的數字化企業,很多還在學習 DevOps 怎麼用,微服務怎麼做,還在做非常基礎的事情,跟原生數字化企業之間的認知差距比較大。這裡面臨的問題是,在先進的新理念出來時,非原生數字化企業如何在學習成本偏高的情況下快速的跟上。其次,傳統企業的組織架構調整往往阻力很大,如何在不做大調整的前提下,優化方法論、優化流程,制定一套合適的定製化方案,仍需要花很多時間去嘗試。

 

目前在金融行業的頭部企業中,類似 FinOps 的應用相對較多,最開始不叫 FinOps,叫業務與IT的融合。實際上這個模式有 FinOps 的影子在,通過把相關部門、業務引入進來,做了一個新的業務模組之後,發現對業務的感知比較強,便漸漸形成 FinOps 實踐落地。目前國內傳統企業實踐相對較少,北美那邊的實踐會比較多,後續有機會的話,希望可以引入一些外部的實踐案例做一些分享。

 

山金孝:我們以前推廣一些技術理念,比如 DevOps 的時候,更多注重於技術的先進性,如何提升工作效率等維度。這些話術很難打動企業裡的業務負責人,或者財務負責人。FinOps 這個理念,不再是用純粹的技術因素去做推廣,而是用業務負責人能夠理解的方式來做佈道,這是非常有想象空間的點。

 

另一方面,FinOps 的落地可以很清晰地計算出投入產出比,不管是傳統企業還是數字化企業,都能比較清晰地看到 FinOps 推行成功後的成本節省效果,那這個前期的投入是可以得到業務方支援的。從這個角度看,我認為 FinOps 前途無量。

 

此外,各位嘉賓還在 FinOps 產業聯盟的行業標準等話題上展開了精彩的論述。

 

Day2:雲原生最佳實踐巡禮

 

(一)蔚來汽車對騰訊雲原生技術的實踐

 

蔚來汽車數字化發展叢集運維總監周瑩帶來了《蔚來汽車對騰訊雲原生技術的實踐》主題演講。

 

周瑩老師介紹道,新能源汽車是一個新興的、有特殊需求的行業,以蔚來為代表的新能源汽車行業的 IT 需求裡面融合了生產製造、網際網路服務、物聯網、人工智慧和大資料處理、邊緣計算、跨國境資料互動等大量交叉場景。

  • 在新能源汽車的設計部分,蔚來汽車在全球有數千人規模的整車設計團隊。在電機,電池電控,車身材料和工藝,智慧閘道器,智慧座艙,自動輔助駕駛,甚至座椅,空調系統,內飾,音響系統都有自主研發團隊;
  • 在工業製造方面,蔚來是工業網際網路概念的實踐者之一。蔚來的製造模式是基於訂單的定製化,製造工廠的物流、組裝、工藝、測試等系統全部數字化實現;
  • 在車聯網方面,蔚來汽車的智慧座艙是一個典型網際網路終端,背後的車聯車控是典型的物聯網終端;
  • 在基礎設施建設方面,蔚來汽車的充電樁建設也在持續發力;
  • 在自動輔助駕駛方面,蔚來汽車 IT 成本投入也非常大;
  • 在使用者運營體系方面,線上 App 下單和線下體驗相結合有別於傳統車企。

 

下圖是蔚來汽車對騰訊雲原生技術實踐的時間路徑,從 2015 年起蔚來就開始了混合雲的建設,到 2017 年接入工業網際網路建設,充分利用雲原生基礎設施能力,2018 年起雲原生的資料產品開始大量應用在蔚來的 IT 環境,預計到 2022 年後,將以邊緣雲的模式重建車聯網。

 

騰訊智慧出行汽車雲架構總監賀天明接棒周瑩老師深入講解了在這個過程中騰訊雲的一些觀察與實踐經驗。

 

賀天明老師首先向與會者介紹了汽車行業的現狀,一個車企往往包括 300 個以上的業務系統,類似於蔚來這種新能源車企會更多。在傳統車企轉型的過程中,也引入了非常多的 IT 新技術,對雲原生技術能力的需求日趨增長。騰訊雲與蔚來的合作非常深入,在每一個創新業務上都有騰訊雲的智慧技術的深度參與。

 

當前汽車產業技術發展的趨勢主要可以概括為“新四化”,即電動化、智慧化、網聯化、共享化。在這個過程中,車聯網是萬里長征的第一步,騰訊雲在車聯網方向提供了一個通用的業務架構能力,利用分散式雲的模式實現 B 端、C 端的全連線。

在車聯網分散式雲的架構方面,騰訊雲也提供了從車端/物聯等裝置接入到邊緣節點/物聯網網元接入點再到中心雲的體系化方案,既能給車企以不同維度的分散式雲產品,也能通過騰訊的音視訊等能力做好人與車之間更佳的互動。

 

 

賀天明老師介紹道,騰訊雲在出行行業多類專案中雲架構經過多年的迭代發展,已經補足了很多產品能力上的缺失,當前的車聯網雲架構已經實現了雲原生化的改造,具體架構參考下圖。

分享最後,賀天明老師也舉了雲原生服務網格 TCM 的實踐案例,當前在車企業務中有廣泛的落地,對研發鏈路上無論是開發還是測試人員,都非常友好。

 

(二)歡樂遊戲 Service Mesh演進實踐

 

騰訊歡樂工作室公共後臺技術負責人陳智偉帶來了題為《歡樂遊戲 Service Mesh 演進實踐》的主題演講。

 

陳智偉老師介紹道,歡樂工作室的後臺架構是分散式微服務架構,分為接入層、業務層、中轉層、儲存層四大塊,支撐著數百萬線上和數千萬 DAU,實現了不停服平穩執行近十年。但隨著業務的快速發展,缺乏一套成熟的微服務管理系統的挑戰越來越大。

 

 

在做微服務改造以前,原有架構的痛點主要體現在以下幾個方面:

  • 架構的服務治理能力不足;
  • 服務部署能力較弱;
  • 多套開發框架的服務模型成熟度不高;
  • 繁多的業務服務維護困難。

 

陳智偉老師表示,在現有架構上繼續打補丁優化,或者使用成熟的開發架構重構兩套方案都不可行,結合當今上雲的趨勢,將服務管理和服務治理能力下沉,將現有框架逐漸蛻變為業務的邏輯驅動層和膠水層成了最佳方案。在調研了 Istio 等服務網格技術後,最終選擇了使用騰訊服務網格 TCM 去改造現有架構。

 

第一,增加適配代理閘道器 MeshGate,實現網格內外互通。這帶來的好處是網格內外服務可互通,新服務可以直接部署在網格內,網格內服務之間可用 gRPC 原生協議,充分利用了 Istio 的流量管理能力。

 

第二,存量業務搬遷方面,在原有程式碼框架增加了 gRPC 通訊能力,定義 gRPC Wrapper 包裝私有協議,使存量業務程式碼重編即適配 gRPC。全量後實現了業務使用層無感知,網格內使用 gRPC Wrapper 適配的效果。

 

 

為解決由此引入的時延及效能損耗問題,騰訊自研了接入叢集 Lotus,提供給終端客戶端使用私有協議的 TCP 長連結或者 WebSocket 連結接入的服務,具備大規模使用者鑑權,長連結管理,協議加解密,訊息轉發等等能力。將 Lotus 直接部署至網格中的方案,並沒有根本性地解決成本和時延問題。經過綜合考慮,最終選擇通過 Envoy 的 filter 機制支援私有協議,並支援原有接入層的業務能力,完成接入服上雲。

 

最終實現了在保證效能開銷的前提之下,最大限度融入 Istio,享受服務網格帶來的流量治理能力;整體部署效率大幅提升,運維更加便捷,節省運維人力;支援自動伸縮,無需預留過多資源,資源利用率高,CPU 及記憶體節省了 50% 以上的效果。

 

 

對於遊戲場景下,強狀態核心對局的 GameSvr 上雲問題,也相應地做了架構分離、單局排程、部署管理等改造。實現了強狀態 GameSvr 一鍵式更新和上下架,大幅節省運維人力以及降低上手成本;實現可靠均衡的排程和自動伸縮能力,資源利用率高,雲上僅為雲下的 1/3的顯著效果。

 

 

此外,在儲存服務方面,也實現了將儲存遷移至 TcaplusDB(騰訊互娛儲存服務),交給專職團隊維護的方案。同時,在Apache CGI 網格化方面,也較快實現網格化,CPU 以及記憶體資源節省了近 70%,服務可維護性也獲得大幅提升。另外,還將 Istio 託管給 TCM(騰訊雲服務網格),並使用 TCM 提供 Istio 的多叢集網格能力。

 

通過以上的各項改造,完成了整體架構的平穩平滑上雲以及網格化;提升資源利用率,提高研運效率,沉澱了遊戲各類業務場景上雲經驗。

 

(三)雲原生 PaaS 平臺的混合雲演進之路

 

好未來 AI 中臺 PaaS 平臺負責人蘇珂帶來了題為《雲原生 PaaS 平臺的混合雲演進之路》的主題演講。

 

蘇珂老師介紹道,好未來 PaaS 平臺當前的總呼叫量已經達到上千億,周呼叫量超 20 億,日呼叫量超6億,規模十分龐大。服務架構層面,是經典的基於SpringCloud 全家桶和 Kubernetes 構建的雲原生化 PaaS 平臺。

 

 

這樣的單叢集架構,隨著業務的發展,逐漸滋生了很多技術債,比如:服務負載不均衡、註冊 SDK 使用不規範、定位問題複雜耗時等問題。另一方面,單叢集的架構也很快遭遇了瓶頸,Node、Pod 數量接近上限、服務註冊頻繁,數量多、VPC 中 IP 資源耗盡、APIServer 效能達到上限等。另一方面,缺乏災備叢集、議價及服務質量的主動權不在自己手中、叢集升級困難、無法規避人為錯誤、完全依賴雲廠商 SLA 等問題也是業務所不能接受的。在這樣的痛點背景下,引出了混合雲雙叢集架構建設的急切需求。

 

蘇珂老師解釋道,雙叢集建設的優化主要涵蓋四個方面:註冊中心註冊治理數量優化、服務負載不均衡優化、服務註冊方式優化、叢集拆分。

 

在優化註冊中心方面,前期調研了成熟的開源產品,最終選擇了騰訊雲的 TSE(Polaris)作為原生 Eureka 的替代,改造過程涉及8萬服務治理註冊容量測試、1000 個服務增量註冊測試、Eureka 開源介面規範相容、長時間穩定性測試等方面,最終實現了服務治理容量提升、註冊中心服務成本降低的收益。

 

在優化負載均衡方面,通過根據 InstanceId 輪詢選擇服務、gateway 作為 client 發起請求、根據 host 作為 key 建立連線池的方式,優化了 service 註冊。另一方面,在 IP 註冊上也做了相應的優化,最終實現了資源成本的降低。

 

 

除此以外,在整合 Istio-envoy,多活叢集互備等關鍵節點上,也都做了相應的優化措施。蘇珂老師表示,通過這些技術手段的優化改造,實現了工期縮短三分之二,修改期間無事故發生的顯著效果。

 

在準備做雙叢集改造的過程中,技術團隊做了兩套方案,最終選擇了週期較長、成本較高,但能保障穩定性和故障域小的方案,並且對其做了補充升級,使之更符合業務的實際需求。

 

 

遷移落地的架構示意圖參考下圖。外部流量首先流入接入層閘道器,由上層閘道器做統一叢集之間的流量排程。然後走到叢集內部業務 API 閘道器,由其做業務流量負載。緊接著所有業務容器都被注入相關的 SDCAR,幫助完成 POD IP 的註冊。

 

 

蘇珂老師最後表示,雙叢集的建設帶來了以下幾個方面的收益:

  • 安全:分割槽部署、隔離故障、高可用性;
  • 災備:同城多活、快速切換;
  • 業務:快速擴容、統一平臺管理、服務遷移;
  • 穩定:高於雲廠商 SLA;
  • 成本:議價優勢、服務質量、業務共創。

 

未來,好未來 PaaS 平臺還將在流控模組分叢集拆分、註冊資訊雙向同步、逐步引入 mesh 的 inbound/outbound 流量的各種治理能力、拆分閘道器、完善監控等方面做進一步的優化升級。

 

(四)騰訊在雲原生可觀測領域的探索與實踐

 

騰訊雲可觀測平臺技術總監羅嘉黎帶來了題為《騰訊在雲原生可觀測領域的探索與實踐》主題演講。

 

分享伊始,羅嘉黎老師為我們介紹了可觀測的發展史,他表示,可觀測是隨著服務架構的演變而演變的,從早期單體應用時期的手動日誌排查,到分散式服務的基礎指標+日誌檢索方式,再到無伺服器/服務網格時代的 Metric+logging+Tracing。

 

 

羅嘉黎老師從最傳統的日誌出發,詳細介紹了從日誌到自定義指標的過程中,怎麼樣從指標和維度兩個概念上抽象出來,形成一個告警檢測的機制。騰訊在近十年前就有了類似的系統,能夠做到每一個網路呼叫都能夠被監控起來,這種單體應用的時期定位是比較高效的。

 

隨著 K8S 架構成為主流,服務數量開始爆發式增長,對可觀測能力也提出了更高要求,架構也變得更加複雜。加上雲原生應用的特點,對效率要求越來越高,系統更加複雜,環境動態性增強,上下游依賴也變得更多,如何幫助雲原生應用實現可觀測變得更加具有挑戰性。

 

在這樣的背景下,羅嘉黎老師詳細分析了 Metric、Logging、Tracing 三大模組在實際使用中的痛點與所遇到的問題。此外,在可觀測性領域的開源協議過去也一直未曾統一,直到 2019 年成立的 OpenTelemetry 專案,其具備統一 Metric、Tracing、Logging 標準,三者擁有相同的元資料結構,可以輕鬆實現互通;使用一個 Agent 就能夠完成可觀測性資料的採集和傳輸,不需要安裝各種各樣的 Agent,降低系統的資源佔用;誕生於 CNCF,對於各種雲原生可觀測性系統具有非常好的相容性等特性。

 

 

可觀測性的發展史,就是從 1.0 的 Logging 時代,手動排查日誌;到 2.0 的 Metric+ Logging 時代,延時,流量,飽和度,錯誤指標告警,通過 Logging 人工串起全鏈路;再到 3.0 的可觀測一體化時代,Metric+Logging+Tracing,將 traceID 注入gRPC metadata 或 http header,進行分散式追蹤、全鏈路監控。

 

隨後,羅嘉黎老師重點介紹了騰訊雲在可觀測領域的一些經典案例分享,包括前端監控、前後端打通、後臺可用性分析、資料庫效能分析、服務治理、撥測等全域性點位。整體架構圖如下圖所示:

 

 

分享最後,羅嘉黎老師也向與會者毫無保留地分享了構建全鏈路可觀測性的 To do list:

  1. 後臺/前端呼叫指標告警—無侵入接入
  2. Mysql/Redis 等儲存層指標告警—無侵入接入
  3. 自定義指標告警—業務側埋點
  4. 日誌類資料通過中介軟體列印清楚上下文資訊(比如 appID,ip,返回碼等等)
  5. 開源日誌庫自動將 traceID 注入日誌—無侵入接入
  6. OpenTelemetry/Skywalking 等開源協議分散式追蹤能力—無侵入接入
  7. 通過壓測工具去觀測以上 Metric、logging、Tracing 資料的情況

 

值得一提的是,這其中只有 3、4 兩點需要業務上報資料,其他均可通過雲服務或開源產品無侵入接入。

 

(五)騰訊日流千億的雲原生閘道器探索和實踐

 

API7.ai CEO,Apache APISIX PMC 主席,騰訊雲 TVP 溫銘帶來了題為《日流量千億的雲原生閘道器探索和實踐》的主題演講。

 

在開始演講前,溫銘老師帶我們回顧了 API 的背景,他表示開發模式已經從程式碼優先轉變為了 API 優先的模式。這個趨勢背後引發了一些開發模型的轉變,涉及到前端、後端、測試等方方面面的問題,這是他創辦 APISIX 的原因。

 

APISIX 作為一個 Apache 頂級開源專案,除了社群活躍、反饋及時,生態擴充套件豐富,同樣具備領先的技術能力,無論是順應潮流的雲原生架構,還是全動態設計,運維方便,亦或是外掛模組化管理、配置可插拔、內建高可用和無狀態設計等技術特性,都給予使用者以最大的便利性。

 

溫銘老師解釋道,隨著 IT 技術的高速發展,雲原生技術的進一步下沉,也對 API 閘道器帶來了不小的挑戰,總結下來基本上有以下幾個方面:

  • 多語言與低程式碼:降低了開發者入門成本,豐富使用者選擇,同時提升產品交付與協作效率;
  • 流量統一:統一流量即統一技術棧,降低公司運營成本,加速企業數字化轉型;
  • 資料安全:API 閘道器作為內外輸送點,在對隱私資訊的資料把控上應該做到更加地安全與防護。

 

在這樣的挑戰下,APISIX 憑藉強悍的技術實力,也幫助國內多個網際網路大廠實現了雲原生閘道器的升級改造工作,其中的典型代表就是新浪微博和愛奇藝。

 

新浪微博原架構痛點是升級步驟長、對服務進行增、刪、改或跟蹤問題時,不夠靈活且難以排查問題。通過遷移到 APISIX,藉助全動態、高效能等特性,加上定製化的開發,深度融合進入了新浪微博的業務系統中。

 

 

愛奇藝的原架構痛點是部署臃腫、同步效率低、高可用難度大。隨著使用者對視訊內容的需求持續增長,愛奇藝對 APISIX 滿足大流量、效能穩定的需求凸顯出來,滿足了其日漸增長的業務需求。

 

 

除以上兩個企業案例以外,溫銘老師還提到了 WPS 的用例,以上三家企業與 APISIX 形成了良性的互補,一方面 APISIX 滿足了其業務需求,另一方面三家企業也為 APISIX 社群回饋了諸多應用場景與使用反饋。

 

溫銘老師最後表示,APISIX 未來將順應雲時代的發展潮流,推出與雲廠商的整合版本。未來將會有 APISIX 在騰訊雲上的託管版本,如果使用者的服務在雲上,可以省去安裝、運維、升級等步驟,只需直接使用雲上服務即可滿足業務需求。

 

(六)圓桌對話:雲原生會讓我們失業嗎?

 

騰訊開源聯盟主席、FinOps 基金會董事單致豪老師;金蝶我家雲技術總監金向平老師;騰訊雲容器技術專家孟凡傑老師;API7.ai CEO,Apache APISIX PMC 主席,騰訊雲 TVP 溫銘老師;招商局集團有限公司數字化中心技術專家、騰訊雲 TVP 山金孝老師等大咖圍繞雲原生會讓我們失業嗎的話題進行了深入探討。

 

單致豪:雲原生技術降低了開發者的工作量和難度,抽象掉了很多底層的技術,我覺得不僅不會讓整體的崗位減少,反而會隨著難度的降低讓更多的人蔘與進來,成為開發者。去年 GitHub 的資料顯示,全球開發者數量已經達到了 7300 多萬,一年間增加了 1600 萬。CNCF 也有類似的報告,雲原生開發人員的數量也在持續上升,過去一年增加了 30 多萬達到 680 萬的規模。

 

我個人覺得雲原生和開發者的關係是一個良性的互動,共同促進的關係。另外,Linux 基金會的下一代架構基金會成立雲開發這樣的技術組,構建低程式碼和無程式碼的框架、平臺和標準,通過這樣的方式讓更多的人成為開發者。隨著更多的開發者融入進來,我覺得越是資深的開發者越不會失業。

 

金向平:我們在新的方式下工作,無論開發還是運維都跟以前不太一樣,但崗位不但沒有減少,反而增加了。以前的開發者像建築工人,是碼程式碼的。現在的開發者像裝修房子的,房子越建越多,開發者崗位也就越來越豐富。

 

新形勢下,業務開發人員要更加鑽研業務的處理,才能給客戶創造更多價值,就能創造更多好用的企業產品。雲原生技術的出現,使得開發者站在了巨人的肩膀上,我們可以看得更遠,去研究物聯網、生態、資訊系統,利用這些技術幫助客戶快速搭建安全可靠的IT服務,技術人員也要在這種新形勢下提升自我能力,實現轉型。

 

孟凡傑:汽車出來之前,主要的交通工具是馬車。大家擔心的是原來這些趕馬車的人會不會失業,這跟今天的處境是一樣的。我覺得任何一次的技術迭代,都會引發類似的討論。我們不能以一種靜態的眼光看待這個世界,自動化能力的提高,並不一定意味著人員的減少。我們所面臨的的場景,所要解決的問題已經完全不一樣了。我們追求效率的水平在不斷膨脹,要解決的問題也在變得更加複雜,這背後的需求是在持續增長的,任何技術的迭代讓我們完成了一些以前不敢想象的工作,也就自然會帶來一些新的崗位。

 

雲原生技術現在的大行其道,會創造更多崗位,比如過去你是一個運維,只做一些工單處理的操作工作。有了自動化能力以後,你就轉變成了一個 DevOps 人員,就是一樣的道理。我們都說產業升級,其實個人也需要去做升級來適應新的時代。

 

溫銘:其實大家從一個更長的角度來看,數字化程序是在加速的。越來越多的東西都放到了網際網路上,部署方式也從私有機房搬到了公有云上,面臨著更多樣的場景和需求,這並不因為基礎設施的便利性就會減少。恰恰相反的是,隨著基礎設施的便利性,越來越多的企業會加快數字化和雲原生的程序。

 

很多企業已經是雲原生的架構了,但更大部分的公司還沒有完成自己的核心業務遷移上雲的程序,在這個歷史的潮流趨勢下,必然會帶動一些新的商業機會,也會衍生出更多的開發者崗位需求。我覺得雲原生恰恰只是一個開始,而非蓋棺定論對開發者的終結之時。

 

結語

 

雲原生領域在過去的幾年間,經歷了喧囂的炒作,經受了疫情的洗禮,經過了技術的蟄伏,終於迎來了走向規模化落地的程序。不管是網際網路企業對雲原生技術應用的花樣百出,還是傳統企業對雲原生技術人才的求知若渴,都讓雲原生從理念變為了現實。

 

雲原生向來是一個事實標準說話的行業,TVP 希望在行業標準形成的過程中, 能夠給國內企業、開發者帶來先進的雲原生技術趨勢解讀,也能將國內具有代表性的雲原生技術實踐案例通過開源社群、基金會、TVP 們帶出國去。

 

第四屆 Techo TVP 開發者峰會「雲以致用,智效合一」順利落下了帷幕,但關於雲原生的思考卻仍在每個開發者的心頭燃燒著。