パス マップ — ファイルの場所
データレイク内のファイルは、ホストとコンテナ内という 2 つの世界に分かれています。どちらのパスか混同することが問題の半分を占めます。このページは「そのファイルはどこにあるのか」に答える 1 ページのマップです。
覚えるべきは 3 行です
- 編集するファイルはホストの
/etc/kopens/の下にあります。 - コンテナ内の
/opt/kopens/plantpulse-platform/…/conf/は生成物です。編集しても次の起動時に消えます。 - データ・バックアップ・一時ファイルは 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/ | 前回のデプロイ イメージが実はテンプレート デフォルト値(3-way 比較の基準線)。コンテナに読み取り専用でマウント | 編集しない — デプロイごとにツールが更新 | — |
/etc/kopens/conf.backup/<시각>/ | テンプレート再シード時にツールが残したバックアップ | 参考のみ | — |
/etc/kopens/ca/ | ボックス間共有 CA(CA.crt · CA.key) | 2 番目のボックスに移動するときのみ | 最初のボックス → 次のボックス |
/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 | 運用者が開くそのファイル 1 つ — 使用可能な変数全てがコメント付きで記載されています。ここから行を選んでサイドカーかノード ファイルに転記します(生成物なので直接編集しません) |
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/security | TLS 資材。plantpulse-certs コンテナが生成し、データレイクとアプリが読みます |
コンテナ内
コンテナに入る方法は 2 つです。コマンド 1 つだけ実行するときは docker exec 、複数実行するときはシェルを開きます。
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 | ストレージ ネット 4 つ。それぞれ bin/ conf/ logs/ |
plantpulse-analytics/spark · hive · gravitino · kyuubi | 分析ネット |
plantpulse-messaging/kafka · mqtt | ブローカー 2 つ |
plantpulse-timeseries/engine · dashboard | 時系列エンジンと Grafana |
plantpulse-cep/ · plantpulse-data-gateway/ | Tomcat 上のウェブ モジュール。設定は config/ 、ログは server/logs/ |
plantpulse-workflow/temporal · kestra | ワークフロー エンジン 2 つ |
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.conf | postgresql.conf.template · pg_hba.conf.template |
plantpulse-storage/db/cassandra/conf/cassandra.yaml · jvm-server.options | cassandra.yaml.template · jvm-server.options.template |
plantpulse-storage/cache/valkey/conf/valkey.conf | valkey.conf.template |
plantpulse-messaging/kafka/config/kafka.properties · jaas.conf | kafka.properties.template · kafka-jaas.conf.template |
plantpulse-messaging/mqtt/conf/config.xml · auth.properties | hivemq.xml.template · plantpulse-mq-auth.properties.template |
plantpulse-cep/config/plantpulse-cep.properties | plantpulse-cep.properties.template |
plantpulse-data-gateway/config/plantpulse-jdbc.properties · plantpulse-data-gateway.properties | plantpulse-jdbc.properties.template · plantpulse-data-gateway.properties.template |
完全な対応表は 設定ファイルはどこにあるか — テンプレート リストを参照してください。
ログ
| 内容 | 場所 | 表示方法 |
|---|---|---|
起動ログ — pd start がサービス ランチャー出力を連結したもの | /var/log/plantpulse-datalake.log | pd logs (BOOT タグ) |
| コンテナ視点の起動コピー | /var/log/plantpulse-boot.log | tail |
| サービス ログ 40 以上 | 各モジュールの logs/ — リストは pd logs --list | pd logs [서비스] |
| 上記すべての統合コンテナ ログ | Docker | ホストから bin/logs.sh plantpulse-datalake |
| イベント ジャーナル — 誰がいつ start/stop/backup したか | 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 |
| イメージ ID | /etc/plantpulse-image.env · /etc/plantpulse-modules.json |