我在2010年左右加入騰訊,最近兩三年,我有一個很明顯的感受:騰訊內(nèi)部無論是管理層還是普通員工,在開源的意識上都有了很大的轉(zhuǎn)變,公司對開源的投入也越來越大。這些變化主要體現(xiàn)在兩點:第一,騰訊內(nèi)部的大量業(yè)務(wù)在頻繁地使用一些開源軟件;第二,騰訊在不斷地把一些優(yōu)秀的代碼和模塊開源給外部社區(qū)。
下面,我要介紹騰訊在邊緣計算領(lǐng)域以及安全容器領(lǐng)域做的開源方面的探索。
在邊緣計算領(lǐng)域,隨著5G技術(shù)的普及以及各種應(yīng)用場景的落地,整個邊緣計算逐漸興起,越來越多的企業(yè)在真實的業(yè)務(wù)場景里需要使用邊端的計算設(shè)備。
一般情況下,企業(yè)在使用邊緣計算的過程中往往會面臨兩個問題:第一個問題是這些邊緣設(shè)備、物聯(lián)網(wǎng)設(shè)備分布在多個地方,這些設(shè)備跟中心節(jié)點的網(wǎng)絡(luò)不是一種穩(wěn)定可靠的連接。在弱網(wǎng)絡(luò)的情況下,企業(yè)怎樣管理這些設(shè)備以及如何運行邊端設(shè)備上的應(yīng)用程序便成為了一個問題。而第二個問題是針對邊端物聯(lián)網(wǎng)設(shè)備,企業(yè)該如何進行高效的應(yīng)用開發(fā)?
針對這兩個問題,我們推出了兩個項目,其中一個項目就是TKE Edge-邊緣容器解決方案。TKE Edge-邊緣容器解決方案主要用來解決在云端管理邊端的設(shè)備和應(yīng)用問題,這個項目安全可靠,具有以下幾個典型的特點:完全兼容K8S API;云端設(shè)備可以部署在公有云上,也可以進行私有化部署;邊緣設(shè)備可以位于云機房,也可以是用戶自有設(shè)備。
此外,我們還開發(fā)了TencentOS tiny-物聯(lián)網(wǎng)實時操作系統(tǒng),這是面向物聯(lián)網(wǎng)的實時操作系統(tǒng),從用戶API到底層芯片模組層,我們?nèi)窟M行了打通。TencentOS tiny-物聯(lián)網(wǎng)實時操作系統(tǒng)具有小體積、低功耗的特點,同時也具備豐富的IoT組件、可靠的安全框架、良好的可移植性以及便捷的調(diào)試方式。
剛才介紹了兩個系統(tǒng),接下來介紹一下這兩個系統(tǒng)在實際場景中的案例和落地情況,給大家提供一些參考。
第一個場景iGrow智能種植方案是典型的智能種植場景,在這個場景下我們會用到一些傳感器,這些傳感器會采集溫室里面的溫度、光照等數(shù)據(jù),把數(shù)據(jù)上傳到控制節(jié)點上,控制節(jié)點上的AI算法會根據(jù)這些數(shù)據(jù)計算出當前的溫度、濕度、含氧量、光照等情況,根據(jù)這些信息計算出是否需要給這些植物補充光照、氧氣或肥料,從而做到全流程智能控制。這些部署到設(shè)備上的應(yīng)用程序都是運行在TencentOS tiny操作系統(tǒng)上面的,這個操作系統(tǒng)實現(xiàn)了超低耗管理,可以有效地降低農(nóng)業(yè)現(xiàn)場設(shè)備的功耗,延長設(shè)備的使用壽命。
第二個場景是TKE Edge助力音視頻、CDN在邊緣設(shè)備的云原生架構(gòu)升級,該邊緣容器解決方案目前在騰訊的公有云上大量應(yīng)用于音視頻、電競直播、在線教育等場景,可以提升主播的上行質(zhì)量,幫助直播推流的就近轉(zhuǎn)碼和分發(fā),實現(xiàn)實時互動、彈幕以及邊緣AI美顏、虛擬背景、商品識別等功能。
第三個應(yīng)用場景是TKE Edge解決工業(yè)互聯(lián)網(wǎng)平臺私有云交付及運維問題。工業(yè)互聯(lián)網(wǎng)平臺在以前的部署下是我們每中標一個地方政府的工業(yè)互聯(lián)網(wǎng)平臺,都需要派人去當?shù)夭渴鸷徒桓痘ヂ?lián)網(wǎng)平臺。假設(shè)這些互聯(lián)網(wǎng)平臺后來出了問題,我們?nèi)绾芜B上互聯(lián)網(wǎng)平臺去解決這些問題,也是很大的挑戰(zhàn)。
而在新的邊緣容器方案場景下,我們通過邊緣容器把部署在當?shù)氐臋C器設(shè)備管理起來,這個時候整個工業(yè)互聯(lián)網(wǎng)平臺的交付部署和運維就非常簡單了。我們可以通過云端統(tǒng)一管理工業(yè)互聯(lián)網(wǎng)平臺,極大地降低整個流程的交付和運維成本,而云端的管理平臺既可以是客戶私有化管理,也可以為廠商提供統(tǒng)一的運維管理。這個方案的核心在于我們通過邊緣容器以一種安全的方式打通了私有化機房,從而便捷地管理私有化的設(shè)備和應(yīng)用。
在適用場景下,我們也滿足了一些安全等級上的要求,允許一些混合云的部署。通過這種方式,我們可以極大地縮減整個私有化平臺的交付流程,同時降低維保成本,使得維保服務(wù)提供方的選擇更加靈活。
在安全容器領(lǐng)域,騰訊推出了mVM項目,該項目可在宿主機發(fā)生故障或者預(yù)計即將發(fā)生故障的時候,將安全容器里的內(nèi)存以及狀態(tài)信息部署到宿主機上的公共內(nèi)存上并遷移到另外一臺機器上去。這個過程是無感知的過程,甚至長鏈接也可以做到不中斷,增量遷移的切換也僅需要幾毫秒到幾十毫秒。同時,騰訊跟GPU廠商合作,通過VFIO技術(shù)直接把GPU融入容器里面,這樣能夠讓業(yè)務(wù)方更高效地使用GPU設(shè)備。除此之外,我們也縮短了整個容器作業(yè)層的管控路徑,直接通過mVM提供的一些技術(shù),滿足離線任務(wù)的管理訴求。
到目前為止,安全容器已經(jīng)大量地應(yīng)用于騰訊內(nèi)部,甚至騰訊云里面的大數(shù)據(jù)和AI平臺就大量的使用安全容器做多租戶隔離,同時通過熱遷移技術(shù)保證容器穩(wěn)定性。此外,安全容器還大量應(yīng)用于騰訊云目前已有的Serverless函數(shù)計算服務(wù)中以及大數(shù)據(jù)+AI底座等場景。