Module-by-Module Reference
PlantPulse Platform comprises several independent modules. Modules and containers are not 1:1 — the six application services each have their own container, but the data lake family works together inside plantpulse-datalake single container.
The data lake family is consolidated in a separate top-level section, Data Lake — covering paths, configuration files, password changes, admin console, pd CLI, operations, components (storage, messaging, analytics, timeseries, cep, workflow, data-gateway), and FAQ.
Module Classification
Module Categories
| Category | Module | Description |
|---|---|---|
| Applications | server | Web console, IIoT engine, REST API |
| batch | Scheduled batch processing | |
| data-gateway | REST-based data gateway | |
| sql | Deprecated (2026-09-07) — SQL console merged into data-gateway | |
| datalake-admin-api | Admin console backend + health API (4950 / 4949) | |
| warehouse | Iceberg-based data warehouse | |
| Processing | cep | Complex event processing (Esper) |
| plugin | OPC-UA / AAS industrial standard plugins | |
| timeseries | Time series engine + visualization UI | |
| Messaging | messaging | Kafka + MQTT (HiveMQ). STOMP (ActiveMQ) is retired |
| Storage | storage | Cassandra + PostgreSQL + Valkey + MinIO |
| Analytics | analytics | Spark + Hive + Kyuubi + Gravitino + Hadoop |
| Workflow | workflow | Temporal + Kestra |
| Data Lake Operations | pd CLI | Single entry point for startup/shutdown/restart, configuration, node management |
| Data Lake Operations | Admin Console | Browser-based operations console (4950 / 4949) |
| utilities | setup, backup, recovery, exporter, migrator, mirror-maker, simulator, api, lab |
Common Module Structure
Each service module follows a common directory structure and operations interface.
plantpulse-<module>/
├── app/ # 애플리케이션 WAR / JAR
├── bin/
│ ├── start.sh # 포그라운드 시작
│ ├── stop.sh # 정지
│ └── log-viewer.sh # 실시간 로그 (tail -F)
├── server/ 또는 lib/ # 내장 Tomcat 서버 또는 JAR
├── logs/ # system.log (메인 로그)
└── conf/ 또는 config/ # 설정 파일
Common Operations Commands
On the host — manages the entire stack (/opt/kopens/plantpulse-platform-docker/bin/).
| Task | Command | Notes |
|---|---|---|
| Start all | up.sh | Waits until ready. 0 = operational |
| Stop all | down.sh | Reverse dependency order, state preserved |
| Restart all | restart.sh | Drain → stop → start → wait for ready |
| Restart one app | docker compose -f compose/docker-compose.yml restart <서비스> | Each app runs in its own container |
| Check status | status.sh | 0 = healthy / 2 = unhealthy |
| Unified logs | logs.sh | No args = all containers. Follow with -f |
Inside the data lake container — manages infrastructure components individually (enter via ./shell.sh).
| Task | Command |
|---|---|
| Service status | ./pd status [서비스] |
| Restart service | ./pd restart <서비스> |
| Render config | ./pd config render |
| Cassandra nodes | ./pd node status · ./pd node repair … |
| Diagnostics | ./pd doctor |
Module Dependencies
PlantPulse starts in stages according to dependency order. When restarting individual modules, understand their dependencies.
Restart caution: Restarting infrastructure modules (storage / messaging / analytics) requires restarting all dependent applications as well. The safest approach is to restart the entire stack on the host with
bin/restart.sh.
Port Mapping Summary
| Area | Port | Module |
|---|---|---|
| External | 80 / 443 | server (HTTP / HTTPS) |
| External | 7443 | server (admin console HTTPS) |
| External | 4950 | monitor (health check, HTTPS) |
| Messaging | 9092 / 9093 / 9094 | messaging (Kafka) |
| Messaging | 1883 / 1884 | messaging (MQTT) |
| Storage | 9042 | storage (Cassandra) |
| Storage | 5432 | storage (PostgreSQL) |
| Storage | 6379 | storage (Valkey) |
| Storage | 9000 / 9001 | storage (MinIO) |
| Analytics | 7077 / 4440 | analytics (Spark Master / UI) |
| Analytics | 10000 | analytics (Kyuubi) |
| Analytics | 19001 | analytics (Gravitino) |
| Analytics | 9083 | analytics (Hive Metastore) |
| Time Series | 7800 / 7801 | timeseries (Engine) |
| Time Series | 3000 | timeseries (UI) |
| Workflow | 7233 / 8233 | workflow (Temporal) |
| Workflow | 8380 | workflow (Kestra) |
| Processing | 7400 / 7401 | cep |
| Processing | 5500 | data-gateway |
| Processing | 11004 / 11005 | plugin (OPC-UA) |
| Processing | 8007 / 8090 | plugin (AAS V2 / V3) |
| Applications | 9500 | batch |
| Applications | 9600 | warehouse |
| Applications | 4000 | sql |
For the full port configuration details, see the Port Configuration page.
Technical Support
For module operations inquiries, contact webmaster@kopens.com.