Datenbankverwaltung
Übersicht
Diese Seite beschreibt die Konfiguration, den Zugriff, die Statusprüfung und grundlegende Tuning-Richtlinien für die Datenspeicher, die die installierte PlantPulse Platform verwendet.
Die Platform betreibt vier Datenspeicher nach Verwendungszweck.
| Speicher | Zweck | Standard-Port | Hinweis |
|---|---|---|---|
| Cassandra | Zeitreihe / Großvolumendaten (Tag-Datenpunkte, Ereignisse) | 9042 (CQL) | Keyspace pp. Single-Engine-DB der Platform für Großvolumen |
| PostgreSQL | Metastore (Master-/Konfigurationsdaten) | 5432 | Datenbank pp, Schema pp |
| Valkey (Redis-kompatibel) | Cache / Sitzungen / Echtzeit-Status | 6379 | Zugriff mit redis-cli möglich |
| MinIO | Objekt-Speicher (S3-kompatibel) | 9000 (S3) / 9001 (Konsole) | Dateien / Großvolumen-Ausgaben |
Darüber hinaus gibt es ein Hive Metastore + Iceberg-Tabellenformat, das von der Analytiksicht (Spark / Kyuubi) genutzt wird. Die Platform verwaltet dies intern, daher ist kein separater Betrieb erforderlich.
Hinweis: Die Ports 7000 (Cluster Gossip) und 7199 (JMX) von Cassandra sind nur für interne Kommunikation. Exponieren Sie diese nicht nach außen.
Zugriffsmethoden
Die folgenden Befehle gelten alle innerhalb des Data-Lake-Containers. Alle vier Speicher laufen in einem Container (plantpulse-datalake), daher treten Sie direkt in diesen Container ein, wenn Sie eine Shell ohne Argumente öffnen.
cd /opt/kopens/plantpulse-platform-docker/bin
./shell.sh
Konten und Passwörter werden über Umgebungsvariablen verwaltet (PP_CASSANDRA_USER/PASSWORD, PP_PG_USER/PASSWORD, PP_REDIS_PASSWORD usw.).
| Element | Speicherort |
|---|---|
| Tatsächlich angewendete Werte | Secret Sidecar des Hosts /etc/kopens/plantpulse-platform.env (Berechtigungen 0600) |
| Werte ändern | bin/passwd.sh — eine direkte Änderung der Datei wird nicht angewendet → Passwort-Rotation |
Pfad-Bestätigung — Das Original des Secret Sidecar ist
/etc/kopens/plantpulse-platform.env(Berechtigungen0600). In älteren Installationen können unter/opt/kopens/alte Versionen vorhanden sein, aber diese werden nicht gelesen, und das Installationsskript stellt das Original wieder her → Umgebungsvariablen-Referenz
Cassandra (cqlsh)
cd /opt/kopens/plantpulse-platform/plantpulse-storage/db/cassandra/bin
./cqlsh -u <PP_CASSANDRA_USER> 127.0.0.1 9042
-- 키스페이스 / 테이블 확인
DESCRIBE KEYSPACE pp;
SELECT table_name FROM system_schema.tables WHERE keyspace_name = 'pp';
PostgreSQL (psql)
PostgreSQL 18 wird verwendet, und die Client-Binärdatei befindet sich unter /usr/pgsql-18/bin.
/usr/pgsql-18/bin/psql -h 127.0.0.1 -U <PP_PG_USER> -d pp
-- 메타스토어 스키마 확인 (기본 search_path 는 pp 스키마)
\dn
\dt pp.*
Valkey (redis-cli)
redis-cli -h 127.0.0.1 -p 6379 -a '<PP_REDIS_PASSWORD>' ping
Warnung: Verwenden Sie nur für Abfragen (SELECT / DESCRIBE / ping). Datenmänderungen oder Schemaänderungen finden Sie unter Vorsichtsmaßnahmen.
Statusprüfung
Cassandra-Knotenstatus
Das pd node-Kommando umhüllt nodetool.
cd /opt/kopens/plantpulse-platform/plantpulse-datalake-cli/bin
./pd node status
Im normalen Zustand werden Knoten als UN (Up / Normal) angezeigt. Wenn Sie DN (Down) Knoten sehen, ist ein Neustart des Speichers oder eine Protokollprüfung erforderlich.
PostgreSQL-Status
/usr/pgsql-18/bin/pg_isready -h 127.0.0.1 -p 5432
/usr/pgsql-18/bin/psql -h 127.0.0.1 -U <PP_PG_USER> -d pp -c "SELECT version();"
Integriertes Status-Dashboard / Health-API
# 포트별 서비스 상태 + CPU / 메모리 / 디스크 요약
cd /opt/kopens/plantpulse-platform/plantpulse-datalake-cli/bin
./status.sh
# 헬스 API — cassandra / postgres 컴포넌트 상태 포함
curl -kfsS https://127.0.0.1:4950/api/health | jq
Prüfen Sie, ob die Komponenten cassandra und postgres in der Health-API-Antwort normal (UP) sind.
Schema / Datenlayout
| Element | Speicherort | Inhalt |
|---|---|---|
| Cassandra-Keyspace | pp | Zeitreihen-Datentabellen (tm_*) |
| PostgreSQL-Schema | Datenbank pp / Schema pp | Master-/Konfigurationstabellen (mm_*) |
| Dateidaten-Pfad | /data1/pp-data | Docker-Volume pp-data als Mount |
Das PostgreSQL-Metastore-Schema ist zum Zeitpunkt des Image-Builds vorseeding, daher ist nach der Installation keine separate Schema-Erstellung erforderlich. Bei der Verbindung ist search_path auf Schema pp eingestellt, daher können Sie nur nach Tabellennamen abfragen.
Alle Daten werden unter /data1/pp-data gespeichert (Volume pp-data), daher werden Daten beibehalten, selbst wenn Sie den Container entfernen oder das Image aktualisieren.
Tuning-Standardwerte (werkseitige Einstellungen)
Cassandra wird mit den folgenden Standardwerten ausgeliefert, um die Platform-Workload zu unterstützen.
| Element | Werkseitige Einstellung | Beschreibung |
|---|---|---|
| JVM-Heap | -Xms16G -Xmx16G | Anfangs-/maximaler Heap identisch (verhindert dynamische Größenänderung) |
| GC | ZGC (Generational) | Garbage Collector mit niedriger Latenz |
| Datei-Cache | file_cache_enabled: false | OS-Seiten-Cache-Nutzung, Off-Heap-Obergrenze entfernt |
| Direct-Speicher | -XX:MaxDirectMemorySize=6G | Memtable off-heap + IO-Puffer |
Wichtig — Konfigurationsänderungs-Pfad: Die an den einzelnen Servicepfaden bereitgestellten Konfigurationsdateien (z. B. Cassandra
cassandra.yaml,jvm-server.options) sind gerenderte Ausgaben aus der Vorlage inplantpulse-datalake-cli/config/templates/. Wenn Sie diese Datei direkt ändern, werden die Änderungen beim nächsten Neustart/Neukonfiguration (configure) durch Vorlagenwerte überschrieben.
Um Tuning-Werte zu ändern, folgen Sie bitte diesem Verfahren:
- Bearbeiten Sie die Vorlage unter
/etc/kopens/confauf dem Host (als Volumeplantpulse-datalake-cli/config/templatesim Container eingehängt) oder die VariablePP_*inbin/env.sh- Führen Sie
./configure.shim Data-Lake-Container aus — dies rendert die Vorlage erneut und stellt sie auf den einzelnen Servicepfaden bereit- Starten Sie den relevanten Service neu (z. B.
pd restart storage)Da die Vorlage sich in einem Host-Verzeichnis befindet, können Operatoren diese direkt vom Host aus bearbeiten, und die Änderungen bleiben nach einer Neuinstallation erhalten.
Wenn Standardwertänderungen erforderlich sind, wenden Sie sich bitte zunächst an unser Technical Support Team.
Backup-Übersicht
Alle Daten einschließlich Datenbanken werden im Volume pp-data gespeichert, daher ist das Volume-Level-Backup die einfachste und sicherste Methode.
cd /opt/kopens/plantpulse-platform-docker/bin
# 기본 세트 (pp-data · pp-security) 를 한 번에
./backup.sh
# 볼륨 하나만 — <volume-name> [보관일수] [백업경로]
./tools/backup-volume.sh pp-data 7 /data1/pp-backup/docker-volume
Aus dem Standard-Set in backup.sh ist pp-backup das Ziel der Sicherung, und pp-temp ist für die Wiederherstellung nutzlos, also weggelassen. Bei Bedarf können Sie es als Argument angeben und sichern.
Detaillierte Verfahren für Point-in-Time-Wiederherstellung, separates DB-Backup, externe Speichersynchronisierung usw. finden Sie auf der Seite Admin-Handbuch - Backup und Wiederherstellung.
Vorsichtsmaßnahmen
- Kein direktes DDL auf der Produktions-DB — führen Sie Tabellencreatings/Änderungen/Löschungen (CREATE / ALTER / DROP / TRUNCATE) nicht direkt aus. Das Schema wird von der Platform durch versionsspezifische Migrationen verwaltet; willkürliche Änderungen können zum Scheitern von Updates oder Datenverlust führen.
- Vermeiden Sie direkte Datenänderungen — ändern Sie Master-Daten (
mm_*) über die Admin-Konsole. Direktes Aktualisieren (UPDATE) der DB kann zu Inkongruenzen zwischen Cache und Integrationsdiensten führen. - Keine eingebetteten oder Ersatz-DBs — das Ersetzen des eingebetteten Cassandra/PostgreSQL durch andere DB-Produkte oder eingebettete DBs wird nicht unterstützt.
- Keine direkte Dateilöschung — löschen Sie keine Dateien unter
/data1/pp-datadirekt zur Speicherplatzfreigabe. Wenn Datenbereinigung erforderlich ist, wenden Sie sich an das Technical Support Team. - Konto-/Portänderungen über Umgebungsvariablen — bei Bedarf zur Änderung von DB-Konten oder Ports verwenden Sie die Umgebungsvariablen-Override-Methode (
PP_*), nicht die direkte Änderung von Konfigurationsdateien.
Technical Support
Bitte kontaktieren Sie uns jederzeit für Fragen zum Betrieb von Datenbanken.
| Abteilung | Kontakt |
|---|---|
| Technical Support | webmaster@kopens.com |