Yesterday (22/10/2015) Microsoft announced the release of the Skype for Business Statistics Manager (aka LyncDash). Statistics Manager (SM) is a live reporting dashboard that monitors your entire Skype for Business deployment providing real time KHI data from a web interface.
Here I hope to show you how to install it and start accumulating data.
First off there are a few pre-requisites to get ready, there aren’t many, but they definitely need to be done.
- A new dedicated server running Windows Server 2012 R2 (Has to be R2 – anything older will fail)
- In addition to the installation files available on Microsoft download website, you need Redis (available here: https://github.com/MSOpenTech/redis/releases)
- Statistics Manager download – http://www.microsoft.com/en-us/download/details.aspx?id=49491
- A new certificate from your internal CA
- PSExec if you want to deploy the agent to multiple machines
- .Net Framework 4.5 on all servers (if using 2012 for older for your Skype for Business servers)
Installing the Statistics Server
First enrol the server for a new computer certificate from your local certificate authority. The certificate template to use should be the default Computer template.
Once the certificate has been installed, you can now begin to install the server components.
Next we need to install Redis.
After pressing next, accept the EULA
Choose your installation path, I would recommend leaving it at default
Note there appears to be no added value in checking the box to add the Redis path to the environmental variables, so I did not do it.
Leave the default port Redis uses (6379) as is and press next
Next, leave the memory heap settings as default and press next
Complete the installation wizard and press finish. Once installed check to see the Redis service is running
Next we install the Agent listener application. Install the StatsManPerfAgentListener.msi file
Press Next and accept the EULA agreement
On the configuration screen you need to choose a unique password that will be used to collect the performance data and also select the certificate thumbprint of the certificate that you are going to be using for the service. Please make a note of the port (default 8443)
You can select the certificate but clicking the select button
Make a note of the certificate thumbprint from the box for later use (not detrimental – we can retrieve it later), press install to complete the installation
Check to see the agent listener service has started – if not start it
Check the health of the service by browsing to https://server.domain.com:8443/healthcheck and check to see the known server count is set to 1
Now we need to install the web front end to the system. Please note that you do not need to install any server roles, these are done by the installer. Click on the Statistics Manager Website installer and click next to accept the EULA
At the configuration screen, choose your web port (default 8080)
Please note the ports allowed are 1024-65535 so you cannot have the website listening on port 80, or you will receive an error
As I mentioned before, the installer installs the required server roles for you (basically IIS)
This completes the installation of the website. Please note at this point all we can check is that you can log on to the front end website using http://server.domain.local:8080
You will be prompted to login with your credentials and then be presented with a homepage complaining about no data
Next we need to import the topology into the statistics server so it knows about your deployment. From your Skype for Business management shell run the following command
Get-CsPool | Export-Clixml –Path c:\mypoolinfo.xml
Copy this file to your SM server.
On your SM server, run the following PowerShell to import the topology
.\Update-StatsManServerInfo.ps1 –CsPoolFile c:\mypoolinfo.xml
Make sure you change the working directory to c:\program files\skype for business server statsman listener\
Press Y to confirm the import
Installing the Agent on Skype for Business servers
To retrieve the certificate thumbprint if you have not copied it beforehand, run the following PowerShell on the statistics server
Get-Childitem –Path cert:\localmachine\my
Copy the thumbprint as you will need it to install the agent.
Go to your Skype for Business server and copy the Agent installer file over and launch
Press next and accept the EULA. From the configuration screen enter the password you chose when setting up the listener program and paste the certificate thumbprint you copied from the SM server into the Service thumbprint box. Change the server URI to https://smserver.domain.local:8443/ and press install
Once finished make sure you see the Skype for Business perf agent service has started
I noticed I could not start this service on my front end server running Windows Server 2012. I was getting various .Net errors and faulting application
Turns out I needed to update my .Net to 4.5 on the server and reboot in order to start the service. So I strongly recommend you patch your servers fully before rolling this out.
Just waiting for updates to finish to show final working screenshot.
Going further and Installing the Agent en-masse
As the agent is an MSI based installer, this can be pushed out using SCCM or using PSExec and MSIExec.
Use the below installation string to push out using your favourite method
msiexec /l install.log /i \\server\share\StatsManPerfAgent.msi SERVICE_THUMBPRINT=<SM Server Cert Thumbprint> SERVICE_PASSWORD=<password> SERVICE_URI=https://<smserver.domain.local>:8443/[INSTALLDIR=”C:\Program Files\Skype for Business Server Stats Agent\][DIR_ STATSMANAPPDATA=”C:\ProgramData\Microsoft\StatsMan\”]