tft每日頭條

 > 科技

 > 邊緣計算還具有什麼特點

邊緣計算還具有什麼特點

科技 更新时间:2024-09-01 06:14:53

作者:崔廣章

來源:華章科技

邊緣計算還具有什麼特點(多圖詳解邊緣計算系統的組成及概念)1

本文從組成部分和概念解析兩方面來說明邊緣計算系統。

  1. 組成部分:邊緣計算系統由雲、邊、端三部分組成,每部分的解決方案不止一種。本文的雲組成部分選擇Kubernetes,邊組成部分選擇KubeEdge,端組成部分選擇EdgeX Foundry。
  2. 概念解析:對組成邊緣計算系統的雲、邊、端三部分涉及的相關概念進行說明。
01 邊緣計算系統的組成

1. 雲——Kubernetes

Kubernetes是Google開源的大規模容器編排解決方案。整套解決方案由核心組件、第三方組件和容器運行時組成,具體如下所示。

1)核心組件

  • Kube-apiserver:Kubernetes内部組件相互通信的消息總線,對外暴露集群API資源的唯一出口
  • Kube-controller:保證集群内部資源的現實狀态與期望狀态保持一緻
  • Kube-scheduler:将需要調度的負載與可用資源最佳匹配
  • Kube-proxy:為節點内的負載訪問和節點間的負載訪問做代理
  • Kubelet:根據Kube-scheduler的調度結果,操作相應負載

2)第三方組件

  • Etcd:存儲集群的元數據和狀态數據
  • Flannel集群的跨主機負載網絡通信的解決方案需要對原來的數據包進行額外的封裝、解封裝,性能損耗較大
  • Calico集群的跨主機負載網絡通信的解決方案純三層網絡解決方案,不需要額外的封裝、解封裝,性能損耗較小
  • CoreDNS:負責集群中負載的域名解析

3)容器運行時

  • Docker:目前默認的容器運行時
  • Containerd:比Docker輕量,穩定性與Docker相當的容器運行時
  • Cri-o輕量級容器運行時目前穩定性沒有保證
  • Frakti基于Hypervisor的容器運行時目前穩定性沒有保證

邊緣計算還具有什麼特點(多圖詳解邊緣計算系統的組成及概念)2

2. 邊——KubeEdge

KubeEdge是華為開源的一款基于Kubernetes的邊緣計算平台,用于将容器化應用的編排功能從雲擴展到邊緣的節點和設備,并為雲和邊緣之間的網絡、應用部署和元數據同步提供基礎架構支持。KubeEdge使用Apache 2.0許可,并且可以免費用于個人或商業用途。

KubeEdge由雲部分、邊緣部分和容器運行時組成,具體如下所示。

  • 雲部分 | CloudCore
  • 負責将雲部分的事件和指令下發到邊緣端,同時接收邊緣端上報的狀态信息和事件信息
  • 邊緣部分 | EdgeCore
  • 接收雲部分下發的事件和指令,并執行相關指令,同時将邊緣的狀态信息和事件信息上報到雲部分
  • 容器運行時 | Docker
  • 目前,KubeEdge默認支持Docker
  • 官方表示未來會支持Containerd、Cri-o等容器運行時

3. 端——EdgeX Foundry

EdgeX Foundry是一個由Linux基金會運營的開源邊緣計算物聯網軟件框架項目。該項目的核心是基于與硬件和操作系統完全無關的參考軟件平台建立的互操作框架,構建即插即用的組件生态系統,加速物聯網方案的部署。EdgeX Foundry使有意參與的各方在開放與互操作的物聯網方案中自由協作,無論其是使用公開标準還是私有方案。

EdgeX Foundry微服務集合構成了4個微服務層及兩個增強的基礎系統服務。4個微服務層包含從物理域數據采集到信息域數據處理等一系列服務,兩個增強的基礎系統服務為4個微服務層提供服務支撐。

4個微服務層從物理層到應用層依次為設備服務(Device Service)層、核心服務(Core Service)層、支持服務(Supporting Service)層、導出服務(Export Service)層,兩個增強的基礎系統服務包括安全和系統管理服務,具體說明如下所示。

1)設備服務層

  • Device-modbus-go:Go實現對接使用Modbus協議設備的服務
  • Device-camera-go:Go實現對接攝像頭設備的服務
  • Device-snmp-go:Go實現對接SNMP服務
  • Device-mqtt-go:Go實現對接使用MQTT協議設備的服務
  • Device-sdk-goGo實現對接其他設備的SDKSDK給設備接入提供了較大的靈活性

2)核心服務層

  • Core-command:負責向南向設備發送命令
  • Core-metadata:負責設備自身能力描述,提供配置新設備,并将它們與其擁有的設備服務配對的功能
  • Core-data:負責采集南向設備層數據,并向北向服務提供數據服務
  • Registry & Config:負責服務注冊與發現,為其他EdgeX Foundry微服務提供關于EdgeX Foundry的相關服務的信息,包括微服務配置屬性

3)支持服務層

  • Support-logging:負責日志記錄
  • Support-notification:負責事件通知
  • Support-scheduler:負責數據調度

4)導出服務層

  • Export-client:導出數據的客戶端
  • Export-distro:導出數據的應用

5)兩個增強的基礎系統服務

  • System-mgmt-agent:提供啟動、停止所有微服務的API
  • Sys-mgmt-executor:負責啟動、停止所有微服務的最終執行
02 概念解析

組成邊緣計算系統的雲、邊、端三部分的相關概念如下。

  • 雲:涉及的概念包括Container、Pod、ReplicaSet、Service、Deployment、DaemonSet、Job、Volume、ConfigMap、NameSpace、Ingress等。
  • 邊:目前邊緣系統的實現方式是通過對雲原有的組件進行裁剪并下沉到邊緣,所以邊涉及的概念是雲的子集,而且與雲保持一緻。
  • 端:部署在邊上的一套微服務,目前沒有引入新的概念。

目前,邊和端都在沿用雲的概念,所以本節主要是對雲的概念進行解析。下面以圖解的形式對雲涉及的相關概念進行說明。由圖1-1可知,Container(容器)是在操作系統之上的一種新的環境隔離技術。使用容器隔離出的獨立空間包含應用所需的運行時環境和依賴庫。在同一台主機上,容器共享操作系統内核。

邊緣計算還具有什麼特點(多圖詳解邊緣計算系統的組成及概念)3

▲圖1-1 Container解析

由圖1-2可知,Pod是由一組容器組成的,在同一個Pod内的容器共享存儲和網絡命名空間。在邊緣計算系統中,Pod是最小的可調度單元,也是應用負載的最終載體。

邊緣計算還具有什麼特點(多圖詳解邊緣計算系統的組成及概念)4

▲圖1-2 Pod解析

由圖1-3可知,ReplicaSet用來管理Pod,負責讓Pod的期望數量與Pod真實數量保持一緻。在邊緣計算系統中,ReplicaSet負責維護應用的多實例和故障自愈。

邊緣計算還具有什麼特點(多圖詳解邊緣計算系統的組成及概念)5

▲圖1-3 ReplicaSet解析

由圖1-4可知,Service作為一組Pod的訪問代理,在多個Pod之間做負載均衡。Pod的生命周期相對比較短暫,變更頻繁。Service除了為與之相關的Pod做訪問代理和負載均衡外,還會維護與Pod的對應關系。

邊緣計算還具有什麼特點(多圖詳解邊緣計算系統的組成及概念)6

▲圖1-4 Service解析

由圖1-5可知,Deployment是ReplicaSet的抽象,在ReplicaSet的基礎上增加了一些高級功能。其功能和應用場景與ReplicaSet相同。

邊緣計算還具有什麼特點(多圖詳解邊緣計算系統的組成及概念)7

▲圖1-5 Deployment解析

由圖1-6可知,DaemonSet負責讓指定的Pod在每個節點上都啟動一個實例。該功能一般用在部署網絡插件、監控插件和日志插件的場景。

邊緣計算還具有什麼特點(多圖詳解邊緣計算系統的組成及概念)8

▲圖1-6 DaemonSet解析

由圖1-7可知,Job用來管理批量運行的Pod,該管理類型的Pod會被定期批量觸發。與Deployment管理的Pod不同,Job管理的Pod執行完相應的任務後就退出,不會一直駐留。在邊緣計算系統中,一般用Job所管理的Pod來訓練AI模型。

邊緣計算還具有什麼特點(多圖詳解邊緣計算系統的組成及概念)9

▲圖1-7 Job解析

由圖1-8可知,Volume是用來給Pod提供存儲的,通過挂載的方式與對應Pod關聯。Volume分臨時存儲和持久存儲,臨時存儲類型的Volume會随着Pod的删除而被删除,持久存儲類型的Volume不會随着Pod的删除而被删除。

邊緣計算還具有什麼特點(多圖詳解邊緣計算系統的組成及概念)10

▲圖1-8 Volume解析

由圖1-9可知,ConfigMap作為Pod存儲配置文件的載體,通過環境變量(env)和文件卷的方式與Pod進行關聯。在邊緣計算系統中,以ConfigMap方式來管理配置信息會更方便。ConfigMap還可以對配置中的敏感信息進行加密,使配置信息更安全。

邊緣計算還具有什麼特點(多圖詳解邊緣計算系統的組成及概念)11

▲圖1-9 ConfigMap解析

由圖1-10可知,NameSpace是對Pod、Service、ConfigMap、Deployment、DaemonSet等資源進行隔離的一種機制,一般用在同一公司的不同團隊隔離資源的場景。邊緣計算系統使用NameSpace來對一個團隊可以使用的資源(CPU、内存)和創建的負載所需要的資源進行限制。

邊緣計算還具有什麼特點(多圖詳解邊緣計算系統的組成及概念)12

▲圖1-10 NameSpace解析

由圖1-11可知,Ingress可作為集群内與集群外相互通信的橋梁—将集群内的服務暴露到集群外,同時可以對進入集群内的流量進行合理的管控。在邊緣計算系統中,Ingress是一種資源對象,需要配合Ingress Controller和反向代理工作。

邊緣計算還具有什麼特點(多圖詳解邊緣計算系統的組成及概念)13

▲圖1-11 Ingress解析

關于作者:崔廣章,之江實驗室高級研究專員,資深雲計算和邊緣計算技術工程師。從2014年接觸雲計算以來,參與過多個雲計算生産項目,其中代表性的項目有基于OpenStack進行定制開發的運營商私有雲、政務雲,基于開源容器雲方案定制開發的面向運營商的數據中心操作系統(DCOS),2018年開始從事邊緣計算相關研究與開發。

本文摘編自《深入理解邊緣計算:雲、邊、端工作原理與源碼分析》,經出版方授權發布。

邊緣計算還具有什麼特點(多圖詳解邊緣計算系統的組成及概念)14

延伸閱讀《深入理解邊緣計算》

推薦語:這是一本從環境搭建、部署配置、系統架構、工作原理、源碼分析、二次開發等維度系統講解如何打造協同的雲、邊、端系統的著作。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved