EdgeX 2.x 环境配置

本文介绍如何在Ubuntu系统上安装Docker引擎及Docker Compose,并详细展示了配置过程。此外,还提供了使用Docker Compose启动EdgeX Foundry的方法。

环境配置

安装 Docker引擎

使用仓库在x86_64架构、Ubuntu系统中安装Docker引擎,步骤如下:

\\ 更新apt
sudo apt-get update

\\ 设置apt通过HTTPS使用远程仓库
sudo apt-get install ca-certificates curl gnupg lsb-release     

\\ 添加Docker官方GPG钥匙
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg                              

\\ 设置Docker仓库
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

\\ 安装Docker引擎
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io

其它平台(x86_64、arm64、arm32、s390x)、其它操作系统(Mac、Windows、CentOS、Debian、Binaries)的其它安装方式(基于安装包、基于脚本),参考Docker安装官网

通过上述步骤安装Docker引擎后,执行docker命令时,可能会提示权限不足,需要sudo。
未避免每次都使用sudo,可以创建docker组,并将用户加入该组。
具体操作为:

\\ 创建docker组
sudo groupadd docker

\\ 将当前用户加入docker组
sudo usermod -aG docker $USER

执行完成后,重启终端或者重新登陆才可生效。

安装 Docker Compose

在安装了Docker引擎后才能安装Docker Compose。

安装步骤如下:

  1. 下载Docker Compose
    sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
    
  2. 添加执行权限
    sudo chmod +x /usr/local/bin/docker-compose
    

其它系统的安装步骤,参考Docker Compose安装官网

安装EdgeX

EdgeX的Docker Compose文件Github链接为https://github.com/edgexfoundry/edgex-compose,下载相应版本的EdgeX,相关说明详见其Readme文件。

在EdgeX目录下,执行如下命令即可启动EdgeX:

docker-compose up -d

该命令会(1)默认读取当前目录下的docker-compose.yml文件,(2)并根据文件下载需要的docker镜像,(3)根据文件启动相关容器。-d参数,使所有容器都在后台运行。
执行完成后,结果如下图所示:
在这里插入图片描述
常见docker-compose命令有:

\\ 停止运行中的容器
docker-compose stop 

\\ 停止运行中的容器,并且会删除已停止的容器以及已创建的所有网络。
docker-compose down

\\ 查看容器
docker-compose ps

docker-compose教超参见docker-compose教程

<think> 首先,用户的问题是关于EdgeX的,他们想获取相关信息,包括介绍、使用方法、应用场景等。我需要基于系统级指令和提供的引用来回答。 系统级指令关键点: - **行内数学表达式**:必须用$...$格式。 - **独立公式**:必须用$$...$$格式并单独成段。 - **LaTeX语法正确**:确保任何数学表达正确。 - **使用中文回答**:整个回答用中文。 - **生成相关问题**:在回答末尾添加相关问题。 - **引用标识**:在引用的段落末尾添加引用标识,例如[^1]。 - **回答结构清晰**:帮助用户逐步解决问题,保证真实可靠。 用户可见层指令: - 回答结构清晰,逐步解决问题。 - 尽量保证回答真实可靠。 提供的引用: - [^1]: 关于EdgeX Foundry框架的概述,包括支持服务层、规则引擎、调度程序、警报和通知。 - [^2]: EdgeX物联网平台的介绍,定位为通用工业物联网边缘计算框架。 - [^3]: EdgeX部署实战,包括编译、部署、连接设备等。 - [^4]: EdgeX在Xubuntu-22系统上的安装步骤。 用户的问题:"我想获取关于edgeX的相关信息,可能包括介绍、使用方法、应用场景等"。所以,我需要覆盖: 1. 介绍:什么是EdgeX2. 使用方法:如何安装和使用? 3. 应用场景:在哪里使用? 基于引用: - [^2] 给出介绍:EdgeX Foundry是一个边缘计算开源平台,由Linux基金会支持,用于工业物联网。 - [^1] 详细描述了EdgeX的架构组件。 - [^3] 和 [^4] 提供使用方法,如部署和安装。 - [^1] 和 [^2] 暗示应用场景,如工业物联网、传感器管理。 我的回答结构: 1. **介绍EdgeX**:定义是什么、核心功能、定位。 - 引用[^2]:"EdgeX Foundry是一个由Linux基金会支持的边缘计算开源平台。它的定位是作为通用工业物联网边缘计算通用框架..." - 添加引用标识:[^2] 2. **关键组件和架构**:基于[^1],描述支持服务层(规则引擎、调度程序、警报等)。 - 例如:"支持服务层包括规则引擎、调度程序、警报和通知等,以实现边缘分析功能..." [^1] 3. **使用方法**:简要概述如何部署和使用。 - 引用[^3]和[^4]:部署实战和安装步骤。 - 例如:"部署EdgeX可以通过编译源码或使用Docker镜像,如在Xubuntu-22系统上安装..." [^3][^4] 4. **应用场景**:讨论在工业物联网中的应用。 - 基于[^2]:"应用于工业物联网边缘设备,如连接传感器、管理数据等。" 5. **生成相关问题**:在末尾添加相关问题,如: - 如何优化EdgeX部署? - EdgeX与其他边缘计算平台的区别? - 实际案例? 确保LaTeX:用户问题中没有数学内容,所以可能不需要。但指令说"所有行内数学表达式必须使用$...$格式",如果没有数学,就跳过。或者,如果有数值或简单计算,可以加入。例如,在讨论数据收集时,如果有公式,但引用中没有提到,所以可能不需要数学表达式。保持简单。 回答结构: - 以清晰的方式逐步介绍。 - 使用标题或列表使其结构化。 - 结尾添加相关问题。 最终回答大纲: 1. **介绍EdgeX**:定义和核心概念。 2. **架构概述**:关键组件。 3. **使用方法**:安装和部署。 4. **应用场景**:实际应用。 5. **相关问题**:生成几个问题。 添加引用标识:在引用来源的句子末尾添加[^数字]。 </think> ### EdgeX Foundry 介绍、使用方法与应用场景 EdgeX Foundry 是一个开源的边缘计算平台,由 Linux 基金会支持,专为工业物联网(IIoT)环境设计。它旨在提供即插即用的设备管理、数据收集和分析功能,部署在边缘设备(如路由器或交换机)上,实现本地化数据处理,减少对云端的依赖。以下我将逐步介绍其核心概念、使用方法、应用场景,确保内容基于可靠引用和实际资料。 #### 1. **EdgeX Foundry 简介** EdgeX Foundry 的核心目标是为物联网边缘设备提供一个通用框架,支持多种传感器和设备的快速集成。它采用微服务架构,模块化设计使其高度可扩展和灵活。关键特点包括: - **即插即用功能**:自动识别和管理各种传感器(如温度传感器或工业设备),简化设备接入过程[^2]。 - **边缘数据处理**:在本地进行数据收集、过滤和分析,避免高延迟的云端传输,提升实时性。例如,它可以处理传感器数据流,执行边缘分析任务[^1]。 - **开源社区支持**:作为开源项目,由全球开发者维护,确保持续更新和兼容性[^2]。 EdgeX 的架构分为多层: - **支持服务层**:包括规则引擎(基于 if-then 条件实现边缘分析)、调度程序(定时触发操作,如清理旧数据)和警报系统(发送通知)。这些服务可被定制或增强以满足特定需求[^1]。 - **应用服务层**:处理数据导出(如将数据转发到云平台或本地应用)[^1]。 #### 2. **EdgeX 的使用方法** 部署和使用 EdgeX 主要涉及环境准备、安装和配置。以下是基本步骤(以 Release 1.3.0 或更新版本为例),基于实际部署指南: ##### 环境准备 - **硬件要求**:建议在边缘设备(如树莓派或工业网关)或虚拟机(如 Xubuntu-22)上运行,资源需求较低(RAM ≥ 1GB,存储 ≥ 100MB)[^4]。 - **软件依赖**:安装 DockerDocker Compose,这是最简便的部署方式。例如,在 Xubuntu-22 系统上: ```bash sudo apt update sudo apt install docker.io docker-compose ``` 确保 Docker 服务启动后,即可拉取 EdgeX 镜像[^4]。 ##### 安装与启动 - **使用 Docker Compose**:EdgeX 提供预构建的 Docker 镜像,下载速度快,启动简便。示例步骤: 1. 下载官方 `docker-compose.yml` 文件(从 EdgeX GitHub 仓库)。 2. 运行命令启动服务: ```bash docker-compose up -d ``` 这将启动所有核心服务(如核心数据服务、设备服务)[^4]。 - **验证安装**:启动后,通过 Web 界面访问 Consul(服务发现工具,端口 8500)或 EdgeX UI(管理后台),检查服务状态[^4]。 ##### 设备连接与配置 - **连接传感器**:EdgeX 支持多种协议(如 Modbus 或 MQTT)。示例: - 添加 Modbus 设备:通过设备服务(Device Service)配置文件定义设备地址和参数[^3]。 - MQTT 集成:订阅 MQTT 主题,接收传感器数据流,并转发到规则引擎处理[^3]。 - **定时任务设置**:使用调度程序服务定期执行操作,例如每小时清理导出数据: ```bash # 示例:调用核心数据 API 清理旧事件 curl -X POST http://localhost:59880/api/v1/schedule ``` 这可通过 REST API 或配置文件实现[^1][^3]。 #### 3. **EdgeX 的应用场景** EdgeX 在工业物联网中应用广泛,尤其在需要低延迟和本地决策的场景: - **智能工厂**:管理生产线传感器(如温度或振动传感器),实时监控设备状态,预测故障。规则引擎可触发警报(如温度超过阈值时通知维护人员),减少停机时间[^1][^2]。 - **智慧城市**:部署在交通灯或环境监测站,收集数据(如空气质量),本地分析后仅导出关键信息到云端,节省带宽[^2]。 - **农业物联网**:连接土壤湿度传感器,执行边缘规则(如果湿度低于 50%,则自动灌溉),提升响应速度[^1]。 优势包括:降低网络开销、增强数据隐私(敏感数据在本地处理),以及通过模块化设计适应不同硬件[^1][^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值