騰訊云【從0到1學(xué)習邊緣容器系列】之邊緣計算與邊緣容器的起源

來源: 騰訊云原生
作者:王繼羅
時間:2021-01-21
16986
對于云計算大家已經(jīng)耳熟能詳了,邊緣計算又是一種什么玩法以及存在哪些挑戰(zhàn)呢?

對于云計算大家已經(jīng)耳熟能詳了,邊緣計算又是一種什么玩法以及存在哪些挑戰(zhàn)呢?

筆者特別拜訪專家,整理了系列文章,和大家從0到1來學(xué)習邊緣計算的技術(shù)。

30秒了解什么是邊緣計算?邊緣計算為什么重要?

根據(jù)邊緣計算產(chǎn)業(yè)聯(lián)盟的定義,邊緣計算是在靠近物或數(shù)據(jù)源頭的網(wǎng)絡(luò)邊緣側(cè),融合網(wǎng)絡(luò)、計算、存儲、應(yīng)用核心能力的開放平臺,就近提供邊緣智能服務(wù),滿足行業(yè)在敏捷聯(lián)接、實時業(yè)務(wù)、數(shù)據(jù)優(yōu)化、應(yīng)用智能、安全與隱私保護等方面的關(guān)鍵需求。邊緣計算將計算、網(wǎng)絡(luò)、存儲、帶寬等能力從云延伸到網(wǎng)絡(luò)邊緣的新型架構(gòu)模式,其能效友好、帶寬充足、延遲低等特性很好地補充了集中化計算模式遇到的問題。

640.webp.jpg

圖片:邊緣計算技術(shù)作為5G網(wǎng)絡(luò)架構(gòu)中核心,智能化改造趨勢分析

30秒看完邊緣計算集中式的3大難題

隨著信息技術(shù)的發(fā)展,計算資源模式由單一的集中化變成了往集中化和邊緣化兩個方向的分化,集中化即當前如火如荼的云計算,邊緣化即最近幾年興起的邊緣計算。云計算給世界帶來的變革大家有目共睹,但有了云計算為什么還需要邊緣計算呢?這就需要一起來了解集中式的云計算中遇到的問題:

?PUE問題。PUE(Power Usage Effectiveness)電源使用效率,是評價數(shù)據(jù)中心能源效率的指標。集中式數(shù)據(jù)中心耗電量巨大,屬于高耗能產(chǎn)業(yè),不符合綠色能源、節(jié)能減排理念,其規(guī)模和數(shù)量受政策限制。根據(jù)IDC統(tǒng)計,全球數(shù)據(jù)中心數(shù)量在2015年達到頂峰,然后開始逐年下降,預(yù)計2021年會比2015年降低15%。

640.webp (1).jpg

數(shù)據(jù)來源:數(shù)據(jù)中心白皮書數(shù)據(jù)及預(yù)測、光大證券研究所

?安全隱私問題。應(yīng)用和數(shù)據(jù)是企業(yè)的核心資源,隨著越來越多的行業(yè)互聯(lián)網(wǎng)化,如何保證應(yīng)用和數(shù)據(jù)的可靠性、安全性是企業(yè)最關(guān)心的議題之一。

?技術(shù)新需求問題。隨著技術(shù)的發(fā)展,單靠數(shù)據(jù)中心已經(jīng)很難滿足需求。

典型場景包括:

1)物聯(lián)網(wǎng)技術(shù),大量的智能終端位于網(wǎng)絡(luò)邊緣,集中計算模式不能滿足所有應(yīng)用場景;

2)移動互聯(lián)網(wǎng)技術(shù)的發(fā)展,5G為移動互聯(lián)網(wǎng)注入了巨大的能量,集中計算模式滿足不了直播、游戲、音視頻等應(yīng)用在帶寬、延遲等方面的需求。

30秒了解邊緣計算發(fā)展現(xiàn)狀

目前邊緣計算研究領(lǐng)域主要集中在:計算模型、體系結(jié)構(gòu)、信息安全等方面。

?計算模型主要有:霧計算、移動邊緣計算、智能邊緣計算等,涵蓋物聯(lián)網(wǎng)、無線通信網(wǎng)、移動互聯(lián)網(wǎng)等領(lǐng)域。

?體系結(jié)構(gòu)有:ETSI參考架構(gòu)、MEC架構(gòu)、ECC參考架構(gòu)、SWoT架構(gòu)、AI-EC架構(gòu)。

目前邊緣計算研究熱點主要是延遲敏感、實時性要求高的場景,如:

?云基礎(chǔ)設(shè)施2.0。國內(nèi)外各大云廠商逐漸從“中心云”模式轉(zhuǎn)換到“云計算+邊緣計算”模式,細化出多種行業(yè)云:金融云、游戲云、直播云、教育云等。

?物聯(lián)網(wǎng)。隨著IoT規(guī)模的快速增長,越來越多的數(shù)據(jù)無法直接上傳到云中心,在設(shè)備側(cè)完成數(shù)據(jù)存儲、分析、處理將越來越重要

?工業(yè)互聯(lián)網(wǎng)。工業(yè)互聯(lián)網(wǎng)的本質(zhì)和核心是把設(shè)備、生產(chǎn)線、工廠、供應(yīng)商、產(chǎn)品和客戶緊密地連接融合起來,從而提高效率,推動整個制造服務(wù)體系智能化。

?CDN。CDN本質(zhì)上是在靠近用戶的位置分發(fā)內(nèi)容,邊緣計算可以讓CDN離用戶更近,提供更低時延、更大帶寬的服務(wù)。

?5G。國家標準組織ETSI認為移動邊緣計算MEC是一種將基站和互聯(lián)網(wǎng)業(yè)務(wù)深度融合的技術(shù),可以靈活地在物理網(wǎng)絡(luò)切分出邏輯網(wǎng)絡(luò)以滿足復(fù)雜多變的應(yīng)用需求。

15秒掃完邊緣計算帶來的挑戰(zhàn)

與強勁的市場需求矛盾的是,邊緣計算目前尚沒有一套成熟的技術(shù)體系,存在的問題包括:

?缺失技術(shù)標準和規(guī)范

?沒有統(tǒng)一的體系結(jié)構(gòu)

?邊緣設(shè)備異構(gòu)嚴重

?邊緣設(shè)備數(shù)量龐大、分布廣闊

?服務(wù)質(zhì)量保障

邊緣容器誕生帶來的希望之光

容器技術(shù)是最近幾年發(fā)展勢頭很好的技術(shù)之一,相比物理機和虛擬機,容器技術(shù)非常輕量級,并且具有如下優(yōu)點:部署簡單、支持多環(huán)境、啟動時間更短、易擴容、易遷移,比較常見的容器技術(shù)有Docker和Containerd。這些特點很好地解決了“邊緣設(shè)備異構(gòu)嚴重”這一問題。

但是在管理主機數(shù)量規(guī)模較大的業(yè)務(wù)場景時,單機容器管理方案往往力不從心。Kubernetes是當前最流行的容器編排和管理系統(tǒng),它實現(xiàn)了一套高效的應(yīng)用管理、應(yīng)用自修復(fù)、資源管理、線上運維和排障機制,并且形成了監(jiān)控告警、服務(wù)網(wǎng)格、日志及調(diào)用鏈分析、CI/CD等方面的一系列生態(tài)。這些有助于解決“缺失技術(shù)標準和規(guī)范”、“沒有統(tǒng)一的體系結(jié)構(gòu)”、“服務(wù)質(zhì)量保障”、“管理成本高”等方面的問題。

然而,Kubernetes原本是針對集中式資源管理場景設(shè)計,簡單地應(yīng)用到邊緣計算場景會遇到諸多不適應(yīng),導(dǎo)致系統(tǒng)不穩(wěn)定甚至在某些場景下運行不起來。

邊緣容器的目的就是通過解決Kubernetes所有不適應(yīng)邊緣計算場景的點,實現(xiàn)使用集中式的Kubernetes來管理分散的邊緣設(shè)備。

邊緣容器也遇到了挑戰(zhàn)

通常來說,為了管理上的方便集群控制中心都是集中式設(shè)計、部署在指定地區(qū),或者為了保障高可用有選擇性地部署在某幾個地區(qū)。目前較常見情況是控制中心部署在云廠商云端中心機房(公有云)或者用戶中心機房(私有云);邊緣設(shè)備位于邊緣云機房、移動邊緣站點、用戶現(xiàn)場設(shè)備。

為了讓Kubernetes更好地用于邊緣計算場景,我們有必要整理出邊緣計算場景的主要特性:

?云邊弱網(wǎng)絡(luò)。控制中心和邊緣設(shè)備之間網(wǎng)絡(luò)較復(fù)雜,因特網(wǎng)、以太網(wǎng)、5G、WIFI等形態(tài)均有可能,網(wǎng)絡(luò)質(zhì)量差次不齊沒有保障。

?邊緣設(shè)備之間網(wǎng)絡(luò)情況復(fù)雜。邊緣設(shè)備之間有可能是局域網(wǎng),也有可能位于不同的地區(qū)、相互不通。

?邊緣設(shè)備資源緊張。相對而言,邊緣計算設(shè)備從邊緣云、移動邊緣站點、用戶現(xiàn)場設(shè)備,單個設(shè)備的硬件資源逐漸變少。其中用戶現(xiàn)場單設(shè)備內(nèi)存有可能不到1G。

?邊緣服務(wù)管理要求復(fù)雜。在中心云機房,應(yīng)用可以根據(jù)節(jié)點資源擇優(yōu)部署;而在邊緣場景,應(yīng)用部署需要考慮網(wǎng)絡(luò)和地域等屬性。

1分鐘講述管理邊緣容器的方案

業(yè)界目前有多種邊緣容器管理的解決方案,騰訊云針對私有云和公有云分別推出tinykube和TKE edge。這里主要介紹公有云TKE@edge整套方案致力于保持對原生Kubernetes功能及其生態(tài)完全兼容、以盡量少的改動達到讓原生Kubernetes支持邊緣計算場景的目標。

整體架構(gòu)如下:

640.webp (2).jpg

TKE@edge整體是云端管控架構(gòu),Master位于中心,邊緣節(jié)點全部是worker節(jié)點。云邊引入tunnel和hub兩個通信組件,支持身份認證和數(shù)據(jù)加密;云端引入兩個自研的Controller:serviceGroup-Controller、observer-Controller;邊端引入store和observer;用戶集群master組件運行在云端metacluster基礎(chǔ)集群,用戶集群數(shù)據(jù)統(tǒng)一保存在云端Etcd集群;使用者可通過TKE edge控制臺或者在本地使用kubectl工具直接管理自己的集群,也可以基于TKE edge之上二次開發(fā)管理平臺。

TKE@egde解決了邊緣容器什么問題

?云邊弱網(wǎng)絡(luò)。hub組件的核心作用是解決邊到云弱網(wǎng)絡(luò)問題,該組件代理了邊緣節(jié)點上所有核心組件向apiserver發(fā)起的請求,并且將關(guān)鍵數(shù)據(jù)持久化保存在本地。當云邊網(wǎng)絡(luò)異常時,節(jié)點側(cè)依然可以使用這些數(shù)據(jù),避免因云邊弱網(wǎng)絡(luò)原因引起業(yè)務(wù)異常。另外,邊緣弱網(wǎng)絡(luò)很容易觸發(fā)Kubernetes驅(qū)逐機制,引起不符合預(yù)期的Pod驅(qū)逐動作,TKE edge首創(chuàng)分布式健康檢測機制可以智能地識別驅(qū)逐時機,保障系統(tǒng)在弱網(wǎng)絡(luò)下正常運轉(zhuǎn)。

?邊緣設(shè)備之間網(wǎng)絡(luò)情況復(fù)雜。復(fù)雜性表現(xiàn)在一個集群內(nèi)的節(jié)點極可能分布在多個邊緣局域網(wǎng)內(nèi)(通常稱為節(jié)點或者站點,site,為避免與Kubernetes集群中的節(jié)點一詞混淆,后面均稱站點),意味著同一站點內(nèi)的節(jié)點之間可達,站點之間的節(jié)點之間通常不可達,這會影響集群內(nèi)服務(wù)之間的調(diào)用。TKE edge首創(chuàng)serviceGroup資源,該資源支持用戶指定服務(wù)之間流量拓撲策略,實現(xiàn)按策略訪問。

?邊緣設(shè)備資源緊張。原生Kubernetes中主要是Master組件資源消耗較大,節(jié)點側(cè)資源消耗并不多。TKE edge采用云端管控架構(gòu),讓Master組件部署在資源豐富的中心側(cè),邊緣側(cè)只運行kubelet、kube-proxy等資源消耗少的組件,邊緣側(cè)只需要較少資源即可滿足條件。

?邊緣服務(wù)管理要求復(fù)雜。集群內(nèi)包含多個站點時,通常希望在每個站點部署一整套微服務(wù),理論上我們可以通過給每一個服務(wù)在每一個站點分配不同的名字來實現(xiàn)目的,實際上這么操作會帶來兩方面的問題:1)服務(wù)名太多難以管理;2)同一服務(wù)在不同站點名字不同,難以通過服務(wù)名訪問;3)當增加或者撤銷站點時需要人工添加和刪除對應(yīng)的yaml,這無疑會帶來管理災(zāi)難。TKE edge首創(chuàng)serviceGroup能自動完成上述操作,大大降低管理困難。

TKE@edge閃閃發(fā)光的亮點

?serviceGroup。能解決邊緣設(shè)備之間網(wǎng)絡(luò)復(fù)雜及邊緣服務(wù)管理困難問題??蛻糁恍枰褂肧erviceGroup提供的DeploymentGrid和ServiceGrid兩種TKE edge自研的Kubernetes資源,即可一鍵將服務(wù)部署到所有邊緣站點中,同時還能保證服務(wù)在各站點的實例數(shù)量、提高應(yīng)用在每個站點的高可用。

?hub。實現(xiàn)關(guān)鍵數(shù)據(jù)本地持久化,保障系統(tǒng)在弱網(wǎng)絡(luò)下正常運轉(zhuǎn)。即使節(jié)點與Master斷網(wǎng)的情況下應(yīng)用也不受影響,并且可以做到節(jié)點重啟后應(yīng)用自動恢復(fù)。

?observer。分布式健康檢測機制,可以識別邊緣節(jié)點健康情況,智能識別應(yīng)用驅(qū)逐的時機。

?tunnel。云邊隧道機制,允許從云端登錄容器、查看日志、往容器上傳下載文件。對于無公網(wǎng)地址的設(shè)備,該功能可以明顯提升運維效率。

?定制網(wǎng)絡(luò)組件。站點整體與云端失聯(lián)情況下服務(wù)正常運行,并且允許邊緣節(jié)點發(fā)生重啟。

高可用

?Master組件。托管于騰訊云有SLA保證、并且有騰訊云TKE團隊運維;Master組件支持自動擴縮容,可根據(jù)集群壓力自動調(diào)整實例數(shù)量,以滿足業(yè)務(wù)需求。

?邊緣節(jié)點和站點。目前可以做到邊緣端運行微服務(wù)時,邊緣站點整體與管控端掉線的情況下業(yè)務(wù)不受影響,掉線期間允許計算資源發(fā)生重啟。

?業(yè)務(wù)應(yīng)用。保證站點內(nèi)業(yè)務(wù)Pod可用數(shù)量,支持一個服務(wù)在同一節(jié)點上運行多個Pod。

易用性

?監(jiān)控告警。支持集群和Pod級監(jiān)控告警,維度包括CPU、內(nèi)存、網(wǎng)絡(luò),告警方式有電話、短信、微信、郵件

?邊緣資源管理。一鍵添加、刪除邊緣節(jié)點(限騰訊云邊緣計算資源)

?應(yīng)用管理。一鍵部署、更新、刪除應(yīng)用,Helm應(yīng)用打包管理(規(guī)劃中)

?界面化操作。目前集群管理、節(jié)點管理、Workload和常用Kubernetes資源管理、日志和事件查詢等均可以通過Web界面完成,大大降低使用門檻。(產(chǎn)品目前是白名單開放,使用前請在騰訊云官網(wǎng)上申請加白名單)

?CICD。支持使用藍盾,支持Coding系統(tǒng)(規(guī)劃中)

幫扶運維

?云端登錄邊緣應(yīng)用容器內(nèi)部,云端往/從容器內(nèi)部傳輸文件

?云端查看業(yè)務(wù)日志、事件

?應(yīng)用日志采集(規(guī)劃中)

結(jié)束語

邊緣容器是一個非常新的方向,充滿了困難和機會,TKE edge也還在不斷探索,對邊緣計算和邊緣容器感興趣或有好的想法建議,趕緊加群吧。

希望同樣對邊緣計算感興趣的你與我們一起在邊緣計算的浪潮中成長,不是后浪,也不是前浪,就做弄潮兒。

立即登錄,閱讀全文
版權(quán)說明:
本文內(nèi)容來自于騰訊云原生,本站不擁有所有權(quán),不承擔相關(guān)法律責任。文章內(nèi)容系作者個人觀點,不代表快出海對觀點贊同或支持。如有侵權(quán),請聯(lián)系管理員(zzx@kchuhai.com)刪除!
掃碼登錄
打開掃一掃, 關(guān)注公眾號后即可登錄/注冊
加載中
二維碼已失效 請重試
刷新
賬號登錄/注冊
個人VIP
小程序
快出海小程序
公眾號
快出海公眾號
商務(wù)合作
商務(wù)合作
投稿采訪
投稿采訪
出海管家
出海管家