Hi all,

Apologies for lack of posts but work’s been crazy.

The above is not a new topic, but nevertheless is worthy of a post as I couldn’t find one place where all the information was.

Basic problem – Installing a new SCSM 2012 R2 environment to a brand new shiny SQL 2014 AlwaysOn environment.  The problem is two-fold

  • The GUI installer for 2012 R2 doesn’t recognise the SQL 2014 platform as supported
  • The SQL Listener returns a “***ERROR*** Validate Arguments: A required SQL Server service is not running on <your listener name here>” error

So, in true style, I turn to the wonderful community to find a handful of blogged solutions for each of the problems above and this post then brings the entire solution together.

The excellent TechNet blog detailing creating a 2012 AlwaysOn Availability group can be found here, and uses the same principle/wizard as for 2014.  Creating a dummy Database is a really good idea here as it allows the creation of the Availability Group via the Wizard and then all the prereqs and Network settings are done.

Hi Level Solution

  • Update the SQL Nodes with the NoNamedPipes workaround to enable the SM Installer to communicate with the AlwaysOnListener
  • Update the SQL Nodes with the relevant SQL 2012 WMI NameSpace to satisfy the SM Installer’s pre-requisites
  • Run the Installer (for the first and then secondary Management Server[s])
  • Run the Installer for the Data Warehouse Management Server

SQL 2012 Namespace Solution

Link from Stephan Johner covering the fresh install to a SQL 2014 platform

Performing fresh installation of Service Manager with SQL Server 2014

And the original TechNet posting covering installing a Secondary Management Server to that of an upgraded-TO 2014 Environment:

https://blogs.technet.microsoft.com/servicemanager/2015/07/30/deploying-secondary-management-server-after-sql-2014-upgrade/

This effectively tricks the SM Installer into thinking the 2014 SQL Server is hosting a SQL 2012 Platform by adding the relevant 2012 WMI Namespace, so when queried meets the Installers Pre-requisite checks.

NoNamedPipes Workaround

But before we can do that – using a SQL AlwaysOn Listener with the above approach “may” result in the above error: “***ERROR*** Validate Arguments: A required SQL Server service is not running on <your listener name here>”

in the logfile: “SCSMSetupWizardX” (by default located in C:\Users\<userID>\AppData\Local\Temp)

Effectively the Installer is unable to contact the SQL Server and so the following post gave the workaround, as supplied by Microsoft:

https://blogs.technet.microsoft.com/babulalghule/2013/02/16/how-to-install-service-manager-2012-sp1-with-a-sql-2012-alwayson-availability-groups/

 

Combined Solution

So 🙂

Back up the registry on each of your SQL nodes and then create a registry file from the below text merge so you can easily merge the required parameter.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters]
"NoRemapPipes"=hex(7):77,00,69,00,6e,00,72,00,65,00,67,00,00,00,73,00,76,00,63,\
00,63,00,74,00,6c,00,00,00,65,00,76,00,65,00,6e,00,74,00,6c,00,6f,00,67,00,\
00,00,00,00

This effectively inserts a Multi-SZ Registry value into the above hive

REG_MULTI_SZ
Data: winreg
svcctl
eventlog

Then, run the following on each of the SQL Nodes in an elevated PowerShell session in order to update the WMI Namespace with the 2012 NameSpace:

$nameSpace = [wmiclass]”root\Microsoft\SQLServer:__Namespace”
$newNameSpace=$nameSpace.CreateInstance()
$newNameSpace.Name=”ComputerManagement11”
$newNameSpace.Put()

This can then be tested with the below code:

Get-WmiObject  -Namespace “Root\Microsoft\SqlServer\ComputerManagement11” –List

This should return satisfying PowerShell object:

WMISQL2012

Then you should now be able to run the below code to install a fresh copy of Service Manager 2012, to a 2014 AlwaysON Listener: (replacing my entries where appropriate)

First Server Syntax

.\Setup.exe /Install:Server /AcceptEula /ProductKey:'XXXXX-XXXXX-XXXXX-XXXXX-XXXXX' /CreateNewDatabase /SqlServerInstance:'SCSMListener' /ManagementGroupName:'LAB-SCSM-AO-MG' /AdminRoleGroup:'LAB\gs-SCSM-Administrators' /ServiceRunUnderAccount:'lab\svc-scsm-sdk\password' /WorkflowAccount:'lab\svc-scsm-wrk\password' /CustomerExperienceImprovementProgram:NO /EnableErrorReporting:NO /Silent

N.B. remove the “.\” if running from a standard CMD prompt, but who does that now eh? 🙂

Secondary Management Server:

.\setup /Silent /Install:Server /AcceptEula /UseExistingDatabase:'SCSMListener' /AdminRoleGroup:'LAB\gs-SCSM-Administrators' /ManagementGroupName:'LAB-SCSM-AO-MG' /ServiceRunUnderAccount:'lab\svc-scsm-sdk\password' /WorkflowAccount:'lab\svc-scsm-wrk\password' /EnableErrorReporting:No /CustomerExperienceImprovementProgram:No /ProductKey:'XXXXX-XXXXX-XXXXX-XXXXX-XXXXX'

Data Warehouse Server:

<Coming Soon> - as soon as I've tested the syntax I will update the post :)

 

Hope that helps as it puts all the resources you might need in one place.  Please note these posts are intended for information only and should be tested in a Lab before deploying to enterprise environments.

Until next time,

 

Damian

SCSM 2012 R2 Fresh Install & SQL 2014 AlwaysON – winning here!

2 thoughts on “SCSM 2012 R2 Fresh Install & SQL 2014 AlwaysON – winning here!

  • August 10, 2016 at 1:37 pm
    Permalink

    Hi Damian

    Did you manage to get this working with the data warehouse server?

    Reply
    • September 13, 2016 at 11:33 am
      Permalink

      Hi – sorry for the very tardy response. I’m currently moving to a new company and have lost sight of this blog but that will be rectified.

      In short – no. Tracking through the installer logs I found that even with the 2012 Management WMI framework in place, the installer was not recoginising this and throwing it out.

      What we did was a workaround 🙁 – we installed using 2012 SP3 and then upgraded the nodes to 2014.

      Many thanks for the comment 🙂

      Damian

      Reply

Leave a Reply to Damian Shiell Cancel reply

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