By the end of 2015, I started enumerating some challenges that the Lync/Skype topology presents when you just need minimal resources and provided some answers. Since the beginning of Microsoft UC and the more I dig inside the product versions, I came with some out-of-the-box personal challenges:
– 4/Feb/2012 – Installed a Standard Edition Lync 2010 in a Domain controller (DNS, CA) – LyncIn1Box
– 11/Dec/2016 – Installed Skype for Business 2015 in a Windows Server Core – The smallest Skype for Business front-end server
As strange as it sounds, there are some small companies around the world that depend on Lync/Skype for critical business mission but don’t have enough resources. Companies with small amount of users can go for Office365, but it might no cover all the features of the on-premises. Pool pairing (1 STD Edition + 1 STD edition) might also not be possible if there is no feasible secondary location.
A short technical review of what roles you need to cover for High Availability (HA):
* Front End Lync/Skype server roles
* Back-end databases – you need a SQL mirror or a Cluster/Always-On
* File Share – can be provided by a DFS or a File Share cluster
Now we can start asking: how many resources do I need to deploy the above HA ?
Here some possible answers. Note that ‘something’ means that a SQL HA needs 2 Instances and a sort of a witness (either a SQL server or a File Share/disk quorum)
Microsoft recommended: 5.x (5 servers + something)
Following Microsoft recommended practices, you will need 3 front-end servers and a redundant back-end database. File Share can be easily deployed on the Back-end servers.
Microsoft minimum: 4.x
As Microsoft allow the usage of two Front end server, but: “This small pool will not provide a robust high-availability solution like a larger pool would, and needs extra care in managing“.
My recommended PoC: 3.0
By joining all the roles across 3 windows servers, you can have one server down and the built-in automatic failover mechanisms will take care of that.
My minimum PoC : 2.x (2 servers + something)
Redundant means at least two systems, so this is the absolute minimum :). It has the same risks as Microsoft states for two servers.
The main reason is the fabric quorum: If you unexpectedly loose a server, the fabric cannot elect the owner of the several roles… even if there is only that server. There will be the need of a ‘soft’ quorum reset (manually or a triggered task)
But if you shutdown a server/services gracefully all services will be transferred to the working node.
About the 2.x equation:
* If you use a SQL mirror, a SQL witness is required (which actually means an additional/existing Windows server)
* If you use SQL clustering/Always On, you will need: (1) a file share witness -doesn’t have to be a Windows but can count as a server :)- (2) a quorum disk (share storage) – and this is the ‘true’ 2.x–
Deploying this ‘minimalist’ solution is more about ‘out-of-the-box-thinking’ than tweaking (actually it’s only one). The normal Skype for Business setup wizard will install normally all the roles defined on the topology.
Notes about this ‘minimal counting’:
* It’s about adding Skype services: it assumes that you have a Windows Domain, a CA and a sort of Load Balancer.
* SQL Clustering/AlwaysOn is still on test stage, but the service failover should behave similar as the Mirroring.
* If you already have a SQL HA in place at the datacentre, you can reuse it. This will make MY and MS minimal requirements equal to 2.
* At this time I excluded the Edge, Office Web App roles or Persistent Chat. The first one will required more resources, the second role… is for an updated post 😉