边缘计算

1、必要性

1.1 当前遇到的问题

边缘计算的必要性:有些图像识别等应用场景,如果把图像传递到服务器上进行识别,那么每年的带宽非就有可能上百万,对网络带宽也造成了极大的冲击。

可能用到技术点:

  • 边缘计算框架
  • 区块链防伪

如果你看边缘计算的文章会晕掉的,别看那些文章,能根据这个理论解决实际问题就了可以了。

1.2 实现规划

边缘节点用的设备有:

  • 基于安卓的平板
  • 基于 linux 系统的小型主机

按照类型分为边缘节点

  • 二进制运行时边缘一体机:以二进制代码形式,来部署边缘一体机。
  • 容器运行时边缘一体机: 以 docker 来部署边缘机器上的服务。

2、实现案例

所有的边缘机器安装了网关程序。

如果不是为了通用的系统做边缘计算,那就很简单了。

  • 如何把相应的程序安装到边缘机器上,例如安卓手机的程序安装。这些程序包含
    • 网络通讯网关
    • 图片识别算法
  • 对边缘一体机的管理。

2.1 激活边缘一体机

就是通过必要的网关,让边缘一体机能登陆到中心服务器上.

查看主机情况

2.2 部署应用到边缘一体机

前提:已预装了官方应用

3、一些开源框架

一些开源软件能为边缘计算平台提供组件功能,具体包括:

(1)网络管理。开源网络自动化平台(ONAP)是一个为物理或虚拟网络功能的自动化 和实时策略驱动化编排提供平台的开源项目,在边缘云中可用于定制网络服务。Linux 基金会在 2018 年将 ONAP 与其他 5 个功能类似的开源项目合并成 LFNetworkingFund 项目。ONOS 是一个开源网络操作系统,它提供一个控制平面用于管理网络组件,运行软件程序和模块,并为终端主机提供通信服务。目前,ONAP 应用于 Akraino EdgeStack 项目中,ONOS 应用于 CORD 项目中。

(2)容器技术。Docker 作为一个开源的应用容器引擎,被多个边缘计算平台使用以提供灵活的应用部署方式。Kubernetes 是一个对容器化应用进行自动化部署、扩展和管理的开源项目,可用于边缘计算平台中以提供可靠和可扩展的容器编排。

(3)云平台。OpenStack 是一个开源的云计算管理平台项目,可用于构建边缘云,管理边缘云基础设备的计算、存储和网络资源。StarlingX 是一个用于构建分布式边缘云的开源项目,提供一套完整的云基础架构软件栈,现应用于 AkrainoEdge Stack 项目中。

(4)人工智能技术。引入人工智能技术是边缘计算的发展趋势之一。Acumos 人工智能(AI)是一个用于训练、部署和共享 AI 应用程序的开源框架,可用于边缘云中以提供 AI 边缘计算应用的快速开发和部署。Acumos AI 目前已用于 Akraino Edge Stack 项目中。

3.1 Apache Edgent

还在孵化,参考一下就可以了。

  • 用 Edgent 在边缘计算层实时流处理带来的价值

    • 降低通讯成本和传输到服务器端的数据量。
    • 本地及时响应,提高时效性。
    • 边缘计算节点在断网情况下,也能处理数据。
    • 减轻服务器端的处理和存储的压力。
  • Edgent 测试过的部署环境

    • Java 8,包括树莓派 B 和 Pi2 B
    • Java 7
    • Android
  • Edgent 与后端系统的通讯方式

    • MQTT
    • IBM Watson IoT Platform
    • Apache Kafka
    • HTTP, WebSocket client
    • 串口
    • JDBC,文件
    • 自定义消息总线

3.2 Akraino EdgeStack

Akraino Edge Stack 是一个 Linux 基金会项目,支持针对边缘计算系统和应用程序优化的高可用性云服务,今天宣布其从形成转变为“Excute(执行)”。 该项目成员有 ARM、AT&T、戴尔 EMC、爱立信、华为、英特尔公司、inwinSTACK、瞻博网络、诺基亚、高通、Radisys、红帽和风河等。 HPE 首席执行官 Antonio Neri 表示,该公司将在未来四年内投资 40 亿美元用于边缘技术和服务。此后,微软承诺在同一时间内投资 50 亿美元用于物联网和边缘技术。

Akraino 项目设计到了众多的项目和软件,包括 Airship、Calico、Camunda、CI/CD、Ceph、CNI、Gerrit 、Jenkins、JIRA、Kubernetes、Nexus 3、ONAP、OpenStack、OVS-DPDK、SR-IOV、Tempest 等,架构图如下,其中本文介绍几个关键的组件。