Gateway Farm member client side failover

Gateway Farm member client side failover

1 vote

avatar

Hello,

Have encountered a few scenarios recently where an individual gateway farm member is actively connected to data source (Hub/DVLS), but the external access points are inaccessible to the RDM client for various reasons (i.e. DNS resolution, Firewall issues, NGrok/Cloudflare tunnelling issues etc). It appears that when launching a connection via RDM, it is the data source that chooses which gateway farm member to connect via, but if that member is unreachable from the RDM client then the connection fails.

Would it be possible to enable client side detection of reachable gateway farm members, and allow RDM to automatically failover to an alternate one if the primary is unreachable? Ideally this capability would eventually be extended to Workspace and WebUI.

Please let me know if you would like any additional info.

Thanks
Joe

All Comments (2)

avatar

Hi Joe,

Devolutions Gateway health checks are handled server-side, not client-side, and for a good reason in the case of a Devolutions Gateway Farm: the logic for selecting the Gateway is performed server-side, not client-side. Rather than have the client try multiple hosts, we try to provide the client with just something to connect to that will work. Otherwise, we'd have to perform a separate connection test before launching the real connection, which costs precious seconds right in the critical path. If we were to just connect and let it fail to try again, the problem is we don't have good ways to detect connection failures in all cases to quickly recover from it by re-launching the entire connection.

You should plan to deploy Devolutions Gateway in a way that makes it reachable to both RDM and DVLS

Best regards,

Marc-André Moreau

avatar

Hi Marc-André,

Agreed that slowing down launches would be undesirable, although a sub second TCP port check to the gateway (Fast TCP port check in Powershell - A code to remember) might be preferable for some customers than having connections fail entirely. For example, in a gateway farm with 2 members, one maybe configured as the primary with weight 100, and the other as a backup with weight 1. Should the primary gateway be inaccessible to RDM for some temporary unanticipated reason, the user is unable to successfully launch a connection, unless they re-tried 100 times and eventually get directed to the backup. While the farm members could be equally weighted, this isn't ideal if one of them has slower internet connectivity or other performance considerations. Maybe client side gateway farm member detection/failover could be an optional setting that only customers with entries using farm/s could choose to enable?

Please let me know if you would like more info.

Thanks
Joe