跳到主要内容

plantpulse-timeseries (时序)

角色​

时序数据专用引擎(TSE)和PlantPulse Dashboard。将标签值按行级TTL存储到Aster TSDB,并提供聚合·查询API。

项目值
模块名plantpulse-timeseries
安装路径/opt/kopens/plantpulse-platform/plantpulse-timeseries/
引擎端口7800 (HTTP) · 7801 (TLS)
UI端口3000 (PlantPulse Dashboard,仅TLS)
pd 服务timeseries — 仅 MASTER (自 2026-09-05 起)。engine(tse) → dashboard(grafana)
账号PP_TSE_USER / PP_TSE_PASSWORD
在工作节点上不显示 (2026-09-05)

工作节点上的引擎无人读取,且仅将主节点已写入的行重新复制到同一环中(实测4.4G)。由于所有查询消费者都指向主节点的引擎,因此已改为仅MASTER。

配置​

目录结构​

plantpulse-timeseries/
├── engine/ # 시계열 엔진 (Java)
│ ├── bin/
│ ├── conf/plantpulse-timeseries-engine.conf # 생성물 (옛 이름 timeseries-engine.conf 로도 한 벌)
│ └── logs/
└── dashboard/ # PlantPulse Dashboard
├── bin/
├── conf/custom.ini # protocol = https · http_port = 3000
├── data/ # PlantPulse Dashboard DB — 이미지 트리 안 (볼륨 아님)
└── logs/

时序引擎 (7800 · 7801)​

配置模板只有一个 /etc/kopens/conf/plantpulse-timeseries-engine.conf.template,会渲染为两个名称的文件。核心项:

项目值
jetty.port · jetty.ssl.portPP_TSE_PORT(7800) · PP_TSE_TLS_PORT(7801)。TLS 使用平台共用 keystore
service.datastoreAster TSDB 模块 — 表 pp.ts_data_points 等,UnifiedCompactionStrategy
数据点 TTLPP_TSE_DATAPOINT_TTL — 默认 31536000秒(365天)。每次写入都会标记,因此新值从新行开始
认证PP_TSE_USER / PP_TSE_PASSWORD — 不是对 passwd.sh,而是 sidecar 刷新 + 重启
curl -fsS http://127.0.0.1:7800/api/health # 컨테이너 안
curl -kfsS https://<server-ip>:7801/api/health # 밖에서 — 401 은 «로그인 필요» 이지 «없음» 이 아닙니다

管理控制台工具画面中的 «Timeseries Engine» 卡片(7801)是引擎本身的管理画面。查看时序数据的地方是 PlantPulse Dashboard。

PlantPulse Dashboard (3000)​

https://<server-ip>:3000/ — 仅通过 TLS 响应。用 http:// 打开会返回 400。

登录账号存储在 PlantPulse Dashboard 自己的存储库 中。更改位置在 PlantPulse Dashboard 画面(个人资料 → 更改密码)→ Web画面登录账号 — PlantPulse Dashboard

存储库已迁移到 PostgreSQL (2026-09-08)

仪表板·数据源·用户·通知规则·API密钥全部存入 PostgreSQL 的 grafana DB。 之前是镜像树中的 SQLite(dashboard/data/grafana.db),因此重新创建容器后全部丢失,但现在可以保留了。

变量值
PP_GRAFANA_DB_USERgrafana (固定 — 模式会以此名称创建角色)
PP_GRAFANA_DB_PASSWORD🔑 启动必需 — 若无,pd start 会以 exit 3 停止

角色密码每次启动时都会根据 sidecar 值进行校准。

已经部署的安装必须执行「迁移步骤」

🔴 PlantPulse Dashboard 不会自行在存储库之间迁移。 如果指向空的 PostgreSQL,就只会得到 空的 PlantPulse Dashboard — 没有仪表板,没有数据源,也没有用户。将原 SQLite 中的内容 迁移过来的步骤是另行提供的。

迁移后,控制台将使用 PlantPulse Dashboard 默认账号打开。由于没有每次启动时自动校准的机制, 必须由人工修改一次。 即使在配置文件中写入管理员账号也无济于事 — 一旦存储库中 有了任何用户,存储库就会优先,而且也不会提供任何错误提示。

运维命令​

docker exec plantpulse-datalake pd status timeseries
docker exec plantpulse-datalake pd restart timeseries # 엔진 + PlantPulse Dashboard
docker exec plantpulse-datalake pd logs --lines 100 timeseries
docker exec plantpulse-datalake pd retention # ts_data_points 의 크기 · 압축 전략

常见问题​

症状原因措施
Kafka 积压增加引擎处理能力不足 · Aster TSDB I/Opd flow, pd node compactionstats
数据几天后消失TTLPP_TSE_DATAPOINT_TTL — 旧镜像中为31天字面量。已写入的行会按旧值过期
PlantPulse Dashboard 为空(无仪表板·无数据源)迁移到 PostgreSQL 时未迁移内容上述警告 — 需执行迁移步骤
pd start exit 3PP_GRAFANA_DB_PASSWORD 为空在 sidecar 中设置值后重启
http://…:3000 返回 400仅限 TLShttps://
仪表板响应慢时间范围过大缩短范围,扩大聚合间隔

相关文档​