当前位置:   article > 正文

边缘计算框架_边缘计算参考框架

边缘计算参考框架

1 云计算相关知识

1.1 概念及术语

PaaS/SaaS

私有云需要
(1) 服务器虚拟化
VMware ESXi或vSphere
(2) 网络虚拟化(SDN)
例如VMware NSX或Open vSwitch,这些来自开源领域的SDN产品。
(3) 存储虚拟化(SAN)
VMware提供VSAN,而Swift和Ceph则是开源领域的两款选项

云端管理软件
OpenStack、Oracle Cloud和VMware Integrated OpenStack等

开源私有云方案
Seafile&oWnCloud
云主机管理软件nano portal
超融合私有云
StarVCenter
一套国产超融合云平台IaaS软件,能通过整合企业数据中心(机房)硬件,轻松搭建私有云

CNCF(云原生计算基金会)
容器管理云平台 Rancher
还有kubesphere
KubeSphere 是在 Kubernetes 之上构建的面向云原生应用的分布式操作系统,完全开源,支持多云与多集群管理,提供全栈的 IT 自动化运维能力,简化企业的 DevOps 工作流。
dive显示docker层中的内容
大家所熟知的容器调度引擎有K8S, Swarm, Mesos和Rancher,这些都是开源的调度引擎
K8S入门推荐《k8s in action》这本书
k8s和docker核心干货
https://zhuanlan.zhihu.com/p/494054143
2022 年 4 月 dockershim 将会从 Kubernetes 1.24 中完全移除
containerd 是一个来自 Docker 的高级容器运行时,并实现了 CRI 规范。
OperatorHub.io
OperatorHub.io网站,它是K8S Operator的集中式存储库.
Kubernetes Operator
Operator 是由 CoreOS 开发的,用来扩展 Kubernetes API,特定的应用程序控制器,它用来创建、配置和管理复杂的有状态应用,如数据库、缓存和监控系统。Operator 基于 Kubernetes 的资源和控制器概念之上构建,但同时又包含了应用程序特定的领域知识。创建Operator 的关键是CRD(自定义资源)的设计。
Operator Framework
Operator Framework 同样也是 CoreOS 开源的一个用于快速开发 Operator 的工具包,该框架包含两个主要的部分:
Operator SDK: 无需了解复杂的 Kubernetes API 特性,即可让你根据你自己的专业知识构建一个 Operator 应用。
Operator Lifecycle Manager OLM: 帮助你安装、更新和管理跨集群的运行中的所有 Operator(以及他们的相关服务)

Proxmox VE(Proxmox Virtual Environment) 是一个集成OPENVZ 支持KVM应用的环境,开源虚拟机平台 。OpenVZ是基于Linux内核和作业系统的操作系统级虚拟化技术。OpenVZ允许物理服务器运行多个操作系统,被称虚拟专用服务器(VPS,Virtual Private Server)或虚拟环境(VE, Virtual Environment)。授权为GPLv2

基于kvm的虚拟机解决方案,还有RedHat的开源版本 oVirt。
都有web管理界面

HCI(Hyperconverged Infrastructure,即超融合)
SmartX(北京志凌海纳科技有限公司)是领先的超融合存储和虚拟化等IT基础架构与解决方案提供商。融合套件包括 SmartX 超融合基础设施中的 SMTX OS 和 CloudTower。 社区版完全免费,简单易得、功能丰富
虚拟化容器方案有KVM,VMware,Xenserver和Openstack。

云计算相关的考试
阿里云ACE认证
HCIP认证
华为云HCIE含金量更高?

2 人工智能相关概念

机器学习是人工智能的一个子领域。深度学习是机器学习的一个子领域,神经网络构成了深度学习算法的支柱。事实上,区分单个神经网络与深度学习算法的,是神经网络的节点层数或深度,深度学习算法必须超过三层。
机器学习
常见机器学习任务的端到端示例,例如图像分类、对象检测、姿势估计、问题回答、文本分类等。

2.1 术语及概念

IoT(Internet of Things,物联网)
onnx 叫做Open Neural Network Exchange。数据格式采用protobuf 如:onnx.proto
Pytorch -> ONNX -> TensorRT
Pytorch -> ONNX -> TVM
TF – onnx – ncnn
安装:pip onnx (同时也会装protobuf)
openvino:英特尔(Intel)为了让大家能够快速入门,提出了一项免费、跨硬体(CPU、 GPU、FPGA、ASIC)的开放电脑视觉推论及神经网路(深度学习)优化工具包「OpenVINO」( Open Visual Inference & Neural Network Optimization Toolkit),同时提供很多预先训谏及优化好的神经网路模型可供大家直接使用。
参考
Cann
TransPose
HRNet:人体姿势估计神经网络
HigherHRNet:自下而上的HRNet
参考
CNN(Convolution Neural Network,卷积神经网路)一般传统用于影像分类。
RNN(循环神经网络)
DNN (Deep Neural Network)
GAN
MXNet 是亚马逊(Amazon)选择的深度学习库。

目标检测常用的算法,比如Yolov3、Yolov4算法、Yolov5算法、Yolox算法。
参考文档

NLP 自然语言处理
常见图像分类模型(InceptionV3 和 MobileNet)
TensorFlow 是一个端到端平台,它可以让您轻松地构建和部署机器学习模型。
描述:用于数值计算的使用数据流图的开源软件库.

PyTorch是一个基于Torch的Python开源机器学习库,用于自然语言处理等应用程序。它主要由Facebookd的人工智能小组开发,不仅能够实现强大的GPU加速,同时还支持动态神经网络,这一点是现在很多主流框架如TensorFlow都不支持的。 PyTorch提供了两个高级功能:
1.具有强大的GPU加速的张量计算(如Numpy)
2.包含自动求导系统的深度神经网络
PyTorch不支持快速傅里叶?但支持动态神经网络
Torch是一个有大量机器学习算法支持的科学计算框架,是一个与Numpy类似的张量(Tensor) 操作库,其特点是特别灵活,但因其采用了小众的编程语言是Lua,所以流行度不高,所以其实Torch是 PyTorch的前身,它们的底层语言相同,只是使用了不同的上层包装语言。
Numpy是一个用python实现的科学计算包,包括:1、一个强大的N维数组对象Array;2、比较成熟的(广播)函数库;3、用于整合C/C++和Fortran代码的工具包;4、实用的线性代数、傅里叶变换和随机数生成函数。numpy和稀疏矩阵运算包scipy配合使用更加方便。

2.2 一些开发环境

端(手机与IOT设备)、边(基站与路由设备)、云(服务器)
量化/剪枝/蒸馏
MindSpore(AI框架):是华为自研的一个全场景的深度学习框架。
MindX SDK(昇腾SDK):行业SDK和应用解决方案。
ModelArts(AI开发平台):华为云AI开发平台。
MindStudio(全流程开发工具链):AI全流程开发IDE)

3 边缘计算框架

AWS的Greengrass
微软的Azure IoT Edge 运行时开源,要配合Azure
阿里的linkEdge
华为云智能边缘服务 IEF
华为的云边端一体开发模式EC
Linux基金会的Edgex Foundry
Cloud Foundry

KubeEdge和K3S
前者是华为捐给CNCF的

板卡上部署边缘集群方案
恩智浦EdgeScale:面向边缘计算的安全、可扩展设备管理套件
三个管理级别:
1、点击式仪表板用于快速开发和定制
2、命令行界面(CLI)用于提高管理大规模部署时的控制力
3、RESTful API用于与任何云计算框架集成,同时让OEM能够提供自己独特的最终用户体验
结合AWS亚马逊公有云部署
参考文档:
Real-time Edge Software User Guide
IMX yocto工程
LSDK Yocto project

边缘计算的优点:
低延迟:计算能力部署在设备侧附近,设备请求实时响应;
低带宽运行:将工作迁移至更接近于用户或是数据采集终端的能力能够降低站点带宽限制所带来的影响。尤其是当边缘节点服务减少了向中枢发送大量数据处理的请求时。
隐私保护:数据本地采集,本地分析,本地处理,有效减少了数据暴露在公共网络的机会,保护了数据隐私。
参考:
2020十大边缘计算开源项目
几款开源边缘计算平台

其他概念
(MEC)移动边缘计算?多接入边缘计算
屏蔽双绞线 (STP, Shielded Twisted Pair)
非屏蔽双绞线 (UTP, Unshielded Twisted Pair )
神经处理单元(NPU)

4 NXP实时边缘文档《Real-time Edge Software User Guide》解读

NXP edgescale
相关的三个Yocto层职责:
meta-real-time-edge 聚焦Cortex-A核上的Linux和裸金属应用编译
meta-nxp-harpoon 聚焦Cortex-A core上的RTOS编译.
meta-rtos-industrial 聚焦Cortex-M核上的RTOS编译

meta-real-time-edge/recipes-extended/real-time-edge-jailhouse 该脚本描述了如何编译运行在Cortex-A核上的 jailhouse
meta-real-time-edge/recipes-extended/real-time-edge-baremetal 该脚本描述了如何编译运行在Cortex-A核上的裸金属应用

Harpoon提供了开发运行在一个或多个Cortex-A核上的实时应用的环境,该RTOS与linux并行运行

PTP部分可以参考该文档 4.3.5 Quick Start for IEEE 1588

安装网络配置工具:
参考 5.4.2.2 Installing Netopeer2-cli on Ubuntu18.04

  1. 安装依赖包
    apt install -y git cmake build-essential bison autoconf dh-autoreconf flex
    apt install -y libavl-dev libprotobuf-c-dev protobuf-c-compiler zlib1g-dev
    apt install -y libgcrypt20-dev libssh-dev libev-dev libpcre3-dev

  2. 安装 libyang --下载会慢一些
    $ git clone https://github.com/CESNET/libyang.git
    $ cd libyang
    $ git checkout v1.0-r4 -b v1.0-r4
    $ mkdir build && cd build
    $ cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr …
    $ make && make install

  3. 安装 sysrepo (v0.7.8) --编译时间会久一些
    $ git clone https://github.com/sysrepo/sysrepo.git
    $ cd sysrepo
    $ git checkout v0.7.8 -b v0.7.8
    $ mkdir build && cd build
    $ cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX:PATH=/usr …
    $ make && make install

  4. 安装 libnetconf2
    $ git clone https://github.com/CESNET/libnetconf2.git
    $ cd libnetconf2
    $ git checkout v0.12-r2 -b v0.12-r2
    $ mkdir build && cd build
    $ cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr …
    $ make && make install

  5. 安装 protobuf: – 编译最久
    $ git clone https://github.com/protocolbuffers/protobuf.git
    $ cd protobuf
    $ git submodule update --init --recursive
    $ ./autogen.sh
    $ ./configure
    $ make && make install
    $ sudo ldconfig # refresh shared library cache.

  6. 安装 Netopeer2-cli(v0.7-r2):
    $ git clone https://github.com/CESNET/Netopeer2.git
    $ cd Netopeer2
    $ git checkout v0.7-r2 -b v0.7-r2
    $ cd cli
    $ cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr .
    $ make && make install

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号