跳到主要内容

路径地图 — 什么在哪里

数据湖的文件分散在主机容器内两个世界。混淆所在的位置是大多数问题的根源。本页是一张单页地图,回答"那个文件在哪里"。

需要牢记的三条
  1. 要编辑的文件在主机的 /etc/kopens/
  2. 容器内的 /opt/kopens/plantpulse-platform/…/conf/ 是生成物。即使编辑后,下次启动也会消失。
  3. 数据·备份·临时文件在 Docker 卷中,即使重建容器也会保留。

主机

操作者编辑的文件 — /etc/kopens/

路径内容编辑方式跨节点复制
/etc/kopens/plantpulse-platform.env密钥边车 — 服务密码·API 密钥·TLS 证书。权限 0600密码用 passwd.sh。非密钥值直接编辑 VAR=값按原样复制
/etc/kopens/platform.node.env节点文件 — 仅对本节点为真的值(PP_MASTER_IP·PP_KAFKA_ADVERTISED_HOST·DOCKER_PP_EXTERNAL_IP·PP_NODE_ID)直接编辑绝不复制
/etc/kopens/conf/配置模板 33 个(*.template)。绑定挂载到容器的 plantpulse-datalake-cli/config/templates直接编辑 → 修改模板根据需要
/etc/kopens/conf.dist/上次部署的镜像实际上是模板默认值(三路比较的基线)。以只读方式挂载到容器不要修改 — 每次部署工具自动更新
/etc/kopens/conf.backup/<시각>/模板重新播种时工具保留的备份仅供参考
/etc/kopens/ca/跨节点共享 CA(CA.crt·CA.key)仅在移动到第二个节点时首个节点 → 后续节点
/etc/kopens/workers.roster集群工作节点名单 <id> <ip>worker-add.sh 系列工具
/etc/kopens/rotation.journal密码轮换进度记录(0600)。失败轮换的续接依据不要修改

运维脚本 — /opt/kopens/plantpulse-platform-docker/

路径内容
bin/所有运维动词 — up.sh down.sh restart.sh restart-datalake.sh status.sh logs.sh shell.sh passwd.sh rotate-secret.sh update.sh backup.sh doctor.sh ops-check.sh
bin/env.sh主机端默认值和在主机上计算的值(核心·内存·磁盘)。bin/env.sh --print 打印"此节点当前有效值及其来源"
compose/docker-compose.yml容器定义。数据湖收到的环境变量·公开端口·卷·内存限制
compose/platform.env.example操作者打开的那个文件 — 所有可用变量及其注释。从此处选择行,转抄到边车或节点文件中(生成物故不直接编辑)
compose/platform.node.env.example节点文件的模板
不要直接编辑 bin/env.sh

某些旧文档说"在 env.sh 添加 export"。虽然可用但在安装树内,容易被更新·重装破坏。改为在边车或节点文件中以 VAR=값 形式写入相同值,则不在安装树内,得以保留,且优先级更高 → 值的决定顺序

Docker 卷

主机的命名卷。即使用 remove.sh 删除容器,卷仍保留

容器内路径内容
pp-data/data1/pp-data (PP_DATA_DIR)所有数据 — Cassandra·PostgreSQL·Valkey·MinIO·Kafka·Spark 事件日志·逻辑转储·意外停止记录
pp-temp/data1/pp-temp (PP_TEMP_DIR)临时文件。pd clean 会清空。不要在此存放长期文件
pp-backup/data1/pp-backup (PP_BACKUP_DIR)物理备份存储(pgbackrest/·medusa/)·备份历史·控制台配置版本
pp-security/var/securityTLS 材料。plantpulse-certs 容器生成,数据湖和应用读取

容器内

进入容器的方式有两种。运行单个命令用 docker exec,运行多个命令则打开 shell。

docker exec plantpulse-datalake pd status # 하나만
/opt/kopens/plantpulse-platform-docker/bin/shell.sh # 셸 열기 (= docker exec -it … bash)

运行时树 — PP_HOME=/opt/kopens/plantpulse-platform

路径内容
plantpulse-datalake-cli/pd 本身。bin/pd·cmd/·lib/·services/order.txt·config/defaults.env·config/render.map
plantpulse-datalake-cli/config/templates/主机 /etc/kopens/conf 挂载的位置。容器内看到的是主机副本
plantpulse-datalake-cli/config/templates.dist/主机 /etc/kopens/conf.dist 以只读方式挂载的位置
plantpulse-storage/cache/valkey·db/postgres·db/cassandra·object/minio存储网四个。各自 bin/ conf/ logs/
plantpulse-analytics/spark·hive·gravitino·kyuubi分析网四个
plantpulse-messaging/kafka·mqtt代理两个
plantpulse-timeseries/engine·dashboard时序引擎和 Grafana
plantpulse-cep/·plantpulse-data-gateway/Tomcat 上的 Web 模块。配置位于 config/,日志位于 server/logs/
plantpulse-workflow/temporal·kestra工作流引擎两个
plantpulse-datalake-admin-api/管理控制台后端。webapp/ 显示屏幕,logs/pd-events.jsonl 事件日志
plantpulse-backup/物理备份工具包(bin/backup.sh)和 systemd 定时器

pd env本节点的实际值打印此列表。不要死记路径,就用这个命令。

docker exec plantpulse-datalake pd env

生成物 — 编辑后会消失的东西

pd start 每次渲染模板并写到下列位置。第一行是 # GENERATED by pd from <템플릿> - edit /etc/kopens/plantpulse-platform.env instead

生成物源模板(主机 /etc/kopens/conf/)
plantpulse-storage/db/postgres/conf/postgresql.conf·pg_hba.confpostgresql.conf.template·pg_hba.conf.template
plantpulse-storage/db/cassandra/conf/cassandra.yaml·jvm-server.optionscassandra.yaml.template·jvm-server.options.template
plantpulse-storage/cache/valkey/conf/valkey.confvalkey.conf.template
plantpulse-messaging/kafka/config/kafka.properties·jaas.confkafka.properties.template·kafka-jaas.conf.template
plantpulse-messaging/mqtt/conf/config.xml·auth.propertieshivemq.xml.template·plantpulse-mq-auth.properties.template
plantpulse-cep/config/plantpulse-cep.propertiesplantpulse-cep.properties.template
plantpulse-data-gateway/config/plantpulse-jdbc.properties·plantpulse-data-gateway.propertiesplantpulse-jdbc.properties.template·plantpulse-data-gateway.properties.template

完整对照表见 配置文件在哪里 — 模板列表

日志

内容位置查看方式
启动日志 — pd start 连接服务启动器输出/var/log/plantpulse-datalake.logpd logs (BOOT 标签)
容器视角的启动副本/var/log/plantpulse-boot.logtail
服务日志 40 余个各模块的 logs/ — 列表见 pd logs --listpd logs [서비스]
上述全部合并的容器日志Docker从主机执行 bin/logs.sh plantpulse-datalake
事件日志 — 谁在何时启动/停止/备份plantpulse-datalake-admin-api/logs/pd-events.jsonl控制台事件屏幕,tail
意外停止记录/data1/pp-data/pd/downtime/pd downtime

其他位置

内容位置
TLS 材料/var/security/plantpulse/ (.certs_generated 有生成记录)
PostgreSQL 逻辑转储/data1/pp-data/postgres/dump/
物理备份存储·历史·锁/data1/pp-backup/ (pgbackrest/·medusa/·history.jsonl·pd-backup.lock)
备份工具配置 — 含密码,不要粘贴/etc/pgbackrest/pgbackrest.conf·/etc/medusa/medusa.ini (启动时 pd 写入)
备份计划覆盖/data1/pp-data/backup/schedule.json
镜像身份/etc/plantpulse-image.env·/etc/plantpulse-modules.json

相关文档