OneNET EDGE学习笔记

wiki名词

打算把常用的一些名词和概念做一个解释

缩写 释义
MEC Mobile Edge Computing
ECP Edge Compute Platform
NFV Network Function Vitualizaiton

MEC(Mobile Edge Computing)

我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能

ECP(edge compute platform)

通用意义上的边缘计算平台,也可写成MEP(Mobile Edge Platform)

NFV(Network Function Vitualizaiton)

网络功能虚拟化

云网融合

或者说,是设备商运营商逐渐云化。可参考虎嗅的文章

云边协同

边缘计算和云计算不是两种互斥的技术,它们是相辅相成的关系。而且从场景需求上看,IoT/Edge与云数据中心有一些相似之处,例如:

  • 边缘也有管理节点的计算、存储、网络等资源的需求;
  • 边缘应用也想容器化和微服务化;
  • 边缘计算希望能有标准的API和工具链;
  • 安全,数据/信道加密和认证授权。

这篇讲k8s和kubnet的文章提到了这些

Kubernetes

Kubernetes已经成为云原生的标准,并且能够在任何基础设施上提供一致的云上体验。我们经常能够看到“容器 + Kubernetes”的组合在DevOps发挥10X效率,最近也有越来越多Kubernetes运行在数据中心外(边缘)的需求。

如果要在边缘部署较复杂的应用,那么Kubernetes是个理想的选择:

  • 容器的轻量化和可移植性非常适合边缘计算的场景;
  • Kubernetes已经被证明具备良好的可扩展性;
  • 能够跨底层基础设施提供一致的体验;
  • 同时支持集群和单机运维模式;
  • Workload抽象,例如:Deployment和Job等;
  • 应用的滚动升级和回滚;
  • 围绕Kubernetes已经形成了一个强大的云原生技术生态圈,诸如:监控、日志、CI、存储、网络都能找到现成的工具链;
  • 支持异构的硬件配置(存储、CPU、GPU等);
  • 用户可以使用熟悉的kubectl或者helm chart把IoT应用从云端推到边缘;
  • 边缘节点可以直接映射成Kubernetes的Node资源,而Kubernetes的扩展
  • API(CRD)可以实现对边缘设备的抽象。

缺点:
然而Kubernetes毕竟是为云数据中心设计的,要想在边缘使用Kubernetes的能力,Kubernetes或其扩展需要解决以下问题:

  • ARM的低功耗和多核的特点又使得其在IoT/Edge领域的应用非常广泛,然而大部分的Kubernetes发行版并不支持ARM架构;
  • 很多设备边缘的资源规格有限,特别是CPU处理能力较弱,因此无法部署完整的Kubernetes;
  • Kubernetes非常依赖list/watch机制,不支持离线运行,而边缘节点的离线又是常态,例如:设备休眠重启;
  • Kubernetes的运维相对于边缘场景用到的功能子集还是太复杂了;
  • 特殊的网络协议和拓扑要求。设备接入协议往往非TCP/IP协议,例如,工业物联网的Modbus和OPC UA,消费物联网的Bluetooth和ZigBee等;
  • 设备多租。

关于如何在边缘使用Kubernetes,Kubernetes IoT/Edge WG组织的一个调查显示,30%的用户希望在边缘部署完整的Kubernetes集群,而70%的用户希望在云端部署Kubernetes的管理面并且在边缘节点上只部署Kubernetes的agent。

把Kubernetes从云端延伸到边缘,有两个开源项目做得不错,分别是KubeEdge和K3S


一些想法

一定要发挥我在硬件侧的经验
要做出对硬件友好,能落地的应用

边缘EDGE的产品形态

操作系统:X86-64、arm、arm64
linux,ucos,裸机,npu

产品落地形态:
容器型云网融合终端
边缘计算盒终端(可以是低成本硬件,也可以是有AI功能的NPU)

典型的场景,有物联网和非物联网。
下一代工业自动化,智慧城市,智能家居,大型商超等)和非物联网(例如:游戏,CDN等)场景。

:感觉目前平台主要都只是在做5G核心网云化的产品,也就是5G强相关的边缘计算产品。是否漏掉了像AWS Greengrass这种类型的产品?要不要考虑将5G边缘计算和边缘计算剥离成两个产品?

:在《华为IEF平台对标报告中》,提到了IEF边缘应用包含两种,一种是容器应用,一种是函数应用。而我们目前只支持容器应用。

而函数应用,IEF只支持python。而AWS Greengrass的边缘 greengrass core已经支持了java,nodejs,python,c这四种,并都提供的有开发包SDK

边缘节点类型

直连设备,网关设备,网关子设备

边缘市场会有怎么样的应用

华为IEF
OneNET EDGE学习笔记
OneNET EDGE
OneNET EDGE学习笔记

参考文档

  1. kubeedge和k3s
  2. 云网融合-虎嗅