This page describes the installation of the ROAD backend.
The ROAD Service is using the MongoDB database service, which must be available for the ROAD installation. It can be installed on any machine which is accessible via network from the host the ROAD Service is running on.
Download "MongoDB Community Server" from https://www.mongodb.com/download-center/community. Minimal required version for ROAD is 4.4.
Start the installer and follow all installation steps as proposed. If you install MongoDB Compass (version 4.4.x), it may cause high CPU load, if there is no hardware-accelerated graphics. Additionally no UI may be visible on a clean Windows Server 2019 computer, because of a mismatch of installation path of libglesv2.dll (after installation) which is not present inside the swiftshader subfolder. You can also install another MongoDB client (e.g. Robo 3T).
By default the MongoDB service will be accessed via IP port 27017. This port must be open in the firewall if access via network should occur. Currently this port is not configurable on ROAD Service side.
Adjust Network Binding
In order to access MongoDB other than via mongodb://localhost you have to adjust the bindings in the mongod.cfg file (example path: "C:\Program Files\MongoDB\Server\4.0\bin").
Open this cfg file with elevated (admin) rights in a text editor and search for: "
bindIp: 127.0.0.1" and change the binding to "
bindIp: 0.0.0.0" or to make it accessible via IPv4 address or the computer name. It’s also possible to support ipv4 and ipv6 by "
Hint: Stop the MongoDB service before and afterwards start the service again.
ROAD Service Installation Steps
See ROAD Setup
Firewall Settings for ROAD Web Service
See Firewall Settings for ROAD Web Service. Note that Windows Firewall is configured by the ROAD Setup and you will only have to configure the firewall if you are using a non-standard configuration.
ROAD Service Configuration
You can manually edit RoadService.exe.config and change parameters as needed (also the ones which were set by the prior ROAD setup). Note that you have to restart the ROAD Service to set changes parameters in effect. See configure Parameters of ROAD Service.
Some parameters of special interest:
- WorkerLogFilesArchivePath: set empty to remove log archive folder
- WorkerLogFilesPurgeByDays: after this period Worker log files are deleted (or moved to the archive folder)
- WorkerLogFilesPurgeByNumber: after this amount of Worker log files, oldest are deleted (or moved to the archive folder)
- DBConnection: Set MongoDB host name in syntax like "mongodb://mymongohost"
- DnsName: Publicly accessible network name of the host machine (like road-dpe.davidsystems.com).
- RestAddress: REST connection address with port, using a "+" placeholder for the host itself. Example: https://+:11005/
- SocketAddress: Web socket connection address with port, using a "0.0.0.0" placeholder for the host itself. Example: wss://0.0.0.0:11006
- WssCertificateFilePath: Complete file path to a .pfx file, which is a valid certificate used for securing the wss (secure web socket) connections
- WssCertificatePassword: Password for the above certificate file
Basic Testing ROAD Service
After first installation you might want to verify it's running and accessible for HTTP/HTTPS requests. A simple REST call can be sent from any browser to verify this:
will answer with the current versions of ROAD Service and Worker. If this succeeds the ROAD Service is running, accessible via HTTP/HTTPS and it has successfully started a Worker to request its version.
IIS Hosting of the ROAD Client Pages
If ROAD client pages should be accessible from several computers in the network or if EAO components are being used within them, the client web pages need to be hosted on a web server.
For installation see IIS Hosting of the ROAD example page