简介: 为帮助参赛选手更好地了解并运用相关技术,本次大赛将在 7 月至 9 月持续开展 3 轮技术培训,涵盖初、中、高不同层级,帮助开发者系统学习智能边缘系统知识。我们邀请到来自英特尔、VMware、阿里云等多家机构的技术专家进行分享。

作者:EdgeX Foundry

 

2022 EdgeX 中国挑战赛暨中关村国际前沿科技创新大赛 EdgeX 专题赛正式拉开帷幕。本次大赛分设两大赛道:医疗、教育、消费行业赛道和能源、工业、供应链赛道。大赛致力于构建一个物联网及边缘计算的学习和分享平台,基于 EdgeX Foundry、OpenYurt 等开源技术,针对不同赛道的多个应用场景,以共享技术投资解决行业技术问题。

为帮助参赛选手更好地了解并运用相关技术,本次大赛将在 7 月至 9 月持续开展 3 轮技术培训,涵盖初、中、高不同层级,帮助开发者系统学习智能边缘系统知识。我们邀请到来自英特尔、VMware、阿里云等多家机构的技术专家进行分享。

边缘计算与边缘云原生

 

首先,熊峰专家为我们讲解了边缘计算与边缘云原生的详细定义。

边缘计算(Edge Computing):

  • 是一种将工作负载部署在边缘的计算方式;
  • 是一种分散式运算架构,在靠近物、数据源或用户的地方进行应用计算与数据存储;
  • 核心目标:快速决策;
  • 四大驱动力:延迟/确定性,数据/带宽,有限的自治权,隐私/安全性;
  • 目前主要运用于汽车、农业、交通、医疗保健等行业。

图注:物联网与边缘计算

边缘计算根据对延迟的敏感度有两种定义的分层架构:Gartner 定义和 IDC 定义。

图注:Gartner 定义下的边缘计算分层架构

在 Gartner 定义中,边缘计算按延迟敏感度分层为:

  • Near Edge:非标准服务器或设备,在距离端侧最近的地方;
  • Far Edge:标准的 IDC,可以分三种类型:IDC、MEC、CDN 等;
  • Cloud:公共云或专有云服务,特征为资源集中、中心化管理。

图注:IDC 定义下的边缘计算分层架构

在 IDC 定义中,边缘计算按延迟敏感度分层为:

  • Heavy Edge:数据中心维度;集中式计算平台(CDN,自建 IDC);
  • Light Edge:低功耗计算平台,适用于工业控制,数据处理、传输等物联网场景。

图注:2015 年至 2024 年(预测)公有与非公有云服务市场规模

目前,云原生用开放、标准的技术体系,敏捷的构建和运行高弹性、容错性好、易于管理的系统,帮助企业最大化利用云的能力,最大化发挥云的价值。云原生重构企业上云方式,企业上云成为常态。

图注:云、边、端一体的边缘云原生架构

云原生加速了多云、云边融合,构建出云、边、端一体的边缘云原生架构。其中,边缘计算云边一体化基础设施因为具有以下特点被广泛运用:

  • 在边缘基础设施上提供和云上一致的功能和体验;
  • 云边运维协同、算力混编、网络协同等;
  • 云边的 DevOps 协同,业务快速边缘拓展;
  • 设备孪生,实现云边端的业务融合。

OpenYurt 云原生边缘计算平台架构

熊峰专家还为我们介绍了 OpenYurt 云原生边缘计算平台架构。

OpenYurt 是 CNCF 沙箱项目,提供云端管控、边缘自治的云边协同计算能力。通过与社区探索云原生物模型标准化,可扩展支持 EdgeX,LinkEdge 等物联网框架,支持多种物联网协议,实现设备孪生能力。

图注:OpenYurt 云原生边缘计算平台架构

OpenYurt 是基于 K8s 的边缘计算云原生智能平台项目,100% 兼容 K8s API,在 2020 年 5 月份开源,并在同年 9 月进入 CNCF 沙箱。

OpenYurt 理念:Extending your native Kubernetes to edge

目前,OpenYurt 已联合 VMware、Intel、深信服、招商局、浙大、天翼云等数家边缘计算方向产学研机构,共同推动 OpenYurt 发展,致力于成为边缘计算云原生方向事实标准。作为边缘计算云原生 PaaS 内核,OpenYurt 已经覆盖数十个行业、服务规模达数百万 CPU 核。

OpenYurt 具备完善的云边协同功能,具体分为云边运维协同与云边数据协同。

图注:OpenYurt 云边运维协同

图注:OpenYurt 云边数据协同

OpenYurt 也能与其他管理方法协同进行集群管控。

图注:OpenYurt DevOps 协同

图注:OpenYurt 单元化管理

图注:OpenYurt 单元化管理:NodePool

图注:OpenYurt 单元化管理: UnitedDeployment

在边缘计算场景下,云边交互可能弱网络连接。在断网或弱网状态下,边缘节点重启时原生 Kubernetes 无法恢复边缘业务。

为实现云边断网时,保障边缘业务的连续性与边缘业务跨节点通信的连续性,提出以下 OpenYurt 边缘自治的解决方案:

  • YurtHub 缓存节点数据,云边断网时,所有系统组件均从 YurtHub 中获取数据;
  • 业务容器重启时,Pod IP 保持不变;
  • 节点重启时,flannel vtep 的 MAC 地址保持不变。

图注:OpenYurt 边缘自治方案

图注:OpenYurt 节点池治理方案

 

基于 OpenYurt+EdgeX Foundry 的云原生物模型及边缘设备管理实践

最后,熊峰专家介绍了如何结合使用 OpenYurt 和 EdgeX 物联网框架实现云原生物模型及边缘设备管理。

图注:OpenYurt+EdgeX,打通云边端一体化协同的最后一公里(EdgeX 2.1 LTS 支持)

OpenYurt+EdgeX 结合使用方案:

  • 使用 OpenYurt 编排部署 EdgeX Foundry;
  • 为管理现实世界中的设备,需要对设备管理相关的服务进行抽象,提供云原生 IoT 模型;
  • OpenYurt 通过集成 EdgeX Foundry 设备管理平台,支持端设备的管理能力;
  • 应用管理与设备管理路径统一云原生化。

了解更多&相关链接

 

[1] OpenYurt Github:

https://github.com/openyurtio

 

[2] OpenYurt概述:

https://openyurt.io/zh/docs/core-concepts/architecture

 

[3] tunnel与运维协同:

https://openyurt.io/zh/docs/core-concepts/yurttunnel

 

[4] raven与网络协同:

https://openyurt.io/zh/docs/core-concepts/raven

 

[5] 节点池与单元化:

https://openyurt.io/zh/docs/core-concepts/yurt-app-manager

 

[6] 云原生设备管理:

https://openyurt.io/zh/docs/core-concepts/yurt-device-controllerhttps://github.com/openyurtio/yurt-device-controller/blob/main/docs/yurt-device-controller-tutorial-v2.md

2022 EdgeX 中国挑战赛已于 8 月 3 日盛大开幕,EdgeX 中文社区将在接下来的日子里为大家带来更多边缘计算讲座分享和赛事进度更新。在这个盛夏,让我们一起展现风采,从自身所学的领域出发,为物联网、边缘计算市场提供更多更好的解决方案,展望一个更好的科技未来。

欢迎扫描下方二维码报名参赛

本文为阿里云原创内容,未经允许不得转载。

讲座回顾丨基于 OpenYurt 和 EdgeX 的云边端协同新可能的更多相关文章

  1. RTE2021 回顾丨实践中的摸爬滚打,AI OPS 落地之路

    本文整理自声网Agora SD - RTN 网络传输质量负责人于涛在 RTE2021 实时互联网大会上的演讲分享.他在演讲中针对传统 OPS 痛点.AI OPS 的优势以及 AI OPS 工程化的难点 ...

  2. RTE2021 回顾丨HDR 技术产品实践与探索

    本文整理自 OPPO HDR 研发负责人熊磊,在 RTE2021 实时互联网大会上的演讲.他通过介绍 HDR 视频标准与生态.关键技术.发展方向三部分,分享了在移动端 HDR 视频的落地情况以及技术细 ...

  3. 基于JQuery实现滚动到页面底端时自动加载更多信息

    基于JQuery实现滚动到页面底端时自动加载更多信息 关键代码: 代码如下: var stop=true; $(window).scroll(function(){ totalheight = par ...

  4. 基于开源SuperSocket实现客户端和服务端通信项目实战

    一.课程介绍 本期带给大家分享的是基于SuperSocket的项目实战,阿笨在实际工作中遇到的真实业务场景,请跟随阿笨的视角去如何实现打通B/S与C/S网络通讯,如果您对本期的<基于开源Supe ...

  5. .net平台 基于 XMPP协议的即时消息服务端简单实现

    .net平台 基于 XMPP协议的即时消息服务端简单实现 昨天抽空学习了一下XMPP,在网上找了好久,中文的资料太少了所以做这个简单的例子,今天才完成.公司也正在准备开发基于XMPP协议的即时通讯工具 ...

  6. 【原创】基于Docker的CaaS容器云平台架构设计及市场分析

    基于Docker的CaaS容器云平台架构设计及市场分析 ---转载请注明出处,多谢!--- 1 项目背景---概述: “在移动互联网时代,企业需要寻找新的软件交付流程和IT架构,从而实现架构平台化,交 ...

  7. 视频私有云实战:基于Docker构建点播私有云平台

    私有云是为一个客户单独使用而构建的,因而提供对数据.安全性和服务质量的最有效控制.前置条件是客户拥有基础设施,并可以使用基础设施在其上部署应用程序.其核心属性是专有的资源.本篇文章将会结合网易云信的实 ...

  8. 重复造轮子系列——基于FastReport设计打印模板实现桌面端WPF套打和商超POS高度自适应小票打印

    重复造轮子系列——基于FastReport设计打印模板实现桌面端WPF套打和商超POS高度自适应小票打印 一.引言 桌面端系统经常需要对接各种硬件设备,比如扫描器.读卡器.打印机等. 这里介绍下桌面端 ...

  9. 基于zookeeper集群的云平台-配置中心的功能设计

    最近准备找工作面试,就研究了下基于zookeeper集群的配置中心. 下面是自己设想的关于开源的基于zookeeper集群的云平台-配置中心的功能设计.大家觉得哪里有问题,请提出宝贵的意见和建议,谢谢 ...

  10. 基于node.js 的 websocket的移动端H5直播开发

    这一篇介绍一下基于node.js 的 websocket的移动端H5直播开发, 下载文章底部的源码,我是用vscode打开, 首先在第一个终端运行 npm run http-server 这个指令是运 ...

随机推荐

  1. Kotlin 快速遍历File及子目录筛选指定类型文件

    原文: Kotlin 快速遍历File及子目录筛选指定类型文件 - Stars-One的杂货小窝 在做文件相关的app,经常会遇到筛选某个文件夹下的符合条件的文件对象,且要包含子文件夹,之前一直是自己 ...

  2. 关于python的copy()与deepcopy()之间的区别

    关于python的copy()与deepcopy()之间的区别 copy为浅复制,不会产生一个独立的对象单独存在,如list中套着list的情况,当改变子list中的一个或多个元素,copy的内容也会 ...

  3. 安装centos系统必做操作

    关闭SELinux sed -i '/^SELINUX=/c SELINUX=disabled' /etc/selinux/config 在Linux系统中临时关闭SELinux(Security-E ...

  4. Spring Boot学习日记15

    使用thymeleaf <!DOCTYPE html> <html lang="en" xmlns:th="http://www.thymeleaf.o ...

  5. 低代码平台前端的设计与实现(二)构建引擎BuildEngine切面处理设计

    上一篇文章,我们介绍了如何设计并实现一个轻量级的根据JSON的渲染引擎,通过快速配置一份规范的JSON文本内容,就可以利用该JSON生成一个基础的UI界面.本文我们将回到低开的核心-页面拖拉拽,探讨关 ...

  6. 为什么ASP.NET Core的路由处理器可以使用一个任意类型的Delegate

    毫不夸张地说,路由是ASP.NET Core最为核心的部分.路由的本质就是注册一系列终结点(Endpoint),每个终结点可以视为"路由模式"和"请求处理器"的 ...

  7. 深度观察2024中国系统架构师大会(SACC)

    今年的中国系统架构师大会(SACC)在我所在的城市广州举办,很荣幸受邀参加.这次能接触到国内最优秀的架构师,学习他们的架构思想和行业经验.对我而言非常有意义. 大会分为上下午共4场,我参加了上午的多云 ...

  8. 说说如何在Vue项目中应用TypeScript?

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 一.前言 与link类似 在VUE项目中应用typescript,我们需要引入一个库vue-property-decorator, 其是基 ...

  9. 记录--使用Canvas绘制一个验证码组件

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 使用Canvas绘制一个验证码组件 前言 验证码,这一日常伴随我们的要素,是我们在线交互的重要安全保障.你的手机短信里是否被它占据半壁江山 ...

  10. 记录--再也不用手动改package.json的版本号

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 本文的起因是有在代码仓库发包后,同事问我"为什么package.json 里的版本还是原来的,有没有更新?",这个时候 ...