zoukankan      html  css  js  c++  java
  • 聚焦支持边缘弱网环境,博云开源FabEdge边缘网络方案

     2021 年 8 月 2 日,博云正式开源 FabEdge 边缘网络方案。FabEdge 是一款基于 kubernetes 和 kubeedge 构建的开源网络方案,解决边缘计算场景下,容器网络配置管理复杂、网络割裂互不通信、缺少服务发现、缺少拓扑感知能力、无法提供就近访问等难题。

    并且,Fabedge 支持弱网环境,如4/5G,WiFi,LoRa 等;支持边缘节点动态 IP 地址,适用于物联网,车联网等场景。

    目前,FabEdge 项目代码已在Github上开源,项目地址为:https://github.com/FabEdge/fabedge。项目使用 Apache 2.0 协议,欢迎更多技术开发者和爱好者前去试用和使用。

    01

    Features 五大特性

    • Kubernetes 原生支持:完全兼容的 Kubernetes API ,无需额外开发,依赖较少的通用开源组件,即插即用。

    • 边缘容器网络管理:为边缘节点实现网络地址段管理,以及边缘容器网络地址分配。

    • 边云协同/边边协同:通过隧道技术打通边缘容器与云端容器,以及边缘节点间容器的相互安全通信,实现边云协同和边边协同。

    • 边缘 “ 社区 ”:使用“社区” CRD 自定义资源控制哪些边缘节点可以互相通讯。

    • 就近访问:优先使用本地服务,其次使用云端服务。

    02

    Advantages 三大优势

    • 标准 —— 完全兼容 k8s api, 即插即用支持任何标准 k8s 集群;

    • 安全 —— 所有通讯使用基于证书的 IPSEC 隧道;

    • 易用 —— 使用 Operator 机制,最少化的人工运维代价。

    03

    How it works?

    云端是标准 Kubernete 集群,可以使用任何 CNI 网络插件,比如 Calico。在集群里运行 KubeEdge 云端组件 cloudcore,在边缘节点运行 KubeEdge 边缘组件 edgecore ,边缘节点注册到云端集群,

    Fabedge有三个组件组成,分别是:Operator、 Connector 和 Agent。

    Operator 运行在云端集群,监控节点,服务等资源变化,动态为边缘节点维护configmap ,同时为每个边缘节点生成 Agent ;Connector 运行在云端,负责云端网络配置管理,并在云端和边缘节点转发流量;而 Agent 消费 configmap 信息,动态维护本节点隧道、路由、iptables 等网络配置。

    FabEdge 架构图

    FabEdge利用两个通道实现云边数据交换,一个是kubeedge管理的websock/quic 通道,用于控制信令;另一个是 FabEdge 自身管理的加密隧道,用于应用之间的数据传输。

    Operator 在云端监听 node、service、endpoint 等 k8s 资源,为每个边缘节点生成一个 configmap,包含本节点的子网、隧道、负载均衡等相关配置信息。同时 operator 负责为每个边缘节点生成相应的 pod,用于启动本节点上的agent。

    Connector 负责终结到边缘节点加密隧道,在云和边缘节点进行流量转发。它依赖云端CNI插件将流量转发到 connector 以外的节点,目前支持的云端 CNI 插件是 callico 。

    边缘节点使用社区 CNI 插件 bridge 和 host-local,是使用社区 node-local-dns 地址解析功能,负责本节点的域名解析和缓存。

    每个边缘节点运行一个 agent ,消费本节点对应 configmap,包括以下功能:

    • 管理本节点 CNI 插件的配置文件

    • 管理本节点安全隧道

    • 管理本节点的负载均衡信息,会优先使用本地服务后端,其次是用云端后端

    04

    FabEdge vs Calico/Flannel

    Fabedge 不同与 Calico,Flannel 等标准 Kubernetes 网络插件。这些插件主要应用在数据中心,解决 kubernetes 集群内部网络问题,而 Fabedge 解决的是边缘计算场景下,使用 Kubeedge 将边缘节点接入云端 Kubernetes 集群后,不同边缘节点上 POD 之间, 边缘节点 POD 和云端 POD 之间如何通讯的问题。目前 Fabedge 支持无缝集成云端 Calico 插件,以后会扩展到其它插件。

    关注“博云”公众号加入FabEdge微信交流群

  • 相关阅读:
    Android--从路径中提取文件名
    Android--全局变量 很好很强大
    Android数据库升级实例
    eclipse中maven项目部署到tomcat [转]
    【项目管理和构建】十分钟教程,eclipse配置maven + 创建maven项目
    maven下载和安装
    Maven 在eclipse中如何配置
    怎么查看eclipse是否支持maven
    证书
    Tomcat7中开启gzip压缩功能的配置方法
  • 原文地址:https://www.cnblogs.com/bocloud/p/15099894.html
Copyright © 2011-2022 走看看