品牌名稱
TT語(yǔ)音
所在行業(yè)
互聯(lián)網(wǎng)
企業(yè)規(guī)模
11-50人
用 Zadig 搞定數(shù)百微服務(wù)環(huán)境治理,走向自動(dòng)化研發(fā)之路
532次閱讀
TTChat 是趣丸科技(TT語(yǔ)音)旗下的一款針對(duì)海外用戶的游戲社交產(chǎn)品,包含實(shí)時(shí)語(yǔ)聊房、IM、開黑交友、賽事等一系列業(yè)務(wù)場(chǎng)景。團(tuán)隊(duì)對(duì)云原生技術(shù)非常推崇,加之在國(guó)內(nèi)的 TT 語(yǔ)音產(chǎn)品上也有了一定的相關(guān)技術(shù)探索與積累,所以在新業(yè)務(wù)創(chuàng)立之初,我們就全面使用了 Kubernetes 與 Istio 進(jìn)行服務(wù)治理。
回望過(guò)去
起初在團(tuán)隊(duì)規(guī)模較小的時(shí)候,我們簡(jiǎn)單使用 GitLab CI 搭建了流水線,實(shí)現(xiàn)完全容器化的構(gòu)建和部署,維護(hù)了開發(fā)與生產(chǎn)兩套環(huán)境。經(jīng)過(guò)了一年多的產(chǎn)品迭代,團(tuán)隊(duì)“創(chuàng)造”出了近兩百個(gè)微服務(wù),也因?yàn)閳F(tuán)隊(duì)規(guī)模變多,不斷產(chǎn)生出了協(xié)作問(wèn)題,比如多分支開發(fā)與單一共享環(huán)境經(jīng)常引起的服務(wù)覆蓋問(wèn)題、缺少不同功能的環(huán)境以便提供給不同角色的人使用等等。這就催生出了多套環(huán)境的需求,面對(duì)如此多的服務(wù),亟需一個(gè)合適的工具/平臺(tái)來(lái)幫助我們快速地“復(fù)制”多套新環(huán)境出來(lái),正當(dāng)我們一籌莫展的時(shí)候,我們看到了號(hào)稱具有「強(qiáng)大的云原生多環(huán)境能力」的 Zadig。
共創(chuàng)之路
從去年的 10 月開始,我們開始嘗試進(jìn)行 Zadig 的接入,彼時(shí) Zadig 在使用 Kubernetes YAML 來(lái)管理與部署服務(wù)時(shí),能夠很好的工作,而對(duì)于我們所使用 Helm Chart,卻仍然處于一個(gè)很初級(jí)的階段,加上我們自身對(duì)于 Helm Chart 使用姿勢(shì)不佳,導(dǎo)致在接入的過(guò)程中也遇到了許多困難。通過(guò)與 Zadig 團(tuán)隊(duì)多次在廣滬兩地的面對(duì)面交流和思想碰撞,打磨出了不少針對(duì) Helm Chart 場(chǎng)景的需求點(diǎn)。
Zadig 團(tuán)隊(duì)也逐漸豐富了 Helm Chart 場(chǎng)景的支持,我簡(jiǎn)單列一些我認(rèn)為非常能夠體現(xiàn) Zadig「強(qiáng)大的云原生多環(huán)境能力」的功能點(diǎn):
環(huán)境全局變量
通過(guò)該能力,我們可以結(jié)合自己的 Helm Chart 模板,為所有服務(wù)提供環(huán)境級(jí)別的 Values 覆蓋,例如:
-
掛載公共配置至所有的 Pod 中,如特性開關(guān)配置、業(yè)務(wù)區(qū)域配置
-
Istio Virtual Service 中的 Gateway、Host 配置
-
全局生效的環(huán)境變量
-
全局注入的 annotations
環(huán)境配置
這個(gè)目前我們通常是結(jié)合環(huán)境全局變量一起來(lái)使用的,比如用它來(lái)托管公共配置(前面提到的特性開關(guān)配置、業(yè)務(wù)區(qū)域配置等),也可以用來(lái)管理一些不適合放在服務(wù)配置中的敏感信息(如密碼、證書)等。
環(huán)境復(fù)制
我們從 Git 中導(dǎo)入的 Helm Values,其中所包含鏡像很可能是不可用的,或是一個(gè)非常古早的版本,早期通過(guò)創(chuàng)建環(huán)境,經(jīng)常面臨的問(wèn)題就是服務(wù)無(wú)法啟動(dòng),或是某個(gè)服務(wù)版本過(guò)舊,無(wú)法正常工作,當(dāng)時(shí)的做法是在環(huán)境創(chuàng)建之后,立刻運(yùn)行一個(gè)工作流,對(duì)所有的服務(wù)進(jìn)行重新構(gòu)建,這無(wú)疑是非常消耗時(shí)間和構(gòu)建資源的。環(huán)境復(fù)制功能則通過(guò)直接復(fù)制一個(gè)現(xiàn)有的穩(wěn)定環(huán)境,從而實(shí)現(xiàn)快速構(gòu)建新環(huán)境并且能直接投入使用,切實(shí)解決了痛點(diǎn)。
基于這些環(huán)境能力,我們現(xiàn)在能夠在短短的一二十分鐘內(nèi),快速地建立起一套擁有幾百個(gè)服務(wù)的全新環(huán)境。
除了環(huán)境能力,我們?cè)诤?Zadig 的接入過(guò)程中也解決了不少非常痛的問(wèn)題:
從 Git 中批量導(dǎo)入:
對(duì)于擁有幾百個(gè)存量服務(wù)業(yè)務(wù)來(lái)說(shuō),這項(xiàng)功能極大程度解放了雙手,最終我們可以順利地在短短的十幾分鐘內(nèi),完成所有服務(wù)的導(dǎo)入。可以說(shuō)這是我們能夠堅(jiān)持下來(lái)的一個(gè)重要原因。
服務(wù)編排:
通過(guò)管理服務(wù)的啟動(dòng)順序,這項(xiàng)能力幫助我們有效地解決了服務(wù)部署時(shí)對(duì)配置、密鑰等強(qiáng)依賴的問(wèn)題。此外,還可以使用 Zadig 托管部署測(cè)試環(huán)境的數(shù)據(jù)庫(kù)、Redis 等進(jìn)行一些初始數(shù)據(jù)的導(dǎo)入工作,這也是我們計(jì)劃中但一直還沒(méi)來(lái)得及做的事情。
落地與探索
在業(yè)務(wù)交付過(guò)程中,不同角色的人員對(duì)環(huán)境有著不同的訴求,例如開發(fā)人員需要一個(gè)統(tǒng)一的環(huán)境進(jìn)行集成、聯(lián)調(diào),測(cè)試人員需要一個(gè)獨(dú)立穩(wěn)定的環(huán)境用于功能測(cè)試、驗(yàn)收、實(shí)施自動(dòng)化測(cè)試。
我們期望能夠結(jié)合 Zadig 的多環(huán)境管理以及可定制化的 Workflow,非常快速地拉起一套完整的環(huán)境,并且盡可能實(shí)現(xiàn)自動(dòng)化,這也是云原生文化所非常倡導(dǎo)的價(jià)值觀之一。因此除了托管常規(guī)的服務(wù)之外,我們也用 Zadig 托管了很多環(huán)境所依賴的底層資源:
-
環(huán)境啟動(dòng)所依賴的 ConfigMaps、Secrets
-
提供訪問(wèn)入口配置的 Istio Gateway CR
-
用于自動(dòng)化生成 TLS 證書的 Certificate CR(結(jié)合 CertManager & Let's Encrypt)
在 TTChat 主項(xiàng)目中,由于服務(wù)數(shù)量較多,存在一定的環(huán)境維護(hù)成本,我們使用 Zadig 管理了 dev 和qa 兩套標(biāo)準(zhǔn)環(huán)境。
下圖以 Zadig 為界分為了兩個(gè)部分,上半部分是業(yè)務(wù)運(yùn)行時(shí)的一個(gè)視角,我們?cè)跇I(yè)務(wù)架構(gòu)上面使用了istio-ingressgateway 作為七層網(wǎng)關(guān)對(duì) TTChat App 提供了 HTTP/2 和 HTTP/3 的接入能力,因此使用了不同的域名將流量路由到不同的環(huán)境中(PS:圖中域名為示例);下半部分則描繪了我們現(xiàn)階段在交付中,從代碼提交或者合并觸發(fā)工作流,然后部署到兩套環(huán)境中的過(guò)程。圖中的紅色區(qū)域的自測(cè)環(huán)境是我們目前基于 Zadig 新發(fā)布的子環(huán)境能力進(jìn)行的一項(xiàng)新的嘗試,希望能夠給研發(fā)人員提供更加好的開發(fā)體驗(yàn)。
目前我們一共有六個(gè)活躍的項(xiàng)目運(yùn)行在了 Zadig 之上,共計(jì)管理了 16 套開發(fā)&測(cè)試環(huán)境,近 300 個(gè)服務(wù),每周進(jìn)行數(shù)百次的構(gòu)建部署,構(gòu)建成功率 >96%,自接入以來(lái)累計(jì)產(chǎn)生的交付物 12000 多個(gè),部署 20000 余次。
非常期待未來(lái)繼續(xù)與 Zadig 一起,幫助工程師更好地專注價(jià)值創(chuàng)造。
該產(chǎn)品與互聯(lián)網(wǎng)行業(yè)合作的客戶案例
肽動(dòng)科技
互聯(lián)網(wǎng) 201-500人
鈦動(dòng)利用 Zadig 完成云原生轉(zhuǎn)型之路
鈦動(dòng)科技 (Tec-Do) 成立于 2017 年,是全球領(lǐng)先的基于大數(shù)據(jù)和 BI 的商業(yè)增長(zhǎng)賦能公司。 公司秉承以服務(wù)客戶為中心的核心價(jià)值觀,旨在通過(guò)技術(shù)能力抽
wifi萬(wàn)能鑰匙
互聯(lián)網(wǎng) 501-1000人
連尚科技利用 Zadig 搞定了多環(huán)境管理和構(gòu)建效率的難題
Zadig 如何在企業(yè)落地?
"連尚在 17 年搭建了服務(wù)端的發(fā)布平臺(tái)并沿用至今,通過(guò)該平臺(tái)我們實(shí)現(xiàn)了服務(wù)構(gòu)建信息配置、編譯、打包以及部署等功能。隨著公司服務(wù)容
妙盈科技
互聯(lián)網(wǎng) 201-500人
Zadig 將研發(fā)復(fù)雜性下沉到平臺(tái),讓開發(fā)更聚焦創(chuàng)新
妙盈科技(MioTech) 是一家 ESG 領(lǐng)域的金融科技企業(yè),服務(wù)國(guó)內(nèi)外眾多大型金融機(jī)構(gòu)。妙盈的基礎(chǔ)架構(gòu)團(tuán)隊(duì)一直致力于在持續(xù)交付領(lǐng)域通過(guò)技術(shù)更迭,為開發(fā)者提供
非碼
互聯(lián)網(wǎng) 201-500人
非碼用 Zadig 實(shí)現(xiàn)15 萬(wàn)家門店周發(fā)布 7 次
我們需要非常快速的迭代節(jié)奏,客戶爸爸說(shuō)明天上,通宵熬夜也要完成目標(biāo),一周 7 次迭代也是常有的事:沒(méi)有 Zadig, 我們的自動(dòng)化測(cè)試不可能做起來(lái),更不可能滿足
閃電出行
互聯(lián)網(wǎng) 51-200人
結(jié)合自身企業(yè)痛點(diǎn),閃電出行工程師堅(jiān)定選型 Zadig
簡(jiǎn)介
本文作者 - Alan Wang - 閃電出行工程師
持續(xù)交付作為運(yùn)維工作里極其重要的一個(gè)環(huán)節(jié),本身就存在一些歷史悠久的工具,拿 Jenkins 來(lái)說(shuō),可
鍋圈食匯
互聯(lián)網(wǎng) 1001-5000人
鍋圈利用 Zadig 治理環(huán)境平滑推進(jìn)容器化進(jìn)程
背景介紹
鍋圈食匯是火鍋燒烤食材超市品牌,是火鍋燒烤食材社區(qū)零售模式。鍋圈食匯以火鍋、燒烤食材為主,涵蓋休閑零食、生鮮、凈菜、飲食、小吃等商品的便利店連鎖系統(tǒng);
查看更多
同類產(chǎn)品與互聯(lián)網(wǎng)行業(yè)合作的客戶案例
摹因智能
互聯(lián)網(wǎng) 51-200人
摹因智能:構(gòu)建數(shù)字化銷售賦能管理平臺(tái)
AI驅(qū)動(dòng),釋放對(duì)話數(shù)據(jù)價(jià)值
公司是定位于 Salestech領(lǐng)域的一家新銳人工智能創(chuàng)業(yè)公司,為中國(guó)企業(yè)的銷售團(tuán)隊(duì)提供基于會(huì)話智能和數(shù)據(jù)驅(qū)動(dòng)的新一代銷售賦能平臺(tái)(
嗶哩嗶哩(bilibili)
互聯(lián)網(wǎng) 5001-10000人
Bilibili使用云智慧監(jiān)控寶監(jiān)測(cè)全球用戶的訪問(wèn)體驗(yàn)
客戶介紹
嗶哩嗶哩(英文名稱:bilibili,簡(jiǎn)稱B站)現(xiàn)為中國(guó)年輕世代高度聚集的文化社區(qū)和視頻平臺(tái) ,該網(wǎng)站于2009年6月26日創(chuàng)建,被粉絲們親切地稱為B
京東
互聯(lián)網(wǎng) 10000人以上
云智慧攜手京東分享618零癱瘓的訣竅
客戶介紹
京東JD.COM-專業(yè)的綜合網(wǎng)上購(gòu)物商城,銷售超數(shù)萬(wàn)品牌、4020萬(wàn)種商品,囊括家電、手機(jī)、電腦、母嬰、服裝等13大品類。秉承客戶為先的理念,京東所售
查看更多
同類產(chǎn)品推薦
查看更多
微軟azure
2.9
41條點(diǎn)評(píng)
在本地、混合、多云或邊緣環(huán)境中 - 在 Azure 上創(chuàng)建面向未來(lái)的安全云解決方案。
阿里云-Web應(yīng)用防火墻
2.6
8條點(diǎn)評(píng)
避免網(wǎng)站服務(wù)器被惡意入侵,保障業(yè)務(wù)的核心數(shù)據(jù)安全,解決因惡意攻擊導(dǎo)致的服務(wù)器性能異常問(wèn)題。
左脈千帆云
暫無(wú)評(píng)分
1條點(diǎn)評(píng)
左脈千帆云是一家銷售賦能的 AI-SaaS 企業(yè)解決方案服務(wù)商
用友NC Cloud
2.5
21條點(diǎn)評(píng)
大型企業(yè)數(shù)字化平臺(tái)。
PythonAnywhere
3.3
20條點(diǎn)評(píng)
在云中托管、運(yùn)行和編寫Python!
產(chǎn)品對(duì)比
更多同類產(chǎn)品比較