暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

源自百度的一款开源边缘计算平台:Baetyl

Linux技术宅 2024-10-22
48

点击👆Linux技术宅,关注我!!!




Baetyl(原名为OpenEdge)是源自百度的一款开源边缘计算平台,具有强大的功能和灵活的架构设计,旨在将云计算的能力扩展至用户现场环境中,以提供即时且低延迟的服务体验。它能够满足多样化的边缘计算需求,为开发者提供了极大的便利和支持。

一、核心功能与特点

1.边缘计算支持

Baetyl支持设备接入、消息路由以及消息处理等功能,为开发者提供了极大的便利。它通过在网络的边缘处部署计算资源,使得数据可以在靠近数据源的地方得到及时处理,从而大幅度降低了延迟,并减轻了中心服务器的负担。

2.云边协同

Baetyl实现了云与边缘的协同工作,能够将应用程序、数据处理逻辑以及一部分云计算能力下沉至设备端或边缘节点,从而更好地支持实时数据处理和低延时应用需求。它能够与云端服务无缝连接,为用户提供更加灵活多样的解决方案。

3.灵活性与可扩展性

Baetyl的架构设计注重灵活性和可扩展性,支持多种部署方式,能够满足多样化的边缘计算场景。它提供了丰富的配置项,允许用户根据自身需求调整系统行为。

4.安全性

作为Linux Foundation Edge的项目,Baetyl在设计之初就考虑了安全性,确保数据传输和处理的安全可靠。

二、架构与工作原理

1.架构组成

Baetyl的架构主要由三大部分构成:边缘端、云端以及连接两者的安全通信通道。边缘端负责直接与物理世界交互,收集来自传感器或其它设备的数据,并执行初步的数据处理任务。云端则是整个系统的控制中心与数据中心,提供了丰富的API接口供开发者调用,并支持大数据分析、机器学习模型训练等高级功能。

2.工作原理

在边缘设备上安装并配置Baetyl Agent,这是整个系统中最基础也是最重要的一环。Baetyl Agent作为边缘端与云端之间的桥梁,承担着设备发现、状态监控、命令执行等多项职责。一旦Agent成功启动并与云端建立连接后,即可开始部署应用程序。应用程序通常由一系列微服务组成,每个微服务负责特定的功能模块,比如数据采集、图像识别等。Baetyl还内置了一套完善的事件驱动机制,允许应用程序间通过发布/订阅的方式进行通信,极大地提高了系统的响应速度与并发处理能力。

三、应用场景与优势

1.应用场景

Baetyl广泛应用于工业自动化、智能物联网(IoT)、视频流处理等多个场景。它特别适合新兴的强边缘设备,如AI一体机、5G路侧盒子等。

2.优势

通过云管理和边缘操作解决方案,Baetyl降低了边缘计算的复杂性,提高了部署和管理的效率。它提供了灵活的服务管理、数据缓存与同步、事件驱动等功能,能够满足多样化的边缘计算需求。

四、开发环境与社区支持

1.开发环境

确保开发环境已安装Docker和Git。

Websitehttps://baetyl.io/zh/[1]Githubhttps://github.com/baetyl/baetyl[2]GitCodehttps://gitcode.com/gh_mirrors/ba/baetyl/overview[3]

下载最新版本的Baetyl SDK和相关文档。

2.社区支持

Baetyl拥有一个活跃的开发者社区,用户可以在社区中交流经验、分享心得,并获取最新的技术动态和更新信息。社区还提供了丰富的教程和示例代码,帮助初学者快速上手Baetyl的开发和应用。Baetyl的安装部署过程可以根据不同的运行环境和需求进行灵活配置。以下是一个基于docker容器模式的快速安装部署指南:

五、系统与环境要求

Baetyl支持多种操作系统,包括Ubuntu16.04、Ubuntu18.04、Debian9、CentOS7、Raspbian、Darwin等,同时支持amd64、i386、armv7l和arm64等平台。

在docker容器模式下,Baetyl依赖于Docker Engine。因此,在安装Baetyl之前,需要确保机器上已经安装了Docker。如果尚未安装,可以通过以下命令进行安装(适用于类Linux系统):

    curl -sSL https://get.docker.com | sudo sh

    对于CentOS7系统,在安装结束后需要手动启动Docker,并设置开机自启动:

      sudo systemctl enable docker
      sudo systemctl start docker

      六、安装Baetyl

      Baetyl发布新版本的同时,也会发布对应的二进制文件以及相应的rpm、deb包。使用以下命令,可以将Baetyl快速安装到设备上:

        curl -sSL http://dl.baetyl.io/install.sh | sudo bash

        执行完毕后,Baetyl将会被安装到/usr/local/bin
        目录下。Baetyl的运行配置存放在/usr/local/etc/baetyl
        /usr/local/var/db/baetyl
        目录下。

        七、配置Baetyl

        Baetyl的配置文件位于/usr/local/etc/baetyl
        目录下。用户可以通过编辑配置文件来设置Baetyl的运行参数和模块配置。

        Baetyl官方提供了一套示例配置,可以通过以下命令导入示例配置文件:

          curl -O http://dl.baetyl.io/install_with_docker_example.sh && bash install_with_docker_example.sh

          上述脚本将会检测当前系统上是否存在历史配置文件,并根据提示选择是否删除历史配置文件。用户还可以根据脚本中的提示选择是否提前拉取示例配置中要用到的各个模块的镜像。

          八、启动Baetyl

          在快速安装方式下,可以通过以下命令来启动Baetyl:

          在Linux系统上:

            sudo baetyl start

            或者使用Systemd来管理Baetyl的启动、停止和查看状态:

              sudo systemctl start baetyl  # 启动Baetyl
              sudo systemctl stop baetyl # 停止Baetyl
              sudo systemctl status baetyl # 查看运行状态

              在Darwin系统上:

                baetyl start

                或者使用Launchctl来管理Baetyl的启动和停止:

                  ln -sfv usr/local/etc/baetyl/baetyl.plist ~/Library/LaunchAgents/
                  launchctl load ~/Library/LaunchAgents/baetyl.plist # 启动Baetyl
                  launchctl unload ~/Library/LaunchAgents/baetyl.plist # 停止Baetyl

                  九、验证安装

                  快速安装Baetyl以后,可以通过以下步骤验证Baetyl是否启动成功:

                  在Linux系统上,可以在终端中执行命令sudo systemctl status baetyl
                  来查看Baetyl是否正常运行。
                  在Linux或者Darwin系统上,均可在终端中执行命令docker stats
                  查看各个模块的Docker容器是否正常运行。

                  如果Baetyl成功启动,并且各个模块的容器也正常运行,那么说明Baetyl已经成功安装并部署到设备上。

                  十、卸载Baetyl

                  如果需要卸载Baetyl,可以通过以下命令进行卸载:

                    sudo baetyl uninstall

                    或者在安装目录下找到卸载脚本并执行。

                    十一、注意事项

                    1.在安装和配置Baetyl时,需要确保网络连接正常,以便从远程仓库拉取所需的镜像和配置文件。2.如果在安装过程中遇到问题,可以参考Baetyl的官方文档或者社区支持获取帮助。3.在生产环境中部署Baetyl时,建议进行充分的测试和验证,以确保系统的稳定性和可靠性。

                    References

                    [1]
                    https://baetyl.io/zh/
                    [2]
                    https://github.com/baetyl/baetyl
                    [3]
                    https://gitcode.com/gh_mirrors/ba/baetyl/overview

                    期待你的

                    分享

                    点赞

                    在看

                    文章转载自Linux技术宅,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

                    评论