reComputer R1000 与 Node Red 和 InfluxDB
介绍
在 reComputer R1000(一个基于 Raspberry Pi 的边缘控制器)上部署 InfluxDB 可以在网络边缘实现强大的时间序列数据收集和分析。这种设置非常适合物联网应用,提供实时洞察和监控能力。通过利用轻量级但功能强大的 InfluxDB 数据库,您可以直接在 reComputer R1000 上高效地管理和分析传感器数据。以下指南概述了在您的 reComputer R1000 上安装、配置和使用 InfluxDB 的步骤,确保无缝集成到您的数据基础设施中。
硬件准备
reComputer R1000 |
---|
![]() |
软件准备
我们已经准备了一个Node-RED 入门指南。建议您在继续阅读本 wiki 之前先查看此指南。
在 reComputer R1000 上安装 InfluxDB
本指南介绍了在 reComputer R1000 边缘控制器上安装和设置 InfluxDB 的步骤。
步骤 1:更新系统
首先,通过运行以下命令确保您的系统是最新的:SSH 到 reComputer R1000 并
sudo apt update
步骤 2:添加 InfluxDB 软件源
添加 InfluxDB 的 GPG 密钥和软件源到系统中。
添加 GPG 密钥:
curl https://repos.influxdata.com/influxdata-archive.key | gpg --dearmor | sudo tee /usr/share/keyrings/influxdb-archive-keyring.gpg >/dev/null
将软件源添加到 sources 列表:
echo "deb [signed-by=/usr/share/keyrings/influxdb-archive-keyring.gpg] https://repos.influxdata.com/debian stable main" | sudo tee /etc/apt/sources.list.d/influxdb.list
步骤 3:更新软件包列表
更新软件包列表以包含 InfluxDB 源:
sudo apt update
步骤 4:安装 InfluxDB
安装 InfluxDB 1 版本:
sudo apt install influxdb
启动 InfluxDB 服务
启用并启动 InfluxDB 服务:
步骤 1:取消屏蔽服务:
sudo systemctl unmask influxdb
步骤 2:启用服务:
sudo systemctl enable influxdb
步骤 3:启动服务:
sudo systemctl start influxdb
测试 InfluxDB
使用 InfluxDB CLI 工具进行基本数据库操作。
步骤 1:打开终端:
influx
步骤 2:创建数据库:
CREATE DATABASE data
步骤 3:使用数据库:
USE data
步骤 4:插入示例数据点:
INSERT room temperature=30.1,humidity=80.2
步骤 5:查询插入的数据:
SELECT * FROM room
为 InfluxDB 添加身份验证
步骤 1. 打开终端:
influx
步骤 2:创建一个具有所有权限的管理员用户(将 <password>
替换为你自己的安全密码):
CREATE USER admin WITH PASSWORD '<password>' WITH ALL PRIVILEGES
步骤 3:退出 InfluxDB CLI:
exit
步骤 4:编辑 InfluxDB 配置文件以启用身份验证:
sudo nano /etc/influxdb/influxdb.conf
在 [HTTP]
部分下,添加或修改以下内容:
auth-enabled = true
pprof-enabled = true
pprof-auth-enabled = true
ping-auth-enabled = true
enabled=true
bind-address=":8086"
步骤 5:重启 InfluxDB 服务以应用更改:
sudo systemctl restart influxdb
步骤 6:使用管理员用户连接到 InfluxDB:
influx -username admin -password <password>
确保将 <password>
替换为您为管理员用户设置的密码。
通过 Node-RED 向 InfluxDB 发送数据
步骤 1. 在浏览器中打开您的 Node-RED(通常是 http://<your-reComputer-R1000-ip>:1880
)。
步骤 2. 使用 Node-RED 管理面板安装 node-red-contrib-influxdb
。
步骤 3. 将一个 inject
节点、一个 function
节点和一个 influxdb out
节点拖放到流画布上,并按如下方式连接它们:
[Inject Node] -> [Function Node] -> [InfluxDB Out Node]
Function 节点
此节点格式化要发送到 InfluxDB 的数据。
步骤 1. 双击 function
节点。
步骤 2. 输入名称(例如,Format Data for InfluxDB
)。
步骤 3. 在函数编辑器中输入以下代码:
msg.payload = [
{
temperature: 30.1,
humidity: 80.2
}
];
return msg;
步骤 4. 点击"Done"。
InfluxDB Out 节点
此节点将格式化的数据发送到 InfluxDB。
步骤 1. 双击 influxdb out
节点。
步骤 2. 输入以下详细信息:
- Name: labdata
- Database: data(之前创建的)
- Measurement: lab
步骤 3. 点击铅笔图标添加新的 InfluxDB 服务器配置。
步骤 4. 输入以下详细信息:
- Name: InfluxDB
- Version: 1.8-flux
- URL:
http://localhost:8086
- Username: admin
- Password:
<password>
(您创建的密码)
步骤 5. 点击"Add"然后点击"Done"。
步骤 6. 点击"Deploy"保存并部署您的流程。
测试流程
-
点击
inject
节点上的按钮手动触发流程。 -
通过在终端运行以下命令检查您的 InfluxDB 数据库,查看数据是否已成功写入:
influx -username admin -password <password>
USE data
SELECT * FROM lab
确保将 <password>
替换为您为管理员用户设置的密码。
技术支持与产品讨论
感谢您选择我们的产品!我们在这里为您提供不同的支持,以确保您使用我们产品的体验尽可能顺畅。我们提供多种沟通渠道,以满足不同的偏好和需求。