Deploying Call Quality Dashboard (CQD) for Skype for Business Server 2015

One of the new features introduce for Skype for Business Server 2015 is the Call Quality Dashboard (CQD):

The Skype for Business Server 2015 Call Quality Dashboard (CQD) is a reporting layer on top of the Quality of Experience Database in the Monitoring Server in Skype for Business Server 2015 and Lync Server 2013. CQD uses Microsoft SQL Server Analysis Services to provide aggregate usage and call quality information as well as filtering and pivoting on the data set.

Components:

The Call Quality Dashboard consists of several databases, Microsoft SQL Agent jobs, processes, and web applications. The Microsoft SQL Agent jobs periodically copy data from the QoE Metrics database into the QoE Archive database and processes the Cube with the data in the QoE Archive database. The Repository database stores the report definitions that power the Portal. The Portal provides browser access to the Cube data.

The CQD components, including the QoE Archive, Cube, and Repository databases, can be installed on the Monitoring Server, installed on its own server, or installed across multiple servers. The particular installation method depends on the performance demands of CQD as well as impact to other processes on the same servers.

CQD Components

Prerequisites:

Call Quality Dashboard (QCD) consists of three major components:

  • Archive Database, where the Quality of Experience (QoE) data is replicated and stored.
  • Cube, where data from QoE Archive database is aggregated for optimized and fast access.
  • Portal, where users can easily query and visualize QoE data.

CQD utilizes Microsoft SQL Server, Microsoft SQL Analysis Server, and Microsoft Internet Information Server so CQD’s minimum hardware and software requirements are basically the same as those dependent components. However, based on the organization’s requirements around data freshness (which will depend in part on the volume of QoE data the organization generates) and deployment cost, additional deployment considerations should be made.

The following versions of SQL Server are supported:

  • SQL Server 2008 R2
  • SQL Server 2012
  • SQL Server 2014

Please note that both for the Cube and analysis services required SQL Enterprise Edition is recommended but not requited.

Business Intelligence or Enterprise edition is recommended for performance reasons. These editions allow use of multiple partition files that can be processed in parallel, which is beneficial for processing data spanning multiple months or longer.

While not recommended, Standard edition is supported as well. Processing will be constrained to a single partition (which needs to be configured during setup).

You can follow those guidelines in order to upgrade SQL STD to SQL ENT.

Deployment Steps:

the following steps are taken from the Microsoft TechNet: Deploy Call Quality Dashboard for Skype for Business Server 2015

1. Download and copy the CallQualityDashboard.msi to the machine where the archive database component of CQD is to be installed (this is the machine that has SQL Server installed).

image

2. Execute the MSI (Windows will prompt to run with administrator privilege, do so).

imageimage

3. Accept the EULA.

image

4. Select the destination folder where files related to Call Quality Dashboard components will be located or accept the default location.

image

5. Select all features.

image

6. At the QoE Archive Configuration page, provide the following information:

  • QoE Metrics SQL Server: SQL Server instance name for where the QoE Metrics DB is located (this will be the data source).
  • QoE Archive SQL Server Name: This is read-only field and fixed to the fully qualified domain name of the local machine. Archive DB can be installed only on the local machine.
  • QoE Archive SQL Server Instance: A local SQL Server instance name for where the Archive DB is to be created. To use a default SQL Server instance, leave this field blank. To use a named SQL Server instance, specify the instance name (e.g. the name after the “”).
  • QoE Archive Database: By default, this option is set to “Create new database”. Since Archive DB upgrade is not supported, the only circumstance under which the “Use existing database” option can be used is if the existing Archive database has the same schema as the build to be installed.
  • Database File Directory: Path to where the database files (.mdf and .ldf) for the Archive DB should be placed. This should be on a drive (HDD2 in the recommended hardware configuration) separate from the OS. Note that since the file names are fixed in the install, to avoid any potential conflict, it is recommended that a blank directory with no files be used.
  • Use Multiple Partitions: The default is set to “Multiple partition”, which requires Business Intelligence edition or Enterprise edition of SQL Server. For Standard edition, select “Single Partition” option. Note that cube processing performance may be impacted if Single Partition is used.
  • Partition File Directory: Path to where the partitions for the QoE Archive database should be placed. This should be on a drive (HDD3 in the recommended hardware configuration) separate from the OS drive and SQL database log files drive. Note that since the file names are fixed in the install, to avoid any potential conflict, it is recommended that a blank directory with no files be used.
  • SQL Agent Job User – User Name & Password: Domain service account name and password (masked) that will be used to run the “QoE Archive Data” step of the SQL Server Agent job (which will run the stored procedure to fetch data from QoE Metrics DB into Archive DB, so this account must have read access to QoE Metrics DB, as indicated under Accounts section. This account also needs to have a login in the QoE Archive SQL Server Instance).
    Please use DOMAINUSERNAME convention as UPN is not supported.

imageimage

If you don’t have SQL Enterprise edition and you choose Multiple Partition, the following error message will appear:

image

You can choose Single Partition to install it on STD edition:

image

7. Upon clicking next, the installer will perform pre-requisite checks and report if any issues are encountered. When all pre-requisite checks pass, the installer will go to the Cube Configuration page.

8. At Cube Configuration page, provide the following information:

  • QoE Archive SQL Server Name: This is read-only field and fixed to the fully qualified domain name of the local machine. Cube can be installed only from the machine that has QoE Archive database (Note. Cube itself may be installed on a remote machine. See below)
  • QoE Archive SQL Server Instance: SQL Server instance name for where the QoE Archive DB is located. To specify a default SQL Server instance, leave this field blank. To specify a named SQL Server instance, enter the instance name (e.g. the name after the “”). If QoE Archive component was selected for the install, this field will be pre-populated with the value provided on the QoE Archive Configuration page.
  • Cube Analysis Server: SQL Server Analysis Service instance name for where the cube is to be created. This can be a different machine but the installing user has to be a member of Server administrators of the target SQL Server Analysis Service instance.
  • Use Multiple Partitions: The default is set to “Multiple partition”, which requires Business Intelligence edition or Enterprise edition of SQL Server. For Standard edition, select “Single Partition” option. Note that cube processing performance may be impacted if Single Partition is used.
  • Cube User – User Name & Password: Domain service account name and password (masked) that will trigger the cube processing. If QoE Archive component was selected for the install, this field will be pre-populated with the value provided on the Archive Configuration page for the SQL Agent Job User, but we recommend specifying a different domain service account so that Setup can grant the least required privilege to it.

image

9. When clicking next, another round of validation will be performed and any issue will be reported. Upon successful completion of the validation, the installer will go to the Portal Configuration page.

10. At Portal Configuration page, provide the following information:

  • QoE Archive SQL Server: SQL Server instance name for where the QoE Archive database is located. Note that unlike the QoE Archive Configuration page and the Cube Configuration page, the machine name is not fixed and must be provided. If QoE Archive component was selected for the install, this field will be pre-populated with the value provided on the QoE Archive Configuration page.
  • Cube Analysis Server: SQL Server Analysis Service instance name for where the cube is located. If Cube component was selected for the install, this field will be pre-populated with the value provided on the Cube Configuration page.
  • Repository SQL Server: SQL Server instance name where the Repository database is to be created. If the SQL Server instance name for where the QoE Archive database is located has been provided earlier in the setup (in other components), this field will be pre-populated with the QoE Archive DB SQL Server instance name. This can be any SQL Server instance.
  • Repository Database: By default the option is set to “Create new database”. Since Repository DB upgrade is not supported, the only circumstance under which the “Use existing database” option can be used is if the existing Repository DB has the same schema as the build to be installed.
  • IIS App Pool User – User Name & Password: The account that the IIS application pool should execute under. The User Name and Password fields will be grayed out if built-in system accounts are selected. These fields will only be enabled if “Other” is selected from the drop down box so the user can enter the domain service account information.

imageimage

11. When clicking next, the final round of validation will be done to ensure that the SQL Server instances are accessible using the credentials provided and that IIS is available on the machine. Upon successful completion of the validation, the installer will proceed with the setup.

image

12. When the installer is done, most likely the SQL Server Agent job will be in progress, doing the initial load of the QoE data and the cube processing. Depending on the amount of data in QoE, the portal will not have data available for viewing yet.

13. The main portal page is accessible via http://<machinename>/CQD

image

image

image

Known Issues and notes from the deployment in my Lab environment:

  • If you decided to install the CQD on the same server that host the existing Skype for Business SQL Reporting service, be aware the the Default Web Site is already reserved for the reporting service and therefore you’ll need to change default Web site binding port.
  • If you decide to go forward with Multiple partition, make sure the SQL instance is configured as ENTERPRISE edition and has the Analysis service running
  • If you have SQL Server 2008 R2 STD, make sure you upgrade it to SP2
  • Make sure the SQL Agent Service for the instance is running
  • Restart the SQL services / server before installing the CQD or after upgrading to ENT, otherwise the CUBE won’t allowed to continue in setup
  • QoE data and the cube processing may take some time for initially load the data using the existing stored procedure.
  • Some advanced configuration are required for setting authorization and access rules, those are detailed explained in the following URL: https://technet.microsoft.com/en-us/library/mt126252.aspx
  • After users are authenticated by IIS, they will have to have file permissions on the CQD directory in order to access the web portal content. It is possible to change the ACLs through the security tab of the CQD directory properties to add individual users or groups; however the recommended approach is to leave the file permissions untouched. Instead, change the IIS setting to use the IIS worker process to access the CQD directory no matter which user is authenticated.

image

image

  • In rare cases, the installer fails to create the correct settings in IIS. Manual change is required to allow users to log into the CQD and change the default authentication configurations and enable Extended Protection on the Windows Authentication Advanced tab:

Deploy Call Quality Dashboard

image

those steps needs to be repeated for each of the “CQD”, “QoEDataService”, and “QoERepositoryService” entries below “Default Web Site”.

Additional Sources:

  • Download: Skype for Business Server 2015, Call Quality Dashboard
  • Call Quality Dashboard for Skype for Business Server 2015
  • Deploy Call Quality Dashboard for Skype for Business Server 2015
  • Plan for Call Quality Dashboard for Skype for Business Server 2015
  • 2 Comments

    1. Shawn Harry (@shawnharry)

      When i browse to http://localhost/CQD/# i get the following message;- “We couldn’t perform the query while running it on the Cube. Use the Query Editor to modify the query and fix any issues. Also make sure that the Cube is accessible”.
      I’ve installed the CQD on its own dedicated server. Any ideas why i’m getting the error message above?

      Reply
      1. Guy Bachar (Post author)

        Yes, what i had similar problem, i logged in into the Analysis Service, went into the Cube object > Right click > Select Process.
        after that you should see the info.

        Reply

    Leave a Comment

    Your email address will not be published. Required fields are marked *

    This site uses Akismet to reduce spam. Learn how your comment data is processed.