Over the past while, I've come across several Enterprise Edition Lync deployments done by other companies that utilized hardware load balancers for all Lync services. In every case, the reason given for using the hardware load balancers was "so we could have high-availability". They were shocked to find out that hardware load balancing all Lync services is actually not recommended in a wide variety of scenarios and they could have saved themselves a lot of time and money.
When I design a highly-available Lync deployment, I ask four questions whose answers determine where hardware load balancers are required:
- Will the majority of internal clients be running Lync?
- Will the majority of external clients be running Lync?
- Do you require high-availability when federating with companies running OCS 2007 R2 or older, or MSN/Yahoo!/AOL/GoogleTalk/Jabber?
- Do your external users need to play messages on their phone during a failover?
- For a full HLB solution for a single Lync site with edge services, you would need an HLB for the front-end pool, an HLB for the internal interfaces on your edge pools and an HLB for the external interfaces on your edge pool. That's 3 HLBs.
- Many HLBs are not well suited to real-time communication. HLBs that support real-time media are much more expensive than one used only for web traffic balancing.
- Configuring the load balancers to work with Lync is much more complicated and extends the implementation time. It can also complicate troubleshooting connectivity issues.
- Putting additional hardware between your users and the servers also introduces additional network latency, which is something you want to minimize where possible.
- Finally, the HLBs themselves can be a single point of failure, unless you deploy multiple nodes.
So before you go and drop a ton of money on hardware load balancers, make sure you understand the built-in high-availability capabilities in Lync first, so you can make an informed decision.
For more information on DNS load balancing in Lync, check out these links:
Lync DNS Load Balancing on Technet
Lync DNS Load Balancing on NextHop