Node-RED Admin

Die Admin-Seite ermöglicht die Installation von Node-RED und zeigt die Debug-Nachrichten für diese im gleichen Fenster.

Sowohl Node.js als auch Node-RED werden benötigt, um den Node-RED Editor zu verwenden. Die Installationspfade werden hier angegeben. Sollte bereits eine Installation für eine der Beiden existieren, kann der Installationspfad hier zur Verwendung angegeben werden. Node.js wird benötigt um Node-RED zu verwenden, und muss unbedingt heruntergeladen werden, sollte noch keine Installation vorhanden sein.

Anmerkung: In Linux Betriebssystemen wird ein zusätzlicher Login des sudo-Benutzers benötigt, um die Installation abzuschließen.
Abbildung 1. Admin-Tab im Node-RED Wizard

Installation

Eine Verwendung von Node-RED in einem Standard-Projekt erfordert das Erstellen der Sicherheitszertifikate. Diese werden während der Installation abgefragt. Werden keine Sicherheitszertifikate angegeben, wird der Node-RED Control-Manager nicht erstellt und gestartet. Node-RED wird aber installiert und gestartet. Bei fehlenden Zertifikaten werden diese bei jedem erneuten Start von Node-RED erneut abgefragt.

Anmerkung: Bei Server-Client-Setups ist eine Installation von Node-RED nur auf dem Server möglich. Die Installation mit einem Abgesetzten UI ist gesperrt.

Offline Installation

Es ist möglich Node-RED auch auf einer Maschine ohne Internetzugang zu installieren. Dazu muss ein früherer Download der Node.js Setup-Datei und eine Installation von Node-RED auf einem Rechner mit Internetzugang erfolgen.

Installation auf einem Offline-Rechner:

  1. Die Node.js setup Datei (im "msi" Format für Windows oder im "rpm" format für Linux) und das ganze Installationsverzeichnis für Node-RED werden von einer vorhandenen Installation auf den Offline-Rechner kopiert.

  2. Die Installationspfade für die Node.js Datei und das Node-RED Installationsverzeichnis werden in die entsprechenden Felder auf der Admin-Seite eingetragen.

  3. Die "Node.js herunterladen"-Checkbox wird abgewählt.

  4. Die Installation wird mit der "Installation"-Schaltfläche gestartet.

Remote-Betrieb

Es ist möglich den Node-RED Server und WinCC OA auf unterschiedlichen Maschinen zu betreiben. Hierbei ist auf der Node-RED Server Maschine keine Installation von WinCC OA vorhanden. Es müssen folgende Schritte durchgeführt werden:

  1. Die Node-RED Anwendung von der Node-RED Webseite muss auf der Node-RED Server Maschine installiert werden.

  2. Zur Verwendung der WinCC OA-Nodes müssen diese mit dem Node Packet "node-red-contrib-winccoa" (z.B.: im Menü mit "Manage Palette") in Node-RED installiert werden.
  3. Einen neuen WinCC OA Benutzer zur Verwendung des WebSocket Secure-Servers erstellen. Dieser Benutzer sollte die folgenden Voraussetzungen erfüllen:

    1. Der Benutzer besitzt ein Passwort.
    2. Der Benutzer ist nicht root.
  4. Der WebSocket Secure Server wird auf der WinCC OA Maschine gestartet:
    • Ein CTRL Manager mit dem "wss.ctl" Script und der "-user" Option wird erstellt und gestartet.
    Abbildung 2. WSS Control Manager Properties
    VORSICHT: Das Zeichen ":" nach dem Benutzernamen, in den Manageroptionen, muss gesetzt werden, um anzuzeigen, dass ein Passwort vorhanden ist. Es ist jedoch nicht notwendig an dieser Stelle das Passwort selbst zu setzen.
  5. Der Node-RED Server muss mit dem WebSocket Secure-Server verbunden werden:
    • Die Adresse des WebSocket Secure-Servers wird in der Konfiguration des Default Servers oder der Nodes eingestellt. Wenn der verwendete Port oder der Server Endpoint Name des WebSocket Secure Server von der Standardadresse abweicht, muss dies auch in der Konfiguration eingestellt werden.

    Anmerkung: Es ist möglich einige Einstellungen des WebSocket Secure Servers zu verändern. Der verwendete HTTPS-Port und der Server Endpoint Name werden mit den Config Einträgen "httpsPort" und "resource name" in der [wssServer]-Sektion des Configs gesetzt. Die Einstellungen können auch als parameter im "wss.ctl" Script gesetzt werden. Eine Änderung an Port oder Namen kann erforderlich sein, sollten der Port blockiert oder der Server Endpoint Name bereits in Verwendung sein. Der Standardport ist hier 8449 und der Name "/websocket". Dadurch ergibt sich die Standardadresse des WebSocket Secure-Servers als: "wss://<hostname>:8449/websocket".
    [wssServer]
    httpsPort = 9977
    resourceName = "/wssEndpoint"

Betrieb auf redundanten Systemen

Node-RED kann für redundante Systeme konfiguriert werden. Hierbei muss die gleiche Node-RED Version auf beiden redundanten Servern installiert werden. Diese Installationen müssen zur Sicherung des synchronen Betriebs auf beiden Servern die gleiche Konfiguration und Benutzereinstellungen erhalten. Es erhält nur der aktive Server Zugang zum WebSocket-Server. Wenn der aktive Server abstürtzt oder der passive Server manuell auf aktiv umgestellt wird, wird Node-RED auf dem passiven Server aktiv. Sollte die Kommunikation zwischen den Servern unterbrochen werden, so ist Node-RED auf beiden Servern aktiv, und arbeitet unabhängig voneinander. Nach Wiederaufbau der Verbindung hat wiederum nur Node-RED auf dem aktiven Server Zugang zum WebSocket-Server.

Die Verwendung des Node-RED Editors ist nur auf dem aktiven Server möglich. Der Editor kann auf dem passiven System nicht geöffnet werden.

Alle Änderungen an den Node-RED Flows sollten auf dem aktiven Server durchgeführt werden und danach mit dem passiven Server synchronisiert werden. Dies stellt sicher, das alle Änderungen korrekt auf den passiven Server übertragen werden.