Sunday, June 8, 2014

Lync Stress Test - Key Health Indicators KHI (how to design/ define the server hardware requirements)

Since Microsoft released Lync Server 2013, there was one change in the planning document. No detailed SPECs were released so you could exactly calculate your server performance requirements.
Truly, there is the performance calculation sheet which provides you with a rough overview.

For this entire process you need the following tools and documents:
I provide you with the Lync KHI Performance Counter: Download here
Note:
The XML I have provide contains a consolidated Lync Frontend installation entirely on drive C: with 6 CPU core. If you have another setup, please add more CPU counter and if the SQL Server is installed on drive D:, please also add the I/O counters for this drive too.

But generally the server hardware requirements are physically and virtually the same:


Front End, Back End, Standard Edition, pChat - Server
Component
Minimum requirements
CPU
2x64 bit CPU with 6 Core (also if virtualized)
Memory
32 GB
Disk
2x RAID 1 min. 72GB[1] free space
6x RAID 10 for SQL databases
Network
1x Dual-Port network card with min. 1GBit/Sec
If teaming is activated, unique MAC address must be used




[1] It is required having at least 20GB free disk space after installation, else it might have a serious impact during update and CU installations, this is related tot he local SQL database copies.


Edge, Standalone Mediation – Server and Director, Office Web Apps
Component
Minimum requirements
CPU
64 bit CPU and min. 4 Core (also if virtualized)
Memory
16 GB
Disk
Mind. RAID 6 Performance with min. 72GB free space
Network
1x Dual-Port network card with min. 1GBit/Sec
If teaming is activated, unique MAC address must be used

This general definition for your hardware is simply not enough if you design your environment. There are some questions you need to answer to your customers:
- how can I guarantee the hardware performance on virtual environments
- how does Lync impact our SAN
- if we don't utilize the max user, how and can I reduce CPU's and RAM, or even the SQL Disk I/O's

Here you stand as consultant and don't know what to say.
E.g. the supportability matrix give you a clear answer, design the server as provided in the requirement document.
So, say you have 3 Frontend servers as recommended for High Availability (HA), but you only run 1.000 users.
This would be a complicated answers, since you simply cannot know the answer, as it was possible with Lync 2010, since you had more information how to calculate.

The Calculation Process (I recommend to you):

Lync server load highly depends on the user profile!
Talk to your customer and figure out what is the main purpose and how in the past users utilized Voice (PSTN and PBX)
Analyze the Video utilization, also and especially the AppSharing (with is video data too)
Start using the Lync Server 2013 Capacity Calculator.
With the results popping up you need to reverse engineer the capacity needed on your servers.
 
Finally you have some SPEC's, but you need (better say: MUST) validate them if you are not using the exact SPEC provided in the tables above.


The Stress Test Process:

Please use the Stress Test Guide from Microsoft and setup the environment in a Test Lab first. It simple even on physical, as well as on virtual environment.

Some recommendations from my experiences:

1. the Stress Client SPEC's are not sufficient as Microsoft wrote, please use here more CPU's, at least the double amount.
2. Split the Test across 3 Stress Clients,
    Stress Test Client 1: All IM, APPClients and Conferences

    Stress Test Client 2: all Reach Client features
    Stress Test Client 3: all PSTN functions (PSTN Gateway Simulator), here you might need more clients, since the PSTN Simulator can only provide one (1) gateway on a PC
3. run a Pre-Test, where you closely monitor you client performances, especially the CPU after the so call RAMP UP TIME
4. Check if information are written to the Lync Monitoring Database (validate the reports)
5. Re-balance some of you Test Scenarios and run the Step 3 again if necessary
6. Start the Main Stress Test now

Now it's time for the core test itself.
Ensure you either monitor the KHI on a dedicated machine or on the Lync server themselves. Please do NOT use any of the Stress Test Clients!

I have provided you with the Performance Monitor DataCollection. Make sure you see some results during Step 3.


The Validation Process:

Now you have all results necessary to write your report and even see you underestimated the server load ;)

Get the Performance Data and see if any of the counters above did jump above some of the provided counters for a longer periods of time or if any of those counters jump more frequently above the thresholds.

The go to the Lync Monitoring Reporting and validate all Failure Reports (related to the test you have ran).

I also recommend checking the Lync Server Eventlogs.

With the collection and analysis of all data write your own validation paper to the customer.

NOTE:
If you need help, don't hesitate asking me for help, I can provide you professional service and do the write-up for you.
Use the contact app on the right site of my blog.



4 comments:

  1. Replies
    1. Hi Curtier,
      you are welcome, you can either post your problem here or you can contact me personally via the contact form on my blog. I'm keen helping you.Regards
      Thomas

      Delete
  2. can you provide me steps to configure where what i have to install and how to test voice calls jitters problems

    ReplyDelete
    Replies
    1. Hi Aali
      you can contact me directly, I will support you.
      welcome

      Delete