PACEdge User Manual
Section 5
GFK-3178B
Nov 2020
PACEdge Architecture Details
10
5.1.3
Application Development Components
5.1.3.1
Node-RED
Node-RED is the logic engine of the PACEdge. It provides a graphical way to wire together different
APIs and services, enabling event-driven logic implementations. Node-RED is well known for its
broad adoption in the software community and has a large number of freely available nodes that
can be easily installed. PACEdge comes with a large selection of pre-installed nodes, that allows
users to easily send and receive data via MQTT, OPC-UA, MODBUS-TCP interfaces, process data,
visualize data via the dashboard, store data in InfluxDB or MySQL databases and send alerts via
emails.
Node-RED is implemented in a Docker Container and can be accessed via browser at
ip_address_of_PACEdge/nodered/
For more details about Node-RED please refer to
www.nodered.org
5.1.3.2
Grafana
Grafana is a visualization tool that enables users to view and analyze data as well as to create alerts.
Even though the Node-RED Dashboard already has its own data visualization, Grafana brings extra
features and ways to scroll and zoom into specific portions of the graph. Grafana works with
several databases, but in PACEdge it is suggested to use InfluxDB.
Grafana is implemented in a Docker Container and can be accessed via browser at
ip_address_of_PACEdge/grafana
For more details about Grafana please refer to
www.grafana.com
5.1.3.3
MQTT
PACEdge implements two MQTT brokers, one is meant to be used for PACEdge internal
communication between Docker containers and the second one for external communication.
Node-RED does have MQTT nodes pre-installed.
Portainer itself is implemented in a Docker Container and can be accessed via browser at
ip_address_of_PACEdge/portainer/
For more details about MQTT please refer to www.mqtt.org
5.1.3.4
Traefik
Since most of the PACEdge applications are installed in their own Docker Containers and
communicate with each other via network interfaces Traefik is used as a front end edge router to
receive requests from the external world and route it to an appropriate service. Traefik enables
accessing services such as Node-RED by simply adding /nodered at the end of the PACEdge IP
address, as opposed to port number. In addition to simplifying application access and navigation
Traefik also improves cybersecurity by reducing the number of open ports.
For more details about Traefik please refer to
5.1.3.5
Nginx and PHP
NGNIX and PHP are two services that are used to serve an initial landing page, which has important
version information, end-user license file, as well as shortcuts to services like Cockpit, Node-RED,
Grafana, Portainer, Chronograf.