Set Up the Load Balancer and Configure with FME Flow
Use these instructions to:
- Set up your load balancer to prepare for routing traffic between each FME Flow instance you installed under Installing a Scalable, Fault-Tolerant FME Flow.
- Configure FME Flow to recognize the load balancer URL.
1. Set Up the Load Balancer
Load Balancing the FME Flow Web Services
Required
- Route traffic on port 80 (Windows) or port 8080 (Linux) to each FME Flow instance in your deployment.
Recommended
- Set up a health check for FME Flow. A health check endpoint determines if either the FME Flow Web Services or FME Flow Core node is down, and if so, requests are not routed to that server. Without a health check configured, the load balancer may try to route client requests to an unhealthy (down) server. The consequences of routing requests to an unhealthy server vary depending on the load balancer, and may result in error responses or long delays in response due to request timeouts and retrying on a healthy server.
Optional
- Configure timeouts for client- and server-side inactivity. When configuring timeouts, consider that longer timeouts on the server are appropriate for time-consuming operations, particularly running workspaces that take a long time to complete.
Load Balancing the WebSocket Server
An FME Flow WebSocket Server runs on each FME Flow instance, but only one WebSocket Server should be used at a time. The WebSocket Server is used mainly for Notification Service Topic Monitoring.
Required
- Route traffic on port 7078 to one WebSocket Server, and switch to others if the one in use fails. If the load balancer does not support automatic failover to backup servers, then manual intervention is required to route to a healthy WebSocket Server.
Recommended
- Set longer client- and server-side timeouts to allow for longer WebSocket connections.
2. Configure FME Flow with the Load Balancer URL
To configure FME Flow to recognize the load balancer URL, perform the following tasks in the FME Flow Web User Interface:
Update Service URLs
- On the Services page, click Change All Hosts. In the Change All Hosts dialog, enter the public load balancer URL, and click OK.
Update Topic Monitoring URL
- On the Network & Email page, expand Topic Monitoring.
- Under Fault Tolerant Configuration, update the Internal WebSocket URL field with the public load balancer URL. Automations Destinations (and Notification Service Subscribers) use this URL to communicate with the FME Flow WebSocket Server. The load balancer URL redirects requests to the active WebSocket Server.
- If necessary, update Advanced Routing settings:
- External WebSocket Host: The load balancer name. For example:
- External WebSocket Port: If the WebSocket Server is accessed through a port other than 7078, specify the port number here. Otherwise, leave blank.
- Click Save.
fme-flow-loadbalancer
This setting does not likely need to be changed, and should only be set if you use separate hosts to route HTTP and Websocket traffic to FME Flow.
Update Reset Password URL (Optional)
If you plan to enable the Reset Password feature, update the Public URL field on the Reset Password page with the public load balancer URL, and click Save.
What's Next?
Proceed to Log on to the Web User Interface.