沙龍回顧丨云計(jì)算進(jìn)入多元架構(gòu),云原生時(shí)代的挑戰(zhàn)與機(jī)遇

近日,京東云聯(lián)合英特爾舉辦“破局丨云原生時(shí)代IT基礎(chǔ)設(shè)施變革”技術(shù)沙龍,來自京東的4位技術(shù)大咖分別就混合多云基礎(chǔ)發(fā)展趨勢、京東在大規(guī)模集群管理的遇到的問題及解決方式、京東DevOps破局以及混合多云下PaaS組件接入的挑戰(zhàn)及難點(diǎn)等話題展開分享,揭秘混合多云基礎(chǔ)設(shè)施的發(fā)展與變革,為企業(yè)數(shù)字化轉(zhuǎn)型提供借鑒意義。
云原生的出現(xiàn),帶來了一種新的建設(shè)思路和開發(fā)模式。從技術(shù)特征來看,云原生所具備極致的彈性能力、服務(wù)自治故障自愈能力、大規(guī)模可復(fù)制能力,極大發(fā)揮了云的優(yōu)勢,提升業(yè)務(wù)應(yīng)用的迭代速度,加速數(shù)字基礎(chǔ)設(shè)施升級。而今越來越多的企業(yè)愿意技術(shù)架構(gòu)向“云原生”演進(jìn),Gartner報(bào)告就曾預(yù)測到2022 年,將有75%的全球化企業(yè)將在生產(chǎn)中使用云原生的容器化應(yīng)用。
隨著云原生的持續(xù)升溫,它跨過了概念階段,逐漸的進(jìn)入到了應(yīng)用落地的快速發(fā)展期,越來越多的企業(yè)意識到僅改變IT基礎(chǔ)設(shè)施已經(jīng)無法滿足當(dāng)前業(yè)務(wù)需求,也難以快速應(yīng)對多方面的挑戰(zhàn),如何高效管理多種基礎(chǔ)設(shè)施?如何在應(yīng)用開發(fā)及業(yè)務(wù)創(chuàng)新層面實(shí)現(xiàn)運(yùn)營效率提升?本期沙龍與開發(fā)者進(jìn)行了深入的互動(dòng)和技術(shù)交流。下文是由四位老師演講內(nèi)容整理而成:

京東云事業(yè)群高級總監(jiān) 何小鋒
IT基礎(chǔ)設(shè)施指用于支持政府、企業(yè)級特殊需求個(gè)體的IT環(huán)境所需要的一系列IT硬件資源及基礎(chǔ)軟件的集合,主要包括計(jì)算資源、存儲(chǔ)資源、網(wǎng)絡(luò)資源、實(shí)現(xiàn)虛擬化及管理服務(wù)器的底層軟件。按照部署環(huán)境的不同,IT基礎(chǔ)設(shè)施可劃分為傳統(tǒng)IT基礎(chǔ)設(shè)施和云基礎(chǔ)設(shè)施。部署在非云環(huán)境下的基礎(chǔ)設(shè)施為傳統(tǒng)IT基礎(chǔ)設(shè)施,部署在云計(jì)算環(huán)境下成為云基礎(chǔ)設(shè)施,其中云基礎(chǔ)設(shè)施可以繼續(xù)分為公有云基礎(chǔ)設(shè)施和私有云基礎(chǔ)設(shè)施。
企業(yè)數(shù)字化轉(zhuǎn)型的需求、云計(jì)算技術(shù)的不斷成熟并在各個(gè)行業(yè)的持續(xù)滲透,大數(shù)據(jù)、人工智能、物聯(lián)網(wǎng)等技術(shù)持續(xù)創(chuàng)新也給云計(jì)算服務(wù)帶來更大的市場發(fā)展空間,《Frost&Sullivan》研究報(bào)告曾預(yù)測:中國的云基礎(chǔ)設(shè)施市場的年復(fù)合增長速度將達(dá)到 37.0%,并在 2023 年達(dá)到 4935.9億元的市場規(guī)模。

《Frost&Sullivan》研究報(bào)告
混合多云發(fā)展趨勢
伴隨著IT基礎(chǔ)設(shè)施的高速增長,混合多云的理念持續(xù)深入,依托多云管理、云網(wǎng)協(xié)同、安全能力的提升,越來越多的企業(yè)愿意采用混合云部署方式。
從我國政策方面看,“十四五”規(guī)劃和2035年遠(yuǎn)景目標(biāo)綱要草案中將“加快數(shù)字發(fā)展,建設(shè)數(shù)字中國”作為獨(dú)立篇章,描繪了未來五年數(shù)字中國建設(shè)的新藍(lán)圖。具體到云計(jì)算產(chǎn)業(yè),規(guī)劃綱要草案指出,要加快推進(jìn)云操作系統(tǒng)迭代升級,推動(dòng)超大規(guī)模分布式存儲(chǔ)、彈性計(jì)算、數(shù)據(jù)虛擬隔離等技術(shù)創(chuàng)新,提高云安全水平,并以混合云為重點(diǎn)培育行業(yè)解決方案、系統(tǒng)集成、運(yùn)維管理等云服務(wù)產(chǎn)業(yè)。
從行業(yè)的發(fā)展趨勢上看,在全球范圍內(nèi),混合云已經(jīng)成為企業(yè)用云的主要形式。從國內(nèi)市場來看,企業(yè)應(yīng)用混合云的比例仍處于較低水平,但有很大潛力和成長空間。據(jù)《Flexera:2020年云計(jì)算報(bào)告》調(diào)查顯示,86%的企業(yè)正在使用多個(gè)公有云服務(wù);60%的企業(yè)報(bào)告使用多個(gè)私有云;53%的企業(yè)同時(shí)使用多種公有云和私有云的混合。

Flexera:2020年云計(jì)算報(bào)告
企業(yè)在使用混合云的過程中也面臨挑戰(zhàn),一方面,多云架構(gòu)的復(fù)雜性帶來多云管理的復(fù)雜性。
另一方面,多云管理工具對于經(jīng)濟(jì)高效地管理云資源以及確保強(qiáng)大的治理和安全性至關(guān)重要,然而,只有三分之一的組織在利用多云管理工具。
云原生混合多云管理平臺-京東云云艦
隨著數(shù)字化時(shí)代的到來,混合云已經(jīng)成了兵家必爭之地,頭部云廠商持續(xù)在混合云加大投入。企業(yè)在選擇混合云廠商會(huì)面臨三個(gè)問題:
1、不同的云廠商提供過的服務(wù)能力、PaaS不一致
2、容易被公有云廠商鎖定,成本高,不能方便的進(jìn)行跨云遷移
3、沒有一致的用戶體驗(yàn),對開發(fā)者不友好,交付效率不高。
云原生作為云計(jì)算下一代技術(shù)基礎(chǔ),已成為事實(shí)標(biāo)準(zhǔn),憑借其極致的彈性能力、服務(wù)自治故障自愈能力、大規(guī)模可復(fù)制能力、異構(gòu)資源標(biāo)準(zhǔn)化的架構(gòu)特性可以有效解決上述面臨的三個(gè)問題,并快速幫助企業(yè)實(shí)現(xiàn)數(shù)字化轉(zhuǎn)型。
京東是云原生最早的實(shí)踐者和受益者之一。早在2014年,京東就率先將Docker容器技術(shù)大規(guī)模應(yīng)用至生產(chǎn)環(huán)境。2016年成功從OpenStack切換到JDOS 2.0的Kubernetes技術(shù)棧,打造了完整高效的PaaS平臺。基于內(nèi)部實(shí)踐和技術(shù)積累,京東云構(gòu)建了云原生混合多云管理平臺——京東云云艦。云艦提供一致的容器運(yùn)行環(huán)境(COS) 、PaaS能力(T-PaaS)和應(yīng)用開發(fā)運(yùn)行平臺(DevOps) 。基于京東多年云原生的大規(guī)模容器、PaaS、DevOps和微服務(wù)實(shí)踐,幫助客戶構(gòu)建云計(jì)算場景,在異構(gòu)基礎(chǔ)設(shè)施上提供一致的能力,簡化跨云遷移,可以真正做到“上的去,下的來”。

京東零售Kubernetes負(fù)責(zé)人 周光
京東云原生平臺演進(jìn)之路
京東的容器建設(shè)始于2014年,作為國內(nèi)最早大規(guī)模在生產(chǎn)環(huán)境進(jìn)行容器化部署的公司之一,京東的云原生平臺JDOS演進(jìn)也經(jīng)歷了幾個(gè)階段,2014年基于Openstack的JDOS1.0上線,實(shí)現(xiàn)了業(yè)務(wù)隔離;2015年經(jīng)歷了618和11.11兩次大促的考驗(yàn),具備了秒級伸縮功能;2016年完備了鏡像中心和監(jiān)控體系并持續(xù)對網(wǎng)絡(luò)和存儲(chǔ)層進(jìn)行優(yōu)化;2017年擁抱開源,大規(guī)模使用Kubernetes,形成了以kubernetes為基礎(chǔ)的應(yīng)用容器平臺JDOS 2.0;2018年上線阿基米德調(diào)度體系,基于應(yīng)用特性做持續(xù)優(yōu)化;從2019年開始,我們的云原生平臺開始支持大數(shù)據(jù)相關(guān)的業(yè)務(wù),在離線計(jì)算、在線計(jì)算都有一些成果;2020年在跨集群、跨機(jī)房等這些保障方面做了一些工作。
目前,業(yè)務(wù)層面來看,目前京東商城核心交易都跑在云原生平臺上;集團(tuán)內(nèi)的供應(yīng)鏈、物流等業(yè)務(wù)也都在使用JDOS平臺;技術(shù)層面來看,京東自己的基礎(chǔ)中間件包括數(shù)據(jù)庫業(yè)務(wù)、分布式緩存、消息系統(tǒng)等也全部使用容器化在管理;一些計(jì)算系統(tǒng)相關(guān)的,例如離線計(jì)算、AI算力相關(guān)的系統(tǒng)也正在全面擁抱容器化。
京東如何用云原生關(guān)鍵技術(shù)實(shí)踐賦能技術(shù)團(tuán)隊(duì)
先說一下大家都比較關(guān)注的流水線發(fā)布。理想的狀態(tài),應(yīng)用部署在測試環(huán)節(jié)通過的情況下就可以直接上線,但真實(shí)的情況是面對京東非常復(fù)雜的核心系統(tǒng),上線步驟非常多,測試環(huán)境通過通過了部署到生產(chǎn)環(huán)境還會(huì)不會(huì)出現(xiàn)意想不到的問題,需要預(yù)熱的緩存不預(yù)熱會(huì)不會(huì)出現(xiàn)什么問題,這些情況如果人工驗(yàn)證需要花費(fèi)大量的人力成本,所以我們必須基于容器構(gòu)建高效的流水線。那么我們現(xiàn)在的流水線發(fā)布具備以下3個(gè)特點(diǎn):
1、流水線僅需簡單配置即可自動(dòng)化完成摘量、更新、校驗(yàn)、自動(dòng)化測試、掛量等操作,達(dá)到快速部署、敏捷試錯(cuò)。
2、支持自定義流水線、自定義流水線節(jié)點(diǎn),且流水線在設(shè)計(jì)時(shí)增加外部接入點(diǎn),方便將各研發(fā)團(tuán)隊(duì)的能力集成到流水線中,確保產(chǎn)品的能夠高可用、可持續(xù)、高質(zhì)量且安全的快速交付價(jià)值。
3、支持多種項(xiàng)目管理系統(tǒng)的對接集成,通過API接口調(diào)用、JSF接口形式以及JMQ消息的形式完成對接,貫穿項(xiàng)目需求、任務(wù)、人員同持續(xù)集成環(huán)節(jié)的信息流,完整的管理整個(gè)項(xiàng)目生命周期。
再談一下大家比較關(guān)注的中間件部署。京東的基礎(chǔ)服務(wù)全部基于微服務(wù)來做,目前也在大規(guī)模使用service mesh,基于容器平臺我們可以快速完成單元化部署,在不同城市的機(jī)房可以分發(fā)流量到不同的單元,在大促的時(shí)候,這種方式可以保障系統(tǒng)的穩(wěn)定和快速切換。
最后說一下京東的阿基米德調(diào)度。京東有大量的服務(wù)器資源,以往在大促前各個(gè)業(yè)務(wù)主要靠新增機(jī)器來應(yīng)對高峰的瞬時(shí)流量,應(yīng)用業(yè)務(wù)系統(tǒng)資源申請量和使用量之間差距巨大,同時(shí),資源使用呈現(xiàn)明顯的高峰低谷,不同的機(jī)器的資源使用率差距較大。而且也面臨著資源碎片和時(shí)空不均的情況。阿基米德調(diào)度是怎么解決這些問題的呢?
1、基于預(yù)測的智能調(diào)度:利用機(jī)器學(xué)習(xí)、深度學(xué)習(xí)算法,對應(yīng)用的資源使用情況進(jìn)行畫像統(tǒng)計(jì),并能對應(yīng)用的未來資源使用情況進(jìn)行預(yù)測,將在線與離線應(yīng)用合理的進(jìn)行混合調(diào)度部署。
2、監(jiān)控指標(biāo)的精準(zhǔn)驅(qū)逐與碎片整理:由于不同批次采購的服務(wù)器規(guī)格性能不同,通過批處理任務(wù)進(jìn)行統(tǒng)一填充式調(diào)度,以達(dá)到資源碎片的填充利用和資源的時(shí)空復(fù)用的效果。
3、調(diào)度器仿真系統(tǒng)及回放功能:通過模擬器+線上數(shù)據(jù)回放,對調(diào)度請求進(jìn)行仿真模擬,形成新的數(shù)據(jù)建模,并優(yōu)化調(diào)度方案,為智能調(diào)度提供更優(yōu)方案。
京東通過阿基米德平臺的高效調(diào)度實(shí)現(xiàn)靈活高效的IT基礎(chǔ)設(shè)施,提升行業(yè)資源效率,降低IT成本,將其打造成為行業(yè)的公共基礎(chǔ)設(shè)施服務(wù),實(shí)現(xiàn)行業(yè)共享的價(jià)值最大化。
京東如何用云原生關(guān)鍵技術(shù)實(shí)踐賦能技術(shù)團(tuán)隊(duì)
最后我們通過一個(gè)案例,來看下基于云原生平臺,京東是怎么部署實(shí)時(shí)計(jì)算和離線計(jì)算的。

京東的實(shí)時(shí)計(jì)算體量很大,目前都是部署在云原生平臺上來做,我們現(xiàn)在要保證的是實(shí)時(shí)計(jì)算系統(tǒng)在平臺上的穩(wěn)定性,這是非常難的一點(diǎn),因?yàn)閷?shí)時(shí)計(jì)算系統(tǒng)和一般的應(yīng)用不同,舉例來說,當(dāng)機(jī)器故障、磁盤有問題、CPU負(fù)載等狀態(tài)時(shí),容器會(huì)受到影響,部署在容器上的實(shí)時(shí)計(jì)算就會(huì)變慢,這個(gè)時(shí)候就需要我們介入去分析這個(gè)影響。比如CPU達(dá)到一定的異常負(fù)載,就應(yīng)該驅(qū)除這種負(fù)載,但是對驅(qū)除要有一個(gè)分析,比如在線的應(yīng)用,因?yàn)榭梢詫?shí)時(shí)感知到流量的變化去進(jìn)行自動(dòng)調(diào)動(dòng),就不需要驅(qū)逐。而且驅(qū)逐要分層,實(shí)時(shí)計(jì)算可能有社會(huì)級、公司級、部門級,我們研究不同的級別,從低往高進(jìn)行批量適當(dāng)?shù)姆植襟E的進(jìn)行驅(qū)逐,以達(dá)到容器運(yùn)行的穩(wěn)定。這是容器和實(shí)時(shí)計(jì)算結(jié)合的一個(gè)難點(diǎn)。
接下來再說離線計(jì)算,我們先看一張圖。

左邊這種圖顯示,在凌晨的時(shí)候,因?yàn)橐?jì)算前一天的各種數(shù)據(jù)各種報(bào)表,離線系統(tǒng)的CPU使用率會(huì)飆高。而右邊的圖展示了商城交易業(yè)務(wù)因?yàn)樵诹璩渴褂玫娜松伲訡PU使用率極低。那么是否可以通過容器進(jìn)行調(diào)度,把凌晨閑置的交易業(yè)務(wù)的CPU資源調(diào)度起來支持離線計(jì)算系統(tǒng),保證離線計(jì)算不受影響支持業(yè)務(wù)?
在把這種美好的想法落地的時(shí)候還是遇到了一些坑,第一個(gè)問題就是磁盤,當(dāng)時(shí)資源調(diào)度的主要是批處理的業(yè)務(wù),這種任務(wù)對磁盤的容量要求不太大,但是對磁盤I/O要求很高,這就擠占了原本跑在上邊的在線敏感業(yè)務(wù),所以我們按照容器級別對I/O進(jìn)行了控制,通過對不同業(yè)務(wù)的I/O進(jìn)行控制,保證在不影響在線業(yè)務(wù)的情況下調(diào)配資源給遷移過來的離線任務(wù),增加混部密度。
第二個(gè)問題是CPU的分級調(diào)度,雖然在系統(tǒng)層面我們做了一些控制但是先計(jì)算調(diào)度過來還是對系統(tǒng)有沖擊,比如CPU利用率會(huì)飆升,我們通過降低離線的任務(wù)的CPU權(quán)重,實(shí)現(xiàn)Job調(diào)度類,來管理離線業(yè)務(wù)。如圖所示進(jìn)行離線任務(wù)的分級和控制,可以在在線業(yè)務(wù)服務(wù)質(zhì)量的不下降的前提下,提高整機(jī)CPU利用率,達(dá)到降本增效的目的。
最后一塊是網(wǎng)絡(luò),調(diào)度過程中有可能引起網(wǎng)絡(luò)的堵塞和抖動(dòng)影響到在線業(yè)務(wù)。我們通過兩個(gè)方式來解決這個(gè)問題,一個(gè)是業(yè)務(wù)分級,在容器內(nèi)對業(yè)務(wù)打標(biāo),保證在線業(yè)務(wù)的高優(yōu)先級在node節(jié)點(diǎn)優(yōu)先轉(zhuǎn)發(fā)并確保交換機(jī)的轉(zhuǎn)發(fā)策略一致;第二是業(yè)務(wù)限流,對同一優(yōu)先級pod總流量限流和針對單一pod限流來解決網(wǎng)絡(luò)帶來的問題。
最后總結(jié)一下,經(jīng)過7年的技術(shù)演進(jìn),我們支撐了京東零售百萬級的容器部署、調(diào)度和穩(wěn)定性的挑戰(zhàn),幫助業(yè)務(wù)技術(shù)團(tuán)隊(duì)具備編譯構(gòu)建、流水線發(fā)布、中間件部署、serverless等關(guān)鍵技術(shù)實(shí)踐,很好地支撐了業(yè)務(wù)的發(fā)展。同時(shí)也積極探索在大數(shù)據(jù)和AI系統(tǒng)的云原生化,為降本增效做出了很好的實(shí)踐。

京東云事業(yè)群總監(jiān) 賀玉芝
數(shù)字化時(shí)代,政企客戶軟件交付普遍會(huì)面臨人員能力不足、工程管理規(guī)范混亂、工具選擇和維護(hù)成本高等普遍困境。那么在這種困境下,企業(yè)如何實(shí)現(xiàn)上下同域?如何敏捷轉(zhuǎn)型?如何按需交付實(shí)現(xiàn)更快的價(jià)值?質(zhì)量效率和穩(wěn)定性到底如何更好的提升?這是政企客戶面臨的一個(gè)巨大難題。接下來將通過幾個(gè)方面來詮釋京東如何探索解決這些問題的。
京東DevOps高效研發(fā)破局之道

上圖是京東高效交付的黃金三角鏈路,我們提供一站式覆蓋軟件交付的整個(gè)全生命周期的DevOps工具平臺,基于工具平臺提供的DevOps能力可以支撐京東萬人研發(fā)去建機(jī)制,組流程,落實(shí)踐,并且效能度量又可以利用數(shù)據(jù)反向驅(qū)動(dòng)效能提升,實(shí)現(xiàn)效能的閉環(huán)。這個(gè)黃金三角鏈路目前支撐京東近兩萬研發(fā)的管理和工程實(shí)踐,目前在系統(tǒng)里承載的項(xiàng)目數(shù)和應(yīng)用數(shù)達(dá)到三萬,單日部署九千多次,這幫助我們實(shí)現(xiàn)了更快更可靠,端到端可持續(xù)的交付價(jià)值。

上圖是DevOps落地全景圖,從過程改進(jìn)角度看,我們的平臺功能模塊覆蓋需求管理、研發(fā)過程管理、敏捷開發(fā)、測試、發(fā)布、運(yùn)維運(yùn)營及整個(gè)軟件交付生命周期管理。在此功能之上,需求統(tǒng)一收口、透明可視化流程流轉(zhuǎn)、需求透明流轉(zhuǎn)和跟蹤以及研發(fā)過程管理如何靈活的排兵布陣,均是能夠從源頭保證資源靈活調(diào)整,實(shí)現(xiàn)資源最大化。
從工程實(shí)踐角度看,京東在開發(fā)、測試和運(yùn)維也有著豐富的最佳實(shí)踐落地,比如需求和代碼、流水線、發(fā)布、測試、上線等實(shí)現(xiàn)雙向的關(guān)聯(lián),或者是代碼提交后自動(dòng)驅(qū)動(dòng)觸發(fā)持續(xù)集成,持續(xù)部署、持續(xù)交付,同時(shí)京東也在持續(xù)關(guān)注整個(gè)研發(fā)交付周期里的交付效率和交付能力,形成全集團(tuán)的統(tǒng)一標(biāo)準(zhǔn)。
支撐萬人研發(fā)的管理和工程實(shí)踐
當(dāng)業(yè)務(wù)復(fù)雜到一定程度,協(xié)作的團(tuán)隊(duì)越來越多,能否保證拉通需求和研發(fā),能否保證在敏捷研發(fā)的體系下協(xié)同成為了最大的難題。京東是如何做的呢?

如上圖所示,協(xié)同的最頂層是戰(zhàn)略協(xié)同,那么從戰(zhàn)略開始就需要通過OKR層層分解,用項(xiàng)目支撐OKR落地。同時(shí),也要從組織的角度自上而下的關(guān)注業(yè)務(wù)的價(jià)值,做統(tǒng)一的產(chǎn)品需求規(guī)劃,包括業(yè)務(wù)需求、用戶需求、產(chǎn)品需求等,也要做層層拆分,將不同的子需求受理到不同的研發(fā)團(tuán)隊(duì)支撐它流轉(zhuǎn)、迭代、發(fā)布上線、度量、運(yùn)營等,保證需求和研發(fā)打通,形成業(yè)務(wù)閉環(huán)。
從組織協(xié)同角度,需求流轉(zhuǎn)時(shí),支持跨企業(yè)跨部門跨項(xiàng)目跨產(chǎn)品流轉(zhuǎn),在縱向可以看到通過項(xiàng)目去管理項(xiàng)目的范圍、進(jìn)度、成本、質(zhì)量、風(fēng)險(xiǎn),實(shí)現(xiàn)敏態(tài)&穩(wěn)態(tài)項(xiàng)目管理的雙模,從工程實(shí)踐角度,去雙向關(guān)聯(lián)代碼,實(shí)現(xiàn)所有過程的流轉(zhuǎn)都是可追溯的,最后以一個(gè)全局的視角去關(guān)注用戶價(jià)值以及研發(fā)整個(gè)鏈路中的各個(gè)環(huán)節(jié)。
通過這套機(jī)制,可以在大型研發(fā)組織中打破“組織煙囪”,確保需求在研發(fā)流程中正常流轉(zhuǎn),讓研發(fā)團(tuán)隊(duì)目標(biāo)對齊,協(xié)同為用戶提供價(jià)值。
支撐萬人研發(fā)的效能度量體系
數(shù)字化轉(zhuǎn)型過程中,研發(fā)效能成為企業(yè)核心競爭力。京東的研發(fā)效能度量工具,目標(biāo)是希望高效交付用戶價(jià)值,讓研發(fā)效能可量化、可分析、可提升。所以在流程方面,首先定義了核心效能指標(biāo),通過結(jié)果指標(biāo)評估結(jié)果,通過過程指標(biāo)指導(dǎo)改進(jìn),同時(shí)建立了價(jià)值流交付模型,通過度量平臺采集DevOps工具網(wǎng)絡(luò)的各類數(shù)據(jù),形成度量報(bào)表。基于效能分析模型逐層下鉆,找到影響效率或質(zhì)量的根因,最終去量化驅(qū)動(dòng)改進(jìn)。

上圖是效能度量平臺的邏輯架構(gòu),總體分為四層。接入層支持JDBC等不同方式的數(shù)據(jù)接入;存儲(chǔ)層對維度表、匯總表進(jìn)行匯聚,形成各項(xiàng)指標(biāo);在統(tǒng)計(jì)分析層做實(shí)時(shí)處理、離線處理或者智能分析、效能告警,最終在展現(xiàn)層為不同的用戶,包括管理者、最高決策層、業(yè)務(wù)負(fù)責(zé)人,最終提供一個(gè)全鏈路、多層級、多角色、多維度的效能報(bào)表。


針對不同層級關(guān)心的指標(biāo)不同,我們也設(shè)置了個(gè)性化的儀表盤幫助他們各取所需,提升最核心的指標(biāo)。
京東DevOps一體化平臺
根據(jù)Forester報(bào)告,42%的企業(yè)的痛點(diǎn)是需要整合企業(yè)內(nèi)部既有的4到10個(gè)DevOps工具;而根據(jù)Gartner的報(bào)告,70%的企業(yè)需要用業(yè)務(wù)價(jià)值流驅(qū)動(dòng)實(shí)現(xiàn)更快交付。京東DevOps平臺也經(jīng)歷了從信息化過渡到平臺化演進(jìn)到數(shù)智化的階段。

上圖是DevOps平臺的整體架構(gòu),這里引入了DDD建模思想。在底層我們把通用的支撐領(lǐng)域下沉,成為平臺基礎(chǔ)組件,實(shí)現(xiàn)業(yè)務(wù)領(lǐng)域的所有的組件都復(fù)用基礎(chǔ)組件;核心業(yè)務(wù)領(lǐng)域我們采用的是前后端分離的架構(gòu),在前端我們采用微前端的架構(gòu),后端我們采用微服務(wù)的架構(gòu)。
基于這種架構(gòu),讓DevOps平臺具備了完備的可配置性和可擴(kuò)展性:平臺底座基于微前端架構(gòu),通過組件化技術(shù),支持用戶自研組件的注冊、熱插拔,能方便、快捷地集成私有化用戶的自研系統(tǒng);可二次開發(fā)功能擴(kuò)展點(diǎn),滿足個(gè)性化業(yè)務(wù)功能需求。流水線具有豐富的原子能力,如編譯、部署、測試以及常用工具(sh/mail等),并支持用戶自定義原子能力。
最后總結(jié)一下,京東云DevOps平臺-行云統(tǒng)一支撐京東集團(tuán)內(nèi)部,包含京東零售/科技 /物流/保險(xiǎn)等多種業(yè)態(tài);通過京東高效交付的黃金三角鏈路,幫助企業(yè)內(nèi)部拉通研發(fā)和需求,讓大規(guī)模協(xié)同成為可能;通過建立科學(xué)的度量體系,幫助團(tuán)隊(duì)識別研發(fā)瓶頸,解決研發(fā)效能的痛點(diǎn);而具備Open API、插件生態(tài)、組件化能力和多層級選線管控的DevOps數(shù)智化基礎(chǔ)設(shè)施是支撐這一切的基石。

京東云事業(yè)群總監(jiān) 王碧波
隨著越來越多的企業(yè)擁抱云原生,混合多云開始成為主流場景,同時(shí)也是非常復(fù)雜的場景。當(dāng)PaaS遇到混合多云時(shí),會(huì)出現(xiàn)一些痛點(diǎn),總結(jié)起來3大類:PaaS能力不足、多云PaaS能力不統(tǒng)一、PaaS能力不夠云原生。為了解決這些痛點(diǎn),一般會(huì)采用五種解決方案,這些方案各有優(yōu)劣,京東采用的是“云原生平臺+PaaS市場”的方案。
構(gòu)建云艦TPaaS技術(shù)中臺一站式解決混合多云挑戰(zhàn)
采用“云原生平臺+PaaS市場”的方法,可以在各種私有云、多云、混合云環(huán)境為客戶提供一致的數(shù)據(jù)庫和中間件等各類基礎(chǔ)技術(shù)組件能力,我們將其取名為云艦-TPaaS。
因?yàn)榫〇|PaaS能力非常多,將這些PaaS能力以統(tǒng)一的方式提供出來,就要選擇非常好的基礎(chǔ)、非常統(tǒng)一的方式來做。在這個(gè)基礎(chǔ)上將PaaS運(yùn)維運(yùn)行需要的標(biāo)準(zhǔn)能力,以統(tǒng)一的方式接入到市場里面,接入后PaaS能力可以以非常靈活的方式按需使用。
云艦-TPaaS支持各種主流公有云、私有云、物理機(jī)、虛擬機(jī),支持各種網(wǎng)絡(luò)模型、存儲(chǔ)模型,支持多云多集群的管理。既支持創(chuàng)建京東的K8S集群,也可以基于各家云平臺去創(chuàng)建京東K8S集群;還可以對接各家云平臺的API接口,實(shí)現(xiàn)集群自動(dòng)創(chuàng)建自動(dòng)伸縮,同時(shí)也支持納管客戶已有的標(biāo)準(zhǔn)集群。背后的實(shí)現(xiàn)是基于社區(qū)的Cluster API來實(shí)現(xiàn)的,它通過提供聲明式API和工具,來簡化集群的部署和整個(gè)生命周期的管理。
京東基于這套工具來實(shí)現(xiàn)擴(kuò)展的技術(shù)架構(gòu)的支持。它定義集群、機(jī)器這樣一些標(biāo)準(zhǔn)的模型,針對標(biāo)準(zhǔn)模型實(shí)現(xiàn)標(biāo)準(zhǔn)控制器,用這些控制器來根據(jù)聲明的集群聲明,自動(dòng)將集群構(gòu)建出來。實(shí)現(xiàn)里面每一種云的基礎(chǔ)設(shè)施都可以有自己的描述,然后針對定義的描述可以實(shí)現(xiàn)相應(yīng)云基礎(chǔ)設(shè)施的協(xié)同。
隨后,王碧波老師分享了五個(gè)TPaaS組件示例,PostgreSQL、Redis、ChubaoFS、SGM、MPaaS,通過組件的特性展示了基于云艦是如何通過大量云原生TPaaS組件統(tǒng)一混合多云場景的PaaS能力。
云艦TPaaS如何賦能業(yè)務(wù)場景
先說云艦TPaaS如何解決京東內(nèi)部的多場景統(tǒng)一架構(gòu)場景的。京東有龐大的內(nèi)部系統(tǒng),需要基于物理基礎(chǔ)設(shè)施部署PaaS能力;又有公有云產(chǎn)品,需要基于IaaS環(huán)境之上的PaaS能力;同時(shí)各類京東產(chǎn)品的對外賦能又需要將PaaS部署在客戶各種已有基礎(chǔ)設(shè)施之上。這些不同場景在之前應(yīng)用的不同的技術(shù)棧,導(dǎo)致研發(fā)、運(yùn)維工作無法對齊。通過我們把PaaS能力搬到標(biāo)準(zhǔn)k8s之上,我們這三塊的需求實(shí)現(xiàn)多場景的統(tǒng)一架構(gòu),在這三套里面都是基于同一套平臺去運(yùn)行同樣的基礎(chǔ)的組件,通過這種方式實(shí)現(xiàn)技術(shù)架構(gòu)的統(tǒng)一以及研發(fā)成本的節(jié)約,也保證了運(yùn)行的穩(wěn)定性,降低了交付難度。
再來看一個(gè)增強(qiáng)私有云能力的案例。客戶在自有的私有云上面建設(shè)了Kubernetes集群,但部署的數(shù)據(jù)庫和中間件都是開源的組件,沒有專業(yè)的技術(shù)人員能深入了解所使用的開源組件,導(dǎo)致他們的數(shù)據(jù)庫、中間件在穩(wěn)定性上一直存在問題,同時(shí)也缺乏系統(tǒng)的管理能力。客戶接入云艦平臺TpaaS后,利用TpaaS數(shù)據(jù)庫和中間件的組件,使它整套系統(tǒng)的穩(wěn)定性、性能、管控能力有了很大的提升,可以更高性能、更穩(wěn)定的支撐新的業(yè)務(wù)。

最后再看一個(gè)多云統(tǒng)一平臺的案例。客戶原來只使用一家公有云,隨著業(yè)務(wù)的擴(kuò)張,原有公有云服務(wù)商從產(chǎn)品到服務(wù)再到價(jià)格都出現(xiàn)了很多問題。但是因?yàn)榭蛻羰褂昧诉@家公有云特有的PaaS產(chǎn)品,導(dǎo)致切換云服務(wù)商或者采用第二家云服務(wù)商非常困難,從而也無法進(jìn)行成本優(yōu)化。為了解決多云的問題,在部署了云艦TPaaS后,將新業(yè)務(wù)切換到在公有云上使用云艦TPaaS,這樣就在多個(gè)公有云上有了一套統(tǒng)一的容器PaaS和DevOps能力,解綁了單一公有云的限制。后續(xù)也會(huì)在私有云上也接入云艦平臺TpaaS,真正實(shí)現(xiàn)了混合多云的統(tǒng)一能力。

總之,在混合多云的場景里,原有的PaaS使用方式有很多問題,我們選擇了Kubernetes作為一個(gè)新的云時(shí)代的操作系統(tǒng)的底座,把我們所有的PaaS能力搬到Kubernetes上,然后以云原生Kubernetes的技術(shù)和理念去重新實(shí)現(xiàn)整套PaaS的能力,從而使我們整套PaaS能力既可以去補(bǔ)充客戶現(xiàn)有的IaaS能力的不足,也可以幫助客戶把業(yè)務(wù)實(shí)現(xiàn)混合多云的架構(gòu),還可以幫助客戶的業(yè)務(wù)能力在他的客戶那里做私有化的部署。
數(shù)智化的浪潮已來臨,我們每個(gè)人身處其中。從生產(chǎn)、經(jīng)貿(mào)、研發(fā)再到生活的方方面面,京東云正在全方位賦能產(chǎn)業(yè),創(chuàng)造更大價(jià)值。未來,京東云還將開放哪些技術(shù)和能力,幫助傳統(tǒng)企業(yè)抓住轉(zhuǎn)型的機(jī)遇,讓我們拭目以待。
點(diǎn)擊【閱讀原文】查看技術(shù)沙龍視頻回放,回復(fù)關(guān)鍵詞“PPT210327”獲取演講 PPT和視頻資料。



