自主開源,聚焦云原生生產(chǎn)落地
在數(shù)字化席卷全國的浪潮下,開源基礎軟件已經(jīng)滲透到各行各業(yè),其中又以Kubernetes、Istio、Spark等表現(xiàn)尤為突出。以網(wǎng)易為例,在其覆蓋零售、音樂、教育、傳媒、游戲的多元化業(yè)務之下,運行著100多個Kubernetes集群,每天有超過100億次的服務網(wǎng)格調用量,超過15萬的Spark任務。
作為基礎軟件提供者的網(wǎng)易數(shù)帆,在長期規(guī)模化實踐中也積累了大量的經(jīng)驗。張曉龍表示,社區(qū)云原生開源組件功能強大,只是由于其復雜性,在企業(yè)生產(chǎn)落地過程中,尤其是大規(guī)模應用場景下,還存在諸多亟需克服的挑戰(zhàn)。因此,網(wǎng)易數(shù)帆選擇以解決云原生生產(chǎn)落地問題作為當前自主開源主題,圍繞Kubernetes、Istio和Envoy生態(tài),解決易用性、可用率保障、性能優(yōu)化和成本優(yōu)化等四個方面的問題。
在這一主題下,網(wǎng)易數(shù)帆開源了云原生運維診斷系統(tǒng)KubeDiag、多租戶可視化Kubernetes管理平臺KubeCube和高性能云原生API網(wǎng)關Hango(函谷),分別致力于解決Kubernetes可用率保障、Kubernetes易用性和API網(wǎng)關性能和易用性等問題。這些項目也是網(wǎng)易數(shù)帆支撐集團互聯(lián)網(wǎng)業(yè)務和服務外部客戶沉淀下來的成果,經(jīng)過了大規(guī)模業(yè)務實踐的驗證,同時也注重對鯤鵬等國產(chǎn)硬件平臺的適配,能夠讓國內企業(yè)和開箱即用且自主可控的云原生基礎軟件的距離又靠近了一步。
此外,張曉龍透露,在未來幾個月中,網(wǎng)易數(shù)帆還將開源日志服務項目Loggie,基于Kubernetes的在/離線混部項目Zeus,以及服務網(wǎng)格性能加速項目MeshTurbo等,繼續(xù)為夯實云原生基礎軟件做貢獻。在網(wǎng)易數(shù)帆的這些自主開源項目中,貢獻給CNCF的計劃也已經(jīng)排上日程。
網(wǎng)易數(shù)帆的開源計劃獲得了CNCF積極的反饋。Linux基金會亞太區(qū)策略規(guī)劃總監(jiān)、CNCF中國區(qū)總監(jiān)Keith Chan對表示,網(wǎng)易作為CNCF會員,在云原生技術應用、標準推廣及社區(qū)生態(tài)完善方面都做出了長期的努力,憑借這些積累,以及對業(yè)務痛點的把握,網(wǎng)易數(shù)帆此次發(fā)布的云原生開源主題和新項目,將能夠對云原生技術與行業(yè)場景的深度融合產(chǎn)生巨大的價值。
KubeDiag,開創(chuàng)運維經(jīng)驗即代碼時代
云原生運維診斷系統(tǒng)KubeDiag是本次發(fā)布的一個特色項目。在傳統(tǒng)工作模式下,云原生場景下故障/問題診斷依賴經(jīng)驗手工處理,解決效率低下且無法較好沉淀形成診斷能力,為此設計的KubeDiag,則通過提供交互式排障工具,以及診斷恢復流程的代碼化記錄,很好地解決了這一問題。
張曉龍介紹了KubeDiag的三大核心優(yōu)勢。其一是經(jīng)驗即代碼,診斷經(jīng)驗100%通過代碼實現(xiàn),易沉淀復用。其二是自動化,以流水線方式高效編排診斷過程,可一鍵點擊/自動觸發(fā)運行。其三是良好的可移植性,以Kubernetes Operator實現(xiàn),可以在任意Kubernetes環(huán)境無差別地運行。
張曉龍透露,在網(wǎng)易,KubeDiag已經(jīng)實現(xiàn)全部Kubernetes集群接入,帶來的直接結果是運維診斷效率提升300%,人力成本降低80%。更重要的是,系統(tǒng)已形成了近100個故障/問題場景的自動化診斷處理能力沉淀。正是這些能力沉淀,可以讓不同行業(yè)不同場景下Kubernetes可用率保障的提升變得簡單。
堅持內核開源,把控制權交給客戶
“架構開放,內核開源”是網(wǎng)易數(shù)帆及其背后的網(wǎng)易杭州研究院一貫堅持的技術理念,張曉龍表示,這一理念出發(fā)點是擁抱社區(qū)加速創(chuàng)新,讓基礎軟件平臺演進更有生命力,而在為外部客戶提供服務之后,網(wǎng)易數(shù)帆發(fā)現(xiàn)這還有一層好處,就是把控制權交給客戶,讓客戶獲得真正沒有廠商鎖定的技術底座。
踐行這一理念,在使用開源技術的同時,網(wǎng)易數(shù)帆也注重回饋社區(qū),在Kubernetes、Istio、Envoy、Spark等項目實現(xiàn)累計500多次提交,涉及100多項重要能力,如Envoy 的 tracing能力增強、 Lua script的支持等,期間團隊也產(chǎn)生了Apache Spark Committer、Harbor Maintainer等重要貢獻者,這代表了社區(qū)同道的高度認可。
在此之前,網(wǎng)易數(shù)帆還主導開源了大數(shù)據(jù)項目Apache Kyuubi (Incubating)、分布式存儲項目Curve和服務網(wǎng)格項目Slime。其中Apache Kyuubi (Incubating)已經(jīng)在2021年6月進入Apache軟件基金會孵化,并形成了更加良好的社區(qū)氛圍。目前,網(wǎng)易數(shù)帆自主開源技術已經(jīng)中國華融、深圳證券交易所、華為、小米、知乎、愛奇藝、T3出行、B站和豐巢等企業(yè)落地應用。
2021年,開源被列入我國“十四五”規(guī)劃,同時核心技術自主可控的需求也更加強勁,網(wǎng)易數(shù)帆以獨特的理念在開源領域發(fā)力,預示著企業(yè)和開發(fā)者在數(shù)字化轉型升級的工作中將能獲得更為強力的支持。
當然,開源項目能否成功,社區(qū)極為關鍵,網(wǎng)易數(shù)帆也渴望志同道合的伙伴參與到社區(qū)建設之中。讀者可以通過網(wǎng)易數(shù)帆開源頻道(https://sf.163.com/opensource)訪問項目文檔、源碼,加入社區(qū)。