問答時間:2021年3月4日
嘉賓簡介:
鄒輝:現(xiàn)任騰訊云容器產(chǎn)品總經(jīng)理,全面負責(zé)騰訊云容器、Service mesh產(chǎn)品相關(guān)業(yè)務(wù)和團隊管理工作。自2010年加入騰訊以來,先后帶領(lǐng)技術(shù)團隊負責(zé)騰訊內(nèi)部多個高性能通信框架及緩存系統(tǒng),服務(wù)于騰訊內(nèi)部多個海量業(yè)務(wù);2017年開始從無到有搭建騰訊云容器產(chǎn)品,推動容器產(chǎn)品規(guī)模連續(xù)多年保持三位數(shù)以上速度增長,并取得行業(yè)領(lǐng)先地位。
主持人簡介:
吳洪聲(人稱:奶罩):騰訊云中小企業(yè)產(chǎn)品中心總經(jīng)理,DNSPod創(chuàng)始人,洋蔥令牌創(chuàng)始人,網(wǎng)絡(luò)安全專家,域名及DNS技術(shù)專家,知名個人站長,中歐國際工商學(xué)院EMBA。
01
吳洪聲:“云原生行業(yè)沒有標準,云原生行業(yè)全是標準”。從云原生概念到現(xiàn)在,關(guān)于云原生的定義已經(jīng)發(fā)生了很多變化,云原生概念本身也在不斷地生長。企業(yè)、開發(fā)者各自有不同的解讀,行業(yè)各方也有不同的理解。站在騰訊云的角度,我們是如何理解云原生的?
鄒輝:從2013年Matt Stine提出云原生概念,到2015年云原生社區(qū)CNCF成立,再到當前云原生技術(shù)風(fēng)靡全球;越來越多的云廠商加入云原生并對外提供云原生服務(wù)、越來越多的終端用戶使用云原生并發(fā)揚光大,云原生所涵蓋的技術(shù)也越來越多,可以說是百花齊放,但是云原生的邊界具體在哪里,業(yè)界一直沒有一個準確的定義和說法,不同組織和不同人的理解也不一樣。
云原生更多是一種設(shè)計理念,包含面向自動化、彈性擴展、灰度發(fā)布、故障自愈、可觀測性……等等設(shè)計,理念貫穿于軟件的設(shè)計、開發(fā)、部署和運維整個生命周期,告訴企業(yè)如何做才能更好的將云用起來,提升企業(yè)的研發(fā)運維效率,降低企業(yè)的資源成本。
站在騰訊云的角度,我們更多從服務(wù)方的角度來定義云原生,如何讓企業(yè)能夠在上云的過程中,借助云上的服務(wù)更好地將云原生理念落地;所以我們將云原生實踐過程分成了四個階段“開發(fā)云原生”、“計算云原生”、“架構(gòu)云原生”和“數(shù)據(jù)云原生”,每個階段都有多種云原生技術(shù)及衡量標準,因為時間關(guān)系關(guān)于這幾個階段的詳述就不展開。
02
吳洪聲:這幾年在“企業(yè)上云”的號召下,很多企業(yè)開始向云上之路邁進。尤其是不少傳統(tǒng)企業(yè),也將原有的系統(tǒng)進行改造和升級,晃晃悠悠地將業(yè)務(wù)搬到線上。但付出一定的人力和物力后,在面對市場變化和新業(yè)務(wù)增長上并沒有取得相應(yīng)的成效。傳統(tǒng)企業(yè)怎么做到真正的上云?或者說傳統(tǒng)企業(yè)就不適合上云?
鄒輝:企業(yè)上云可大幅降低企業(yè)IT成本以及運維成本,同時云廠商提供了各類開箱即用的解決方案可以有效降低研發(fā)成本。因此,企業(yè)上云是趨勢,但上云過程需要謹慎、仔細考量。
首先,您需要了解云廠商提供的能力是否與企業(yè)當前的硬件、軟件、網(wǎng)絡(luò)、存儲等匹配,如果您的應(yīng)用需要特殊的系統(tǒng)、軟件才能支持,那么您需要評估上云改造的可行性和代價,您可以跟對應(yīng)廠商的售前架構(gòu)師一起梳理企業(yè)IT系統(tǒng)上云的可行性。
上云方案評估可行后,可以把新業(yè)務(wù)和非核心業(yè)務(wù)優(yōu)先遷移到云上,通過這些應(yīng)用的遷移可以積累云平臺的使用經(jīng)驗,即使過程中出現(xiàn)問題也不會對業(yè)務(wù)造成太大影響,等這些應(yīng)用都平穩(wěn)運行后,再把核心業(yè)務(wù)逐步遷移到云平臺。上云的過程可能涉及到IDC跟云平臺應(yīng)用互相調(diào)用的場景,需要應(yīng)用架構(gòu)能夠支持,比如需要統(tǒng)一的服務(wù)發(fā)現(xiàn)與負載均衡,上云過程也是一次業(yè)務(wù)梳理和架構(gòu)優(yōu)化的契機,經(jīng)過上云重構(gòu)能夠讓應(yīng)用更健壯以及更具彈性。
最后要說的是沒有銀彈,短期來看,上云會給企業(yè)帶來陣痛,長期來看,上云會給企業(yè)帶來降本、增效、技術(shù)持久領(lǐng)先等價值,但在市場變化、業(yè)務(wù)增長方面,更多的需要企業(yè)自身去突破。
03
吳洪聲:一個新興概念到真正落地往往需要經(jīng)歷很長一段時間的實踐,這里面包含技術(shù)錘煉、人才培養(yǎng)等多方面的探索。尤其是在互聯(lián)網(wǎng)背景下,企業(yè)業(yè)務(wù)、產(chǎn)品更新周期更短,如何適應(yīng)新態(tài)勢,是企業(yè)最亟待解決的問題。所以,當一個企業(yè)真正擁抱云原生技術(shù),具體要在什么方面來落實?
鄒輝:云原生落實路線分為技術(shù)和組織架構(gòu)方面。
首先,技術(shù)方面。推動應(yīng)用微服務(wù)拆分,應(yīng)用微服務(wù)化后,可以控制服務(wù)自動伸縮的力度,只對需要擴縮容的服務(wù)進行擴縮容,單個微服務(wù)可以做到快速發(fā)布,加快業(yè)務(wù)的功能迭代速度。其次使用容器和kubernetes等云原生技術(shù)棧,不同開發(fā)語言、開發(fā)框架統(tǒng)一使用容器作為交付產(chǎn)物,能有效提升應(yīng)用自動構(gòu)建、發(fā)布的效率,從而提升企業(yè)產(chǎn)品迭代速度。同時使用kubernetes對業(yè)務(wù)容器進行統(tǒng)一的資源調(diào)度,可大幅降低資源成本,結(jié)合tracing/logging/metrics可大幅提升應(yīng)用的可運維性和容災(zāi)能力。
在組織架構(gòu)方面,需要有專業(yè)的效率工程團隊來提供統(tǒng)一的DevOps工具鏈平臺,整個平臺的建設(shè)過程需要跟業(yè)務(wù)方持續(xù)溝通和迭代,確保滿足業(yè)務(wù)的流程需求。業(yè)務(wù)團隊組織架構(gòu)也要順應(yīng)流程的敏捷迭代,團隊內(nèi)部需要高內(nèi)聚,開發(fā)、測試、運維緊密協(xié)作,團隊間需要低耦合,通過統(tǒng)一的流程和接口規(guī)范來交互。
04
吳洪聲:騰訊云目前運營著國內(nèi)云廠商中最大規(guī)模的容器集群,支撐著游戲、微信、廣告等業(yè)務(wù)的數(shù)十億計用戶。那基于不同的用戶、不同的場景騰訊云在容器領(lǐng)域的產(chǎn)品布局是什么?今年騰訊云在容器領(lǐng)域發(fā)力的重點又是怎么樣的?
鄒輝:騰訊云容器服務(wù)目前有非常多的細分產(chǎn)品,服務(wù)于騰訊內(nèi)部客戶,公有云客戶以及私有云客戶:
在公有云計算領(lǐng)域:我們提供了TKE(標準Kubernetes服務(wù))、EKS(Serverless Kubernetes服務(wù)),TKE-Edge(邊緣Kubernetes服務(wù)),TCM(Service Mesh服務(wù)),TCR(企業(yè)版鏡像倉庫服務(wù))。
在私有云領(lǐng)域:我們提供了TCE企業(yè)版(公有云能力的完整輸出,包括上面提到的各種容器服務(wù)),TKE企業(yè)版/TCS(基于容器的PAAS平臺)。
在開源領(lǐng)域:我們提供了TKEStack(TKE的開源版本),SuperEdge(TKE-Edge開源版本)。
基于上述的三個場景,我們會進一步拓展容器這里適用的計算和業(yè)務(wù)場景,比如將容器與云上大數(shù)據(jù)+AI產(chǎn)品結(jié)合推出云原生大數(shù)據(jù)+AI解決方案,容器與混合云場景結(jié)合推出容器混合云解決方案,拓展容器這里的邊界。同時我們也會進一步優(yōu)化TKE這里的產(chǎn)品能力,讓TKE可以做到最極致的效率、最低的成本;比如我們正在做離在線混部、request負載智能推薦、還有基于成本的彈性擴縮容、結(jié)合競價的容器調(diào)度和資源動態(tài)回收能力。
05
吳洪聲:近兩年,混合云開始走到舞臺中心,它既能通過內(nèi)部私有云和本地基礎(chǔ)設(shè)施保證運營持續(xù)性、穩(wěn)定性、安全性,也能借助外部公有云提高速度和敏捷性,豐富客戶互動體驗,從而實現(xiàn)了私有云和公有云獨特的融合。你如何看待混合云的發(fā)展前景?混合云離全面落地應(yīng)用還有多遠?
鄒輝:從行業(yè)客戶來看:大部分頭部企業(yè)都在布局混合云。
混合云是一種部署形態(tài),一方面客戶會由于資產(chǎn)保值、提高議價能力、控制風(fēng)險、減少鎖定等原因選擇混合云。另一方面企業(yè)也會為了獲得不同云服務(wù)商的相對優(yōu)勢,不同云服務(wù)商能力差異的互補選擇多云進行混合業(yè)務(wù)部署。
從技術(shù)來看:容器混合云將成為云廠商混合云方案的主流。
混合云概念在容器技術(shù)普及之前就有了,但一直未能大范圍使用起來,因為基于VM的應(yīng)用部署模式在標準化、擴展性等方面還不是足夠友好,容器生態(tài)幫助企業(yè)解決了標準化管理的問題,使企業(yè)更易于實現(xiàn)多云/混合云敏捷開發(fā)和持續(xù)交付。我們相信容器及Kubernetes技術(shù)的普及,將加快混合云的落地。
從廠商來看:行業(yè)內(nèi)的云廠商都在布局基于容器技術(shù)的混合云解決方案。
騰訊云從去年開始,啟動了基于容器的混合云解決方案。今年上半年,我們將會推出三種模式的混合方案:
第一:開源的TKE發(fā)行版,企業(yè)可以通過騰訊云控制臺一鍵將TKE發(fā)行版安裝到企業(yè)IDC機房中的機器(除了重新安裝外,我們也提供存量自建Kubernetes集群升級到TKE發(fā)行版的能力);通過TKE發(fā)行版,企業(yè)可以在IDC中獲得與公有云TKE完全一致的集群管理體驗,同時企業(yè)可以基于TKE發(fā)行版,進行更多定制化的開發(fā)。在管理面上,企業(yè)可以通過騰訊云上控制面板或者IDC中的TKE發(fā)行版來管理所有的Kubernetes集群。
第二:我們拓展了騰訊云上TKE集群的納管范圍,云上TKE集群可以直接添加用戶IDC中的節(jié)點(節(jié)點與云上TKE集群之間網(wǎng)絡(luò)互通及延時有更高的要求)。
第三:企業(yè)在IDC中的自建Kubernetes集群,可以直接通過安裝騰訊云EKS VK的方式使用騰訊云上的EKS彈性容器資源,將云上的容器資源作為IDC容器資源的一個備份和補充,以應(yīng)對一些突發(fā)流量或者潮汐流量。
06
吳洪聲:TKE是騰訊云容器服務(wù)中的明星產(chǎn)品,主要基于原生Kubernetes來提供以容器為核心、高度可擴展的高性能容器管理平臺。其中獨立部署開源版本TKEStack去年正式宣布開源,上個月加入開放原子開源基金會。你如何看待這個產(chǎn)品開源的意義?你認為企業(yè)開源項目的重點是什么?
鄒輝:TKEStack的開源是騰訊在云原生領(lǐng)域的經(jīng)驗和技術(shù)積累的對外輸出,我們期望通過TKEStack促進人工智能、大數(shù)據(jù)、物聯(lián)網(wǎng)等新技術(shù)在云原生場景下的落地。
另外隨著云原生技術(shù)的推廣和發(fā)展,各種私有化業(yè)務(wù)的研發(fā)、運維、交付標準,以及對應(yīng)的上層應(yīng)用,都將慢慢向云原生的標準對齊。所以我們也會將更多的云原生應(yīng)用,比如中間件、數(shù)據(jù)……這些集成到TKEStack中,讓用戶在實際使用過程中能夠自由選擇和組裝,極大地降低研發(fā)成本,提高交付效率,加速企業(yè)的數(shù)字化轉(zhuǎn)型。
在企業(yè)開源項目的重點這里,我認為開源對企業(yè)自身有著很大的價值,能夠為企業(yè)在商業(yè)版本推廣上帶來馬太效應(yīng),并能夠消除客戶被廠商綁定的顧慮,同時通過開源來建立標準,形成生態(tài),也是對產(chǎn)品發(fā)展的重要支撐。
在企業(yè)開源的過程中,要把開源項目當作產(chǎn)品對待,找準項目的核心價值,解決用戶或行業(yè)的痛點,滿足細分領(lǐng)域用戶的訴求。并且要拉通合作伙伴,設(shè)計合理的治理模型,通過各種渠道推廣和擴大影響力。同時商業(yè)化的能力也很重要,商業(yè)落地和開源生態(tài)相互促進,形成良性循環(huán),將大大提高開源項目的成功機會。
07
吳洪聲:在本次2020 Techo Park開發(fā)者大會上你講述了騰訊云原生路線圖的全面布局,創(chuàng)造了三個行業(yè)首次。首次站在用戶角度梳理云原生關(guān)鍵脈絡(luò),首次提出云原生系統(tǒng),首次提出云原生實踐“ISO”。規(guī)劃這張路線圖的初衷是什么?在這背后有哪些關(guān)鍵產(chǎn)品支撐?
鄒輝:目前騰訊云原生產(chǎn)品矩陣,涵蓋了從軟件研發(fā)、計算資源、架構(gòu)框架、數(shù)據(jù)存儲與處理到安全防護……等五個大領(lǐng)域,幾十個細分產(chǎn)品。依托這些產(chǎn)品,我們正在為不同行業(yè)、不同規(guī)模和不同發(fā)展階段的幾十萬家客戶提供云原生服務(wù)。
在服務(wù)這些客戶的時候,我們發(fā)現(xiàn)一個企業(yè)的云原生化改造會碰到很多的問題,比如“改造收益是什么?應(yīng)該選擇什么樣的技術(shù)或者服務(wù)?改造節(jié)奏、投入及風(fēng)險該如何平衡?最佳實踐有哪些?改造結(jié)果如何評判?……等等”。所以基于此,我們推出了“騰訊云原生最佳實踐路線圖”,期望通過“路線圖”,讓企業(yè)的“云原生技術(shù)改造”走的更加順暢和簡單。
08
吳洪聲:Kubernetes在其最新的Changelog中宣布,自Kubernetes 1.20之后將棄用Docker作為容器運行時。這一消息在云原生領(lǐng)域激起了不小的水花,你認為Kubernetes棄用Docker對開發(fā)者來說意味著什么?將對Docker的生態(tài)產(chǎn)生怎樣的影響?
鄒輝:要非常清晰的了解這個問題,必須從架構(gòu)上知道Kubernetes與Docker之間的關(guān)系。Docker是諸多容器運行中的一種,Kubernetes為了方便適配不同的容器運行時,定義了一個與運行時通信的標準接口CRI,不同容器運行時要想接入Kubernetes,只需實現(xiàn)這個標準接口即可。然而Docker本身并沒有實現(xiàn)CRI,于是Kubernetes社區(qū)維護的一個dockershim組件完成CRI協(xié)議到Docker協(xié)議的轉(zhuǎn)換,Kubernetes通過CRI接口調(diào)用dockershim,dockershim調(diào)用Docker來完成上述能力。Kubernetes 1.20實際上是棄用的dockershim,減少架構(gòu)上的復(fù)雜度。
對于普通的Kubernetes使用者而言,不必有太多擔(dān)心,Kubernetes會直接通過CRI接口調(diào)用另外一種容器運行時Containerd來實現(xiàn)容器的功能,在Kubernetes使用上對用戶其實是無感的。
對于Docker的使用者而言,也可以繼續(xù)使用Kubernetes,區(qū)別只是需要做一些配置修改,自己部署Dockershim即可;但長遠來看,Dockershim本身的維護也是一個比較大的問題,對于Docker生態(tài)而言,這里需要有更多的考量。
不過歸根到底,對于開發(fā)者而言,還是要擁抱以Kubernetes為核心的云原生生態(tài),了解多種容器運行時的對比情況,根據(jù)業(yè)務(wù)場景做出自己合理的選擇。
最后,從云廠商的角度來看,目前一些主流云廠商都已經(jīng)支持選擇Containerd作為容器運行時。而騰訊云早在兩年前,就已經(jīng)洞察這一趨勢,并產(chǎn)品化支持了Contianerd。
09
吳洪聲:云計算技術(shù),其更新迭代的速度快得讓人應(yīng)接不暇。未來容器技術(shù)在整個云生態(tài)中將會占據(jù)怎樣的地位?你是如何看待容器技術(shù)的發(fā)展空間的?
鄒輝:短短幾年時間,在社區(qū)、開發(fā)者、企業(yè)和云廠商的多方作用下,容器技術(shù)便從出現(xiàn)走到成熟;到目前為止,容器技術(shù)已經(jīng)在各行各業(yè)的軟件系統(tǒng)中被大量使用,各大云廠商也在全力投入容器技術(shù)為代表的云原生生態(tài),可以說容器技術(shù)已經(jīng)成為云生態(tài)中的一種“基礎(chǔ)設(shè)施”。
這種“基礎(chǔ)設(shè)施”的屬性正在不斷加強,主要體現(xiàn)在三方面。
第一容器正在與大數(shù)據(jù)、AI、數(shù)據(jù)庫以及其它一些有狀態(tài)類服務(wù)結(jié)合,成為這些軟件的“底座”,給這些服務(wù)的部署運維、調(diào)度管理…帶來更好的便利,這塊的技術(shù)正在不斷成熟,企業(yè)優(yōu)秀實踐也越來越多,極大地拓展了容器技術(shù)的使用邊界。
第二在一些新興的領(lǐng)域或者場景,比如邊緣計算、混合云管理,大家正在使用容器技術(shù)來屏蔽底層IAAS的差異,減少管理上的成本,極大的加速了這些領(lǐng)域的發(fā)展進程。
第三以容器技術(shù)為核心的云原生生態(tài)還在快速的發(fā)展中,比如微服務(wù)、serverless、服務(wù)網(wǎng)格、容器安全…等,每年都不斷有一些新的東西出現(xiàn)在CNCF的云原生全景圖中,生態(tài)的繁榮也反向促進了容器技術(shù)作為“基礎(chǔ)設(shè)施”的地位。
10
吳洪聲:云計算的分布式、可擴展和靈活的特性在云原生架構(gòu)上得到了充分體現(xiàn),開發(fā)人員可以更高效地應(yīng)用和管理異構(gòu)硬件和環(huán)境下的各類云計算資源,并專注于應(yīng)用開發(fā)本身。未來軟件開發(fā)、軟件應(yīng)用將誕生于云上,成長于云上。在這種情況下,云原生是不是會有重塑IT體系的可能?云原生會給我們的生產(chǎn)生活帶來哪些改變?
鄒輝:生于云,長于云。云原生出現(xiàn)便是為了讓企業(yè)能夠更好的上云,所以云原生一定會重塑企業(yè)IT的各個環(huán)節(jié),讓企業(yè)IT能夠使用云原生理念,更好地去利用云上的各種設(shè)施和服務(wù)。
比如說:在軟件開發(fā)部署階段,通過DevOps流程規(guī)范制定、各種工具平臺使用甚至組織結(jié)構(gòu)調(diào)整,建設(shè)完善的CICD系統(tǒng)和流程,提高開發(fā)、構(gòu)建和部署的效率,同時降低因為“人”的因素導(dǎo)致的一些失誤。在軟件設(shè)計階段,基于微服務(wù)、服務(wù)網(wǎng)格等技術(shù)重構(gòu)軟件系統(tǒng),讓軟件的開發(fā)更簡單,部署發(fā)布更容易,問題發(fā)現(xiàn)和跟蹤也更方便。在軟件的運維階段,通過kubernetes以及其它一些云原生技術(shù),讓軟件架構(gòu)能夠基于云的多可用區(qū)自動容災(zāi),資源使用上做到按需使用自動伸縮,付費模式上做到按量計費。
云原生相關(guān)技術(shù)雖然在改變IT架構(gòu)中的各個環(huán)節(jié),但改變并非目的,歸根到底,通過云原生概念和技術(shù)的落地,可以讓我們的研發(fā)運維效率更高,版本的發(fā)布迭代速度更快,資源使用成本更低,架構(gòu)更加穩(wěn)固可靠,而這些最終體現(xiàn)在企業(yè)的效率和成本上,讓企業(yè)更具競爭力。