When would I need to configure a Remote Platform?
If a node hosting a Flow Platform cannot access the Flow instance's SQL database, then a Remote Platform is required.
In normal operation, the Flow Bootstrap service needs to communicate with the SQL server where the Flow instance resides, either via Windows or SQL authentication.
But if we start looking at IIOT and cloud offerings, the remote Bootstrap service might not be able to communicate directly with SQL. Likewise with applications spanning multiple domains and workgroups.
In these cases, a remote platform can be configured to communicate through another platform. All that is required is an outgoing connection to the remote platform and communication must be allowed through the Platform communication port, which is port 4501 by default.
How do I configure a Remote Platform?
There are 2 steps that need to be completed to configure a Remote Platform.
- Configuration of the Platform in the Flow Configuration tool.
- Configuration of the Platforms.Settings file on the Remote Platform.
Configuration of the Platform in the Flow Config Tool.
To create a remote platform, one would create a platform as normal in the deployment view. Rename the Platform to describe that this would be a remote platform.
A Remote Platform must be associated with a main platform that it needs to communicate back to. This can be done by dragging the Remote Platform onto its main platform in the deployment view:
This is it for the configuration in the Config Tool.
Configuration of the "Platforms.settings" file on the Remote Platform.
The Bootstrap Service on the Remote Platform must be configured to start up as a remote platform and it needs to know the endpoint of its main platform, as configured in the previous step.
What you need to configure the Remote Platform is:
- Instance GUID of the Flow instance
- The configured Flow Bootstrap communications Port
- IP Address of the main platform (or hostname provided DNS is configured)
One needs to create a Platforms.settings file with the following JSON object defined:
It is important to replace the "Name" property with the name of your remote platform as configured in the Config tool and the "Uri" property with the correct IP address, port, and instance GUID.
The location for the Platforms.settings file in Windows is:
and in Linux and Docker:
After this, the remote platform can be deployed from the Config Tool and a data source can be associated with the platform.