본문으로 건너뛰기

시작 (start.sh / start-daemon.sh)

Legacy native 페이지

이 페이지는 2026.05 미만 native 배포 박스 전용. 컨테이너 모드 (2026.05+) 박스는 systemctl start plantpulse-edge.service — entrypoint 가 내부 start.sh 를 호출. 컨테이너 모드 운영 가이드 참조.

1. start.sh — 전체 스택 부팅

$PE_HOME/bin/start.sh

수행 순서:

단계컴포넌트확인 포인트
1Docker 데몬 (없으면 띄움 — 기존 컨테이너 보존)docker ps
2Redis (cache, 포트 6379)nc -z 127.0.0.1 6379
3HiveMQ (MQTT, 1883)nc -z 127.0.0.1 1883
4Cassandra (9042)$PE_HOME/bin/node-info.sh
5timeseries-engine (7800)nc -z 127.0.0.1 7800
6timeseries-dashboard / Grafana (3000)nc -z 127.0.0.1 3000
7Tomcat (서버 — 80/443)curl -ks https://127.0.0.1/api/v1/system/ready
8Node-RED (/ui/flow, 1880)nc -z 127.0.0.1 1880
9(백그라운드) Cassandra nodetool 정리

정상 출력 예 (요약):

--------------------------------------------------------------------
PLANTPULSE EDGE START ...
--------------------------------------------------------------------
[1] CACHE START ... redis ready (1s)
[2] MQTT START ... mqtt ready (13s)
[3] DATABASE START ... cassandra ready (23s)
[4] TIMESERIES ENGINE START ... timeseries-engine ready (10s)
[5] TIMESERIES DASHBOARD START ... grafana ready (1s)
[6] SERVER START ... tomcat ready (10s)
[7] FLOW TOOL START ... [NODE-RED] ready (port 1880)
--------------------------------------------------------------------
START COMPLETED [108 SEC]
--------------------------------------------------------------------

소요 ~90–120초. 마지막에 START COMPLETED 가 찍히면 정상.

옵션설명
(없음)위 순서대로 모두 부팅
환경 변수 PE_SKIP_DOCKER=1Docker 단계 건너뜀 (이미 떠 있을 때 부담 줄이기)

2. start-daemon.sh — 백그라운드 부팅

$PE_HOME/bin/start-daemon.sh

start.shnohup ... & 로 백그라운드 실행. ssh 세션이 끊겨도 부팅이 계속 됩니다. OS 부팅 시 systemd unit / cron @reboot 같은 자동화에서 호출.


3. 자주 빠지는 함정

증상원인 / 해결
[4] DB START ... 에서 멈춤Cassandra 가 commitlog 회수 중 — 보통 30초+ 대기. 로그(db/logs/system.log) 에서 Listening for thrift clients 가 나오면 OK
[7] SERVER STARTcurl ... refusedTomcat 시작 직후 1–2초 listen 안 됨 — 잠시 대기. 그래도 안 뜨면 catalina.outSEVERE 검색
Node-RED 가 안 뜸/data1/pp-data/node-red/.config.users.json 깨짐 가능. 로그(node/log/node-red.log) 의 Error loading flows 확인
Docker 컨테이너 모두 reset(구버전) start.shsystemctl restart docker 를 했음. 현재는 이미 떠있으면 skip — 그래도 reset 되는 환경이면 PE_SKIP_DOCKER=1 사용

4. 검증

$PE_HOME/bin/ps.sh # 모든 컴포넌트 살아있는지
curl -s http://127.0.0.1/api/v1/edge | jq # 엣지 식별/버전
curl -s http://127.0.0.1/ui/opcua/tree | jq '.data.tree | length' # 사이트/태그 정상

5. 더 알아보기