Zum Hauptinhalt springen

Virtuelle Maschine · Cloud-Installation

Hier werden nur die Unterschiede zusammengefasst, wenn das Gateway in einer VM (VMware / Hyper-V / KVM / Proxmox) oder in der öffentlichen Cloud (AWS EC2 / Azure VM / GCP) installiert wird, statt auf physischer Hardware. Die grundlegenden Schritte finden Sie unter Einzeilen-Installation.

Docker in einer VM verwenden

Der Container-Modus ab 2026.05+ funktioniert auch in einer VM unverändert — Docker basiert auf cgroup/namespace und nicht auf verschachtelter Virtualisierung, daher ist die Leistung auf einer VM dieselbe wie auf nativer Hardware. Wenn cgroup MemoryMax=12G das Speicherlimit der VM überschreitet, muss es angepasst werden (per systemd drop-in unter MemoryMax=6G usw.).


1. Leistungsanforderungen​

KlassevCPURAMFestplatteHinweis
Klein (≤ 1k Tags)4 vCPU8 GB100 GB SSDEntwicklung/Test
Mittel (1k–10k Tags)8 vCPU16 GB256 GB SSD + 1 TBBetriebsstandard
Groß (10k+ Tags)16 vCPU32 GB512 GB NVMe + 2 TBGroßmaßstab

Achtung bei CPU-Überbuchung — Wenn der Host die CPU um mehr als 1:4 überbucht, wird der Cassandra-commitlog-Flush verzögert und erscheint als Alarm. Dedizierung wird empfohlen.


2. Festplattenkonfiguration — Empfehlung​

Wenn /opt und /data1 auf separaten Festplatten (oder separaten LVM-Volumes) liegen:

  • Bei einem Upgrade kann /opt/kopens ausgetauscht werden, und /data1/pp-data (Benutzer-Flows / Cassandra / Backups) bleiben erhalten
  • Getrennte Festplatten-IO-Last (Cassandra-Commitlog vs. sstable)
/dev/sda → / (OS) ~ 50 GB
/dev/sdb → /opt ~ 100 GB SSD (게이트웨이 코드)
/dev/sdc → /data1 ~ 1 TB+ (시계열 데이터)

3. VMware vSphere​

Empfehlung
Virtuelle H/W-Version ≥ 14 (ESXi 6.7+)
VMXNET3 NIC (schneller als Intel E1000)
Paravirtual SCSI (höherer Durchsatz als LSI Logic)
CPU-Reservierung aktivieren (Cassandra-Stabilität)
Speicherreservierung aktivieren — vollständig bemessen (Ballooning deaktivieren)
tools.guestlib.enableHostInfo = TRUE zusätzlich — Host-Zeitsynchronisierung

4. KVM / Proxmox​

Empfehlung
cpu host-Modus (Passthrough)
virtio NIC + virtio-blk / virtio-scsi
qemu-guest-agent Installation (Gast-Gesundheitscheck)
Speicher-Ballooning deaktivieren (Cassandra-Heap-Stabilität)
Festplatten-Cache-Modus = none (geringere Latenz) oder writeback (höherer Durchsatz)

5. Hyper-V​

Empfehlung
Generation 2 (UEFI)
Dynamischer Speicher deaktivieren (variabler Cassandra-Heap → Swapping)
Integrationsdienste in der neuesten Version (Zeitsynchronisierung)
Adapter-Typ der virtuellen NIC = Synthetic (nicht Legacy)

6. Öffentliche Cloud​

6.1 AWS EC2​

ElementEmpfehlung
Instanzm5.xlarge (4 vCPU / 16 GB) — klein/mittel / m5.2xlarge (8/32) — Betrieb
AMIAmazon Linux 2 (Das Auslieferungsimage basiert zwar auf Fedora, ist aber mit RHEL kompatibel)
Festplattegp3 (/opt 100 GB), gp3 (/data1 1 TB+) — io1/io2 für Cassandra-Commitlog
Security Groupinbound 80 / 443 / 22 (nur Admin-IP), MQTT 1883 / OPC-UA 12000 (bei Bedarf — normalerweise VPC-intern)
EFA / Enhanced Networkingaktiviert (geringere Latenz)
PlatzierungCluster-Platzierungsgruppe (großer Maßstab)

Verbindung zum On-Premise-PLC-Netzwerk über AWS PrivateLink / VPC Peering.

6.2 Azure VM​

ElementEmpfehlung
GrößeD4s_v5 (4 vCPU / 16 GB) — klein/mittel / D8s_v5 — Betrieb
FestplattePremium SSD (P30 / P40) für /data1
Beschleunigtes Netzwerkaktiviert
ExpressRoute / VPNVerbindung zum On-Premise-PLC

6.3 GCP​

ElementEmpfehlung
Maschinentype2-standard-4 — klein/mittel / n2-standard-8 — Betrieb
Festplattepd-ssd (1.000 IOPS für Cassandra-Commitlog garantiert)
Cloud Interconnect / VPNOn-Premise-Verbindung

7. Cloud–On-Premise PLC-Netzwerkverbindung​

PLCs befinden sich normalerweise on-premise (im Werk), und wenn das Gateway in der Cloud liegt, ist keine direkte Kommunikation möglich. Zwei Muster:

Muster A — Cloud-Gateway + On-Premise-Gateway​

[PLC] ─── [온프레 게이트웨이] ─── (Sparkplug B / MQTT) ─── [클라우드 게이트웨이] ─── [상위 플랫폼]

Das On-Premise-Gateway erfasst PLC-Daten und veröffentlicht Sparkplug-B-Nachrichten, das Cloud-Gateway empfängt und integriert. Empfohlenes Muster.

Muster B — Direkter Zugriff auf das PLC-Netzwerk über VPN / SD-WAN​

[PLC] ─── [VPN 게이트웨이] ──VPN── [클라우드 게이트웨이] ─── [상위 플랫폼]

Erhöhte Latenz + Leitungskosten. Nur für 1–2 kleine Standorte empfohlen.


8. Startautomatisierung (cloud-init)​

Bei VM/Cloud wird bei Instanzstart automatisch installiert — cloud-init user-data-Beispiel:

#cloud-config
package_update: true
write_files:
- path: /root/pp-edge-install.env
owner: root:root
permissions: '0600'
content: |
export EDGE_ID=EDGE_VM_001
export SITE_ID=SITE_00001
export SERVER_HOST=192.168.0.41
export SERVER_API_KEY=<platform-api-key>
runcmd:
- mkdir -p /data1 /opt/kopens
- . /root/pp-edge-install.env && bash < <(curl -fsSL https://product.kopens.io/plantpulse-edge/install.sh)
- bash /opt/kopens/install/bin/health.sh

In Betriebsumgebungen sollten feste edge.id / feste site.id explizit in cloud-init angegeben werden.


9. Häufige Stolperfallen (VM / Cloud-spezifisch)​

SymptomUrsache / Lösung
Cassandra stirbt oftSpeicher-Ballooning aktiviert. Auf festen Speicher umstellen
MQTT-Keepalive-Timeout häufigNAT-Idle-Timeout der Cloud zu kurz. app.properties Keepalive von 60 auf 30 Sekunden
Zeit nach dem Boot 1970Virtuelle Zeitsynchronisierung deaktiviert. VMware Tools / qemu-guest-agent installieren
Langsame Festplatten-IOgp2 / Standard-HDD. Auf gp3 oder SSD wechseln
OPC-UA-Zertifikat ständig ungültigVirtueller Hostname geändert (DHCP). Alle möglichen IPs/Hostnamen in das Zertifikats-SAN aufnehmen
Unzureichender Netzwerk-Durchsatzvirtio / VMXNET3 / Accelerated Networking nicht aktiviert

10. Weitere Informationen​