I've heard this question asked a few times recently, so I thought I'd do a quick write up on it. Basically, people want to know how adding a load balancer impacts the SWS architecture. The quick response is that to the user, there is no impact. To the admin, it's a bit more involved since the LB has to be configured and the proper settings need to be applied on the SWS console. For this article, I will just describe the console settings that are involved.
No Load Balancing
Looking at the above example, on the left I have a representation of three frontend servers that I want to add to my streaming configuration. Each FE has a host name and an IP address on the network. Any user can stream from any one of these servers by pointing to its host name or IP.
On the SWS Console, I would need to create a server group for each FE and add the component into a server group. In this configuration, every server group should have only one FE as a member. I can further go to the advanced options on the server group configuration and setup a backup for this server group, which will point to a host name or IP of one of the other server groups. If that FE goes down, then the client will automatically fail over to the configured backup. For this to work, the packages have to be loaded and enabled on all FE's.
Using a Load Balancer
On the right side of the diagram, I have modified the architecture with the assumption that I want to add a second FE to server group 1 and use a load balancer to direct user connections. At this point I need to go to the configuration page for server group 1 and enter the LB IP address for the external IP. After I save this configuration I can add another FE to server group 1. You can actually add more, but I'm just showing two servers for simplicity.
From a client perspective, the FE's that are in server group 1 no longer represent the primary streaming server for any user that is connecting through that load balancer. All streamed packages will show the virtual IP (VIP) of the LB as the primary streaming server. To take this one step further, when setting up the backup for each server group, the VIP is the IP that I need to point to from the other server groups and not directly to the FE as before. However, server groups 2 and 3 are not load balanced so they can still point directly with the backup configuration. Just remember, any reference in the configuration that points to the load balanced server group as a backup, should NOT point to the FE's directly, but to the VIP of the load balancer.