Edge-Geräte & Agent
Edge-Geräte sind die primären Ausführungsknoten in IronFlock. Jedes Gerät ist eine Linux-fähige Maschine — ein Industrie-PC, Raspberry Pi, NVIDIA Jetson, Gateway oder jede Hardware mit Linux-Kernel — die den IronFlock-Agenten und eine oder mehrere Docker-containerisierte Anwendungen ausführt.
Der IronFlock-Agent
Der Agent ist eine leichtgewichtige Go-Binärdatei, die auf dem Gerät läuft und folgendes übernimmt:
- Container-Management — Startet, stoppt und überwacht Docker-Container für alle installierten Apps
- WAMP-Konnektivität — Hält eine persistente, verschlüsselte WebSocket-Verbindung zum zentralen Message Broker aufrecht
- OTA-Updates — Empfängt und wendet Updates für den Agenten selbst, das Host-Betriebssystem und installierte Anwendungen an
- Tunneling — Bietet sicheren Fernzugriff auf Gerätedienste (HTTP, SSH, VNC, TCP, UDP) über Reverse-Proxy-Tunnel — keine offenen Ports erforderlich
- Netzwerkmanagement — Konfiguriert WLAN-, LAN- und LTE-Verbindungen auf dem Gerät
Der Agent ist die einzige IronFlock-Komponente, die direkt auf dem Host-Betriebssystem läuft. Alles andere läuft in Docker-Containern.
Autonomer Betrieb
Edge-Geräte sind so konzipiert, dass sie unabhängig von den zentralen Services arbeiten. Wenn die Netzwerkverbindung abbricht:
- Apps laufen weiter — Alle containerisierten Anwendungen arbeiten normal weiter
- Apps können Daten puffern — Telemetriedaten werden lokal in die Warteschlange gestellt und an FleetDB weitergeleitet, wenn die Verbindung wiederhergestellt wird
Diese Autonomie ist eine grundlegende Designentscheidung. In industriellen Umgebungen kann die Netzwerkzuverlässigkeit nicht garantiert werden, und Edge-Anwendungen dürfen für ihren Kernbetrieb nicht von einer Cloud-Verbindung abhängig sein.
Was auf dem Gerät läuft
┌─────────────────────────────────────────┐
│ Linux Host OS │
│ │
│ ┌─────────────────────────────────┐ │
│ │ IronFlock Agent │ │
│ │ (Konnektivität, OTA, Tunnel) │ │
│ └────────────┬────────────────────┘ │
│ │ │
│ ┌────────────┴────────────────────┐ │
│ │ Docker Runtime │ │
│ │ │ │
│ │ ┌─────────┐ ┌─────────┐ │ │
│ │ │ App A │ │ App B │ ... │ │
│ │ │ (OPC UA │ │ (Eigene │ │ │
│ │ │ Reader) │ │ Logik) │ │ │
│ │ └─────────┘ └─────────┘ │ │
│ └─────────────────────────────────┘ │
└─────────────────────────────────────────┘
│ (nur ausgehendes WSS)
▼
WAMP Message BrokerJede App läuft in ihrem eigenen Container mit ihren eigenen Abhängigkeiten. Apps können in jeder Programmiersprache geschrieben werden — Python, Go, Rust, Node.js, C++ oder alles, was in einem Docker-Container läuft.
Unterstützte Hardware
IronFlock unterstützt jedes Linux-fähige Gerät mit Docker-Unterstützung:
| Plattform | Architektur | Beispiele |
|---|---|---|
| Industrie-PCs | x86_64 | Beckhoff, Advantech, Kontron, Dell Edge |
| Einplatinencomputer | ARM64, ARMv7 | Raspberry Pi 4/5, BeagleBone |
| KI-Beschleuniger | ARM64 | NVIDIA Jetson Nano, Orin, Xavier |
| Gateways | ARM64, x86_64 | Teltonika, Moxa, Advantech |
| Benutzerdefinierte Hardware | ARM (v5, v6, v7), ARM64, x86_64 | Jedes Linux-Gerät mit Docker |
Geräte-Bereitstellung
Geräte können auf verschiedene Weisen zu IronFlock hinzugefügt werden:
- Mit FlockFlasher flashen — Verwenden Sie die FlockFlasher Desktop-App, um IronFlock OS auf den Speicher des Geräts zu schreiben. Das Gerät startet mit dem vorkonfigurierten Agenten und verbindet sich automatisch.
- Agent installieren — Installieren Sie auf einem bestehenden Linux-System die Agent-Binärdatei und stellen Sie eine Konfigurationsdatei (
.flock-Datei) mit Gerätezugangsdaten bereit. - OEM-Vorregistrierung — Registrieren Sie Geräte-Seriennummern im Voraus. Wenn das Gerät eingeschaltet wird und sich verbindet, wird es automatisch dem richtigen Projekt zugewiesen.
Kommunikationsmodell
Standardmäßig stellen Edge-Geräte nur ausgehende Verbindungen her. Der Agent verbindet sich über einen verschlüsselten WebSocket (WSS) mit dem WAMP Message Broker und muss auf keinem Port lauschen. Das bedeutet:
- Standardmäßig sind keine eingehenden Firewall-Regeln auf dem Gerät oder seinem Netzwerk erforderlich
- Das Gerät ist nicht aus dem Internet auffindbar oder adressierbar
- Der Fernzugriff wird durch Reverse-Tunnel bereitgestellt — initiiert vom Gerät, nicht vom Bediener
Geräte-Ports können jedoch bei Bedarf selektiv geöffnet werden — beispielsweise um ein lokales HMI, eine REST-API oder einen anderen auf dem Gerät laufenden Dienst freizugeben. Der Port-Zugriff wird über die IronFlock-UI konfiguriert und verwaltet.
Siehe Sicherheit für die vollständige Sicherheitsarchitektur.