メインコンテンツまでスキップ

ユーティリティモジュール

プラットフォーム運用をサポートする補助モジュール群。常時実行ではなく、必要に応じて実行する方式です。

現在のコンテナ出荷版にはすべてが含まれていません

コンテナイメージに含まれるモジュールは決まっており、以下の表の相当数は現行イメージに含まれていません。 コンテナ内でそのパスを探しても見つかりません。

モジュール用途現行出荷版
backup統合バックアップ (PostgreSQL / Cassandra / ファイル)✅ データレイクコンテナに含む
mirror-makerデータ複製 (HA / DR)✅ 別途コンテナ — mirror プロファイルでデフォルト無効
apiREST API クライアントライブラリ✅ 外部 Java プロジェクトで使用するライブラリ (コンテナと無関)
setup初期モデル一括登録 (CSV)❌ イメージに未含
recoveryデータ復旧❌ イメージに未含
exporter時系列 CSV エクスポート❌ イメージに未含
migratorCassandra データマイグレーション2026-08-30 除外
labJupyter / Metabase 分析環境2026-08-30 除外

migratorlab は「オーケストレータが呼び出さず、ユニットもなく、実際に動作するプロセスもない」という理由でイメージから明示的に除外されました (lab はイメージの 792MB を占めていました)。

以下の手順が必要な場合は、webmaster@kopens.com にお問い合わせください。

データレイクコンテナに含まれるモジュールは、コンテナ内で実行します。

cd /opt/kopens/plantpulse-platform-docker/bin
./shell.sh

plantpulse-setup

現行コンテナイメージに含まれていません

以下は、このモジュールを別途保有する環境での参考です。

CSV ファイルベースのサイト / アセット / OPC / タグ モデルを一括登録。

cd /opt/kopens/plantpulse-platform/plantpulse-setup/bin
./setup.sh \
--host ${PP_HOST_IP} --port 7003 \
--user api --password 'api123!' \
--dir /opt/kopens/plantpulse-platform/plantpulse-setup/model/_example

CSV ファイルの順序:

  1. 1_SITE_LIST.csv — サイト一覧
  2. 2_ASSET_TREE.csv — アセット階層
  3. 3_OPC_LIST.csv — OPC サーバ接続
  4. 4_TAG_LIST.csv — タグ定義

plantpulse-backup

PostgreSQL (pgBackRest)、Cassandra (Medusa)、ファイル (Restic) の統合バックアップ。

cd /opt/kopens/plantpulse-platform/plantpulse-backup/bin

./backup.sh --install # 초기 설정
./backup.sh --postgres # PG Differential (기본)
./backup.sh --postgres full # PG Full
./backup.sh --postgres incr # PG Incremental
./backup.sh --cassandra # Cassandra Differential
./backup.sh --cassandra full # Cassandra Full
./backup.sh --purge # 보관 정책 정리
./backup.sh --cron-install # 크론 자동 등록
./backup.sh --cron-remove

# 파일 백업
/opt/kopens/plantpulse-platform/plantpulse-backup/etc/run_restic.sh

詳細は バックアップ及び復旧 を参照してください。

plantpulse-recovery

現行コンテナイメージに含まれていません

特定のアセットの時系列データを期間別に再処理。

cd /opt/kopens/plantpulse-platform/plantpulse-recovery/bin
./recovery.sh ASSET_01032 20260101 20260530

plantpulse-exporter

現行コンテナイメージに含まれていません

時系列データ CSV エクスポート + 大容量 dsbulk。

cd /opt/kopens/plantpulse-platform/plantpulse-exporter/bin

# 에셋 단위 CSV 추출
./export.sh ASSET_01032 20260101 20260530 /tmp

# 테이블 전체 벌크 언로드 (dsbulk)
./bulk-unload.sh pp tm_tag_point
# → /data1/pp-backup/cassandra/bulk/tm_tag_point.gz

# 벌크 로드 (복원)
./bulk-load.sh pp tm_tag_point

plantpulse-migrator

2026-08-30 にイメージから除外されました

Spark ベースの Cassandra サーバ間マイグレーション (サーバ置換 / クラスタ移行)。

cd /opt/kopens/plantpulse-platform/plantpulse-migrator/bin
./run.sh 192.168.0.41 192.168.0.237 pp.tm_tag_point

plantpulse-mirror-maker

データ複製 (HA / DR)。独自のコンテナで起動し、mirror プロファイルに紐付いているため、デフォルトでは起動しません。

cd /opt/kopens/plantpulse-platform-docker

# 켜기
docker compose -f compose/docker-compose.yml --profile mirror up -d plantpulse-mirror-maker

# 상태 · 로그
docker compose -f compose/docker-compose.yml --profile mirror ps
bin/logs.sh plantpulse-mirror-maker

設定は他のコンテナと同様に compose の環境変数で渡します。

plantpulse-simulator

現行コンテナイメージに含まれていません

テスト / デモ用時系列データシミュレータ。RANDOM または CSV ベース、最大 10,000 MPS。

cd /opt/kopens/plantpulse-platform/plantpulse-simulator/bin
vi run.sh # TYPE, MPS, CSV 설정
./run-daemon.sh
./log-viewer.sh
./stop.sh

設定例:

TYPE="RANDOM" # RANDOM | CSV
MPS="10000" # 초당 메시지 수
PROTOCOL="KAFKA"

# CSV 모드
CSV="/home/simul/data/20260530.csv"
SPEED="1.0" # 1.0 실시간, 2.0 2배속

plantpulse-api

PlantPulse REST API クライアント Java ライブラリ。

plantpulse-api/
├── lib/ # 의존 jar
└── target/
├── plantpulse-api.jar
├── plantpulse-buffer.jar
├── plantpulse-cassandra-3.0.jar
├── plantpulse-cassandra.jar
└── plantpulse-cep-api.jar

外部 Java プロジェクトの pom.xml / build.gradle に依存性を追加後、使用します。詳細な使用方法は API 使用マニュアル を参照してください。

plantpulse-lab

2026-08-30 にイメージから除外されました

Jupyter · Metabase はオーケストレータが起動せず、実際に動作するプロセスもなかったため、イメージから 792MB を占めていた状態で除外されました。

ウェブコンソールに Jupyter カードがまだ表示される場合がありますが、このカードは変更前から動作していません。 分析環境が必要な場合は、外部に別途配置し、Kyuubi (10000) · PostgreSQL (5432) に接続することをお勧めします。

データサイエンティスト / 開発者向けの分析環境。

plantpulse-lab/
├── jupyter/ # Jupyter Notebook
│ ├── bin/
│ ├── logs/
│ └── notebook/ # 노트북 저장소
└── metabase/ # Metabase (BI 도구)
├── bin/
└── metabase.jar

Jupyter

cd /opt/kopens/plantpulse-platform/plantpulse-lab/jupyter/bin
./start.sh
# 기본 포트 8888

PySpark / cassandra-driver / psycopg2 が事前にインストールされており、すぐに分析できます。

Metabase

cd /opt/kopens/plantpulse-platform/plantpulse-lab/metabase/bin
./start.sh
# 기본 포트 3001

非開発者向けのビジュアル BI ダッシュボード。PostgreSQL / Kyuubi に直接接続。

関連ドキュメント