当前位置: 首页 > 软件库 > 云计算 > 云原生 >

OpenYurt

边缘计算云原生项目
授权协议 Apache
开发语言 Google Go
所属分类 云计算、 云原生
软件类型 开源软件
地区 国产
投 递 者 龚俭
操作系统 跨平台
开源组织 阿里巴巴
适用人群 未知
 软件概览

OpenYurt 是阿里巴巴开源的首个边缘计算云原生项目。

该项目主打“云边一体化”概念,依托原生 Kubernetes 强大的容器编排、调度能力,通过众多边缘计算应用场景锤炼,实现了一整套对原生 Kubernetes“零”侵入的边缘云原生方案,提供诸如边缘自治、高效运维通道、边缘单元化管理、边缘流量拓扑管理,安全容器、边缘 Serverless/FaaS、异构资源支持等能力。OpenYurt 能帮用户解决在海量边、端资源上完成大规模应用交付、运维、管控的问题,并提供中心服务下沉通道,实现和边缘计算应用的无缝对接。

OpenYurt 适用于常见的边缘计算用例,其需求包括:

  • 使设备和工作负载之间的长距离网络流量最小化。
  • 克服网络带宽或可靠性限制。
  • 远程处理数据以减少延迟。
  • 提供更好的安全模型来处理敏感数据。

OpenYurt 技术方案有如下特点:

  • 对原生 Kubernetes“零”侵入,保证对原生 K8s API 的完全兼容。不改动 Kubernetes 核心组件,并不意味着 OpenYurt 是一个简单的 Kubernetes Addon。OpenYurt 通过 proxy node network traffic,对 Kubernetes 节点应用生命周期管理加了一层新的封装,提供边缘计算所需要的核心管控能力;

  • 无缝转换,OpenYurt 提供了工具将原生 Kubernetes“一键式”转换成支持边缘计算能力的 Kubernetes 集群;

  • 低 Overhead,OpenYurt 参考了大量边缘计算场景的实际需求,在保证功能和可靠性的基础上,本着最小化,最简化的设计理念,严格限制新增组件的资源诉求。

以上技术特点使得 OpenYurt 能够:

  • 最大程度保证用户在管理边缘应用时获得和管理云端应用一致的体验;
  • 兼容所有云厂商的 Kubernetes 服务,易于集成;
  • 保持极低的运维成本。

OpenYurt 开源的核心能力包括:

  • 边缘自治能力:YurtHub 作为节点上的临时配置中心,在网络连接中断的情况下,持续为节点上所有设备和客户业务提供数据配置服务。YurtHub 提供了对大量原生 Kubernetes API 的支持,可以在节点和边缘单元维度提供“Shadow Apiserver”的能力,在边缘计算弱网络链接场景的价值尤为突出;

  • 边缘运维通道:在边缘场景,由于大多数边缘节点没有暴露在公网之上,中心管控无缝和边缘节点主动建立网络链接,所有的 Kubernetes 原生应用运维 APIs(logs/exec/metrics)会失去效力;YurtTunnel 通过在管控与边缘节点之间建立反向通道,并和节点的生命周期完整联动,承载原生运维 APIs 的流量;

  • 集群转换能力:Yurtctl 作为 OpenYurt 官方命令行工具,提供原生 Kubernetes 集群支持边缘计算 infrastructure 的一键式切换。

其它更高级的功能比如边缘流量管理、单元化管理,部署、区域自治等将会逐步开源。

 

OpenYurt 的主要组件包括:

  • YurtHub:一个节点守护程序,用作来自Kubernetes节点守护程序(Kubelet,Kubeproxy,CNI插件等)的出站流量的代理。它在边缘节点的本地存储中缓存Kubernetes节点守护程序可能访问的所有资源的状态。如果边缘节点处于脱机状态,则这些守护程序可以在节点重新启动时恢复状态。
  • Yurt控制器管理器:针对不同的边缘计算用例,它管理一些控制器,例如节点控制器和单元控制器(即将发布)。例如,autonomy即使缺少节点心跳,也不会从APIServer退出处于该模式的节点中的Pod。
  • Yurt隧道服务器:它TunnelAgent通过反向代理与在每个边缘节点中运行的守护程序连接,以在云站点控制平面和连接到Intranet(将要发布)的边缘节点之间建立安全的网络访问。
  • Kubernetes (简称 K8s) 是一个开源的容器编排系统,用于自动部署、扩展和管理应用程序的容器。它使用轻量级的容器来打包和部署应用程序,提供了自动扩展、负载平衡、容器状态管理、服务发现、滚动升级、容器重新部署等功能。K8s 通常用于云原生应用程序的开发和部署,可以在多个平台上运行,包括云服务器、私有云、混合云和本地环境。 KubeEdge 是一个开源的边缘计算平台,用于支持边缘计算场景中

 相关资料
  • TBD 参考 The Birth of an Edge Orchestrator – Cloudify Meets Edge Computing K8s(Kubernetes) and SDN for Multi-access Edge Computing deployment

  • 面试约的五一前的最后一个工作日晚上7点,电话面,上来面试官就道歉,说约面的时候没考虑到要放假了。 自我介绍 分布式锁相关 问项目里面是怎么使用到redis的?(缓存, 分布式锁,做抢单) 如果不用redis,怎么做抢单?(答:可以用go的channel做异步) 如果不用channel呢,可以用什么设计模式?(没回答上,面试官说用单例模式) MySQL怎么实现分布式锁?(唯一key) 除了唯一Key

  • CNCF,全称Cloud Native Computing Foundation(云原生计算基金会),成立于2015年12月11日,其口号是坚持和整合开源技术来让编排容器作为微服务架构的一部分,其作为致力于云原生应用推广和普及的一支重要力量,不论您是云原生应用的开发者、管理者还是研究人员都有必要了解。 CNCF作为一个厂商中立的基金会,致力于Github上的快速成长的开源技术的推广,如Kubern

  • 我有一组原点-终点坐标,我想计算它们之间的最短路径。 我的出发地坐标有时位于一条长直线道路的中间。然而,由OSMNX/NETWorkX计算的最短路径将不考虑中间边缘到最近的节点路径。 OSMnx或networkx中是否有任何现成的函数,我可以使用它来找到在道路中间起点/终点的最短路径? 如果没有这样的功能,我会考虑使用以下步骤。 获取起点和终点的最近边 获取这些最近边的节点:假设(a,b)为起点,

  • 云原生一词已经被过度的采用,很多软件都号称是云原生,很多打着云原生旗号的会议也如雨后春笋般涌现。 云原生本身甚至不能称为是一种架构,它首先是一种基础设施,运行在其上的应用称作云原生应用,只有符合云原生设计哲学的应用架构才叫云原生应用架构。 云原生的设计理念 云原生系统的设计理念如下: 面向分布式设计(Distribution):容器、微服务、API 驱动的开发; 面向配置设计(Configurat

  • 本文向大家介绍原生JavaScript制作计算器,包括了原生JavaScript制作计算器的使用技巧和注意事项,需要的朋友参考一下 原生JavaScript制作计算器 再给大家分享一个稍微复杂些的计算器 效果图演示