SQL Server 2014 Create a New #SQL Server Failover #Cluster (Setup) in 5 minutes Source Files

When I started this blog post it was more a can I create a Fully cluster in 5 minutes and with 10 min extra a two node cluster and loaded with a two instance cluster. Well I could.

If I had better hardware SSD/fusionIO or other SMB 3.0 huge etc it would be much faster ( donations are Welcome  Winking smile ) Joking

I posted the vid on youtube and the blog and it seams it is not as common as I thought. no next next Finish Deployment.

As you already know deployments are time eating preparations.  But once you have it in place it rocks.

So I’ll place an update on the source files remember change the domain/user account server names

Old Source blog :


Get the ini files here http://sdrv.ms/12dqaya  ( logon with your Microsoft Passport )

Watch this new video I made  http://youtu.be/UyqNY5JyE9k


In the source file there are image  Create SQL CSV Clustered instance and join other node to the instance.


image With the create cluster name IP , bind ISCSI etc and one Extra SQL install with out CSV also in 3 steps.


All the Files are there. just as an sample on how to do this.



Have Fun!



How to: Create a Failover Cluster (Setup) Windows Server 2012 Failover Cluster (Setup)

To create a Windows server 2012 failover cluster you need just a few steps.

First we use the group creation to manage the servers easily. I name the Group as it would be my new SQL Cluster. I show you all the screens just so that you can find the options. Not every body find it easy to find the things that he has to do.

clip_image002 clip_image006

clip_image008 So we created the groups and we are adding the Failover cluster Roles to the nodes just right click and add roles and the wizard pops up choose the failover cluster tools do this for both nodes.

 clip_image016  clip_image018 

clip_image020 clip_image022

On top of the screen you can see on what node you install the Roles. Remember you don’t have to go to the node to install the roles you can do this in the server groups.


Or you can use Posh. there are a lot new powershell commands to find them it is easy you can use the *  The above Gui things can be done with one line Posh.

Now there are a few steps you can do to deploy roles

Get-WindowsFeature *

Get-WindowsFeature Failover-Clustering

clip_image024  clip_image026

As you can see this is on the remote cluster node ! I’m logged on on node 1 and it runs also on node 2

install-WindowsFeature Failover-Clustering

Or do it in

clip_image028 When We want to create a new cluster we can do this also in Posh just one line

New-Cluster -Name "myfirstcluster" -Node mvpwin8-n1 -NoStorage -StaticAddress ""

Or gui again I show you all the screens just to see how fast posh is

clip_image030 clip_image032

clip_image034 clip_image036


Remember the validation reports are important to have if you setup fails or you cluster is in trouble run validation and see where to problem is.

clip_image040 clip_image042

7 clicks further your cluster is ready. now we are adding disk to the cluster and configure the witness disk

clip_image044 First in powershell.

My cluster name is : cluster8

the Get-ClusterAvailableDisk -Cluster cluster8

List all available disk


Get-ClusterAvailableDisk -Cluster cluster8

Get-ClusterAvailableDisk -Cluster cluster8 |Add-ClusterDisk

this adds all the disks to the cluster

or in the Gui

clip_image046  Now that the disk are ready we configure the Quorum disk

on top of the cluster right click and configure quorum.

image clip_image050

We have a two node cluster , use the recommended settings.

clip_image052 clip_image054

So all this in 3 lines powershell

install-WindowsFeature Failover-Clustering

Get-ClusterAvailableDisk -Cluster cluster8

New-Cluster -Name "myfirstcluster" -Node mvpwin8-n1 -NoStorage -StaticAddress ""



Did you also see the little export line ? in the Roles installation field save it for later.

image it looks like this.

<?xml version="1.0"?>

<Objs xmlns="http://schemas.microsoft.com/powershell/2004/04" Version=""><Obj RefId="0"><TN RefId="0"><T>System.Collections.ObjectModel.Collection`1[[System.Management.Automation.PSObject, System.Management.Automation, Version=, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]</T><T>System.Object</T></TN><LST><Obj RefId="1"><TN RefId="1"><T>Microsoft.Management.Infrastructure.CimInstance#root/Microsoft/Windows/ServerManager/ServerComponent_NET_Framework_Features</T><T>Microsoft.Management.Infrastructure.CimInstance#root/Microsoft/Windows/ServerManager/MSFT_ServerManagerServerComponentDescriptor</T><T>Microsoft.Management.Infrastructure.CimInstance#ServerComponent_NET_Framework_Features</T><T>Microsoft.Management.Infrastructure.CimInstance#MSFT_ServerManagerServerComponentDescriptor</T><T>Microsoft.Management.Infrastructure.CimInstance</T><T>System.Object</T></TN><ToString>ServerComponent_NET_Framework_Features</ToString><Props><Nil N="PSComputerName"/></Props>


So if you want to reuse / import this file on a fresh new server it can.

Import Configuration settings in windows 2012  based on exported Configuration settings in windows 2012

Go to powershell

install-WindowsFeature –configurationfilepath \\server\configfiles\savedconfig.xml

And your done

hotfix that improves the performance of the "AlwaysOn Availability Group"

A hotfix that improves the performance of the "AlwaysOn Availability Group" feature in SQL Server 2012 is available for Windows Server 2008 R2

Hotfix download is available
Hotfix Download Available
View and request hotfix downloads


Assume that you enable the AlwaysOn Availability Group feature in Microsoft SQL Server 2012 on a Windows Server 2008 R2-based failover cluster. However, when you use local and remote Availability Group database replicas, the failover time to the local replica takes longer than expected.
Note This issue occurs because of inter-node communication within the cluster.

How to: Change the Network Binding order for SQL 2012 Windows Server 8 Failover Cluster (Setup)

During the SQL 2012 Setup there is a warning that my binding order is not correct. It looks ok but it is not. there are a couple of KB items on technet. this is on Windows 8 server

clip_image002 clip_image004

Why this is appearing did I make a mistake ?  lets see mm my lan nic is on top. this looks ok so why this error. lets look at the SQL log

clip_image006 clip_image008


Ok here it is the SQL setup log file is it wrong ? local area connection* 11 is on top ? what is this ? lets lookit up .


NetworkBindingFacet: Looking up network binding order.

(05) 2012-03-18 14:03:04 Slp: NetworkBindingFacet: Network: ‘Local Area Connection* 11’ Device: ‘\Device\{2E9E3899-BB35-4E91-98D4-BF56F4ADE4F6}’ Domain: ” Adapter Id: ‘{2E9E3899-BB35-4E91-98D4-BF56F4ADE4F6}’

(05) 2012-03-18 14:03:04 Slp: NetworkBindingFacet: Network: ‘LAN’ Device: ‘\Device\{734667C2-FCC9-4874-B3E0-EDC3BA72F6AB}’ Domain: ‘mvp.local’ Adapter Id: ‘{734667C2-FCC9-4874-B3E0-EDC3BA72F6AB}’

(05) 2012-03-18 14:03:04 Slp: NetworkBindingFacet: Network: ‘ISCSI’ Device: ‘\Device\{1F016AE2-DD00-4B0F-B80B-57173AF2F36E}’ Domain: ” Adapter Id: ‘{1F016AE2-DD00-4B0F-B80B-57173AF2F36E}’

(05) 2012-03-18 14:03:04 Slp: NetworkBindingFacet: Network: ‘Cluster’ Device: ‘\Device\{BA1F99C0-0D58-44AA-85E0-ADFB1EF2C422}’ Domain: ” Adapter Id: ‘{BA1F99C0-0D58-44AA-85E0-ADFB1EF2C422}’

I know what it is it is the hidden cluster adapter which needed to be moved in the binding order, and that had to be done in the registry.

I opened up regedit and drilled down to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Linkage and opened up the Bind value:

clip_image012 clip_image014




Flip the registry keys and you are ready to go.

This is hard to find eh yes but you can use powershell 

wmic nicconfig get Description,SettingID


More info about this is on MSDN



and it you want to change this by powershell the get-itemproperty is the way.

Get-ItemProperty Registry::HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Linkage\bind\*


After the NIC binding order change the SQL setup marked all as passed.

Samples :


Get-Item -Path Registry::HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Linkage\bind\* | Select-Object -ExpandProperty Property

Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter "IPenabled = $true" | select Description, IPAddress, index, SettingID

gwmi Win32_NetworkAdapterConfiguration | where-object {$_.IPEnabled -eq "True"} | ft Description, SettingID -auto

How to: Create a New SQL 2012 Server Failover Cluster (Setup) multiple instances on windows server 2012 #ws2012

Now that windows 2012 is in beta we can talk almost about anything and it is time to create my demo SQL 2012 machine. In this case I uses the Windows server 8 cluster from the other blog item to create a SQL 2012 cluster with 3 instances. All of the instances are created on different ways , Instance 3 is a ZTI Winking smile  #WS2012 #TEE #TEE13 #MVP13

For starters build a 2 node cluster or more nodes if you want and use the SQL 2012 Media. I use the Enterprise version.

Remember that I create the Server Group image and my cluster image I already added the disk to my cluster mounted the SQL 2012 ISO file to the node. Ready for the Setup.

again I use a lot of pictures in this blog and I do almost everything twice just to show you how you can configure your cluster.

clip_image002 the disk listing in the cluster. eh no we do not use the basic setup. Installation should be fun and not follow the wizard Winking smile ok we have to use the wizard in this part. We use the advanced cluster preparation setup this will setup your SQL cluster in two parts.

clip_image004 clip_image006

clip_image008 clip_image010

image clip_image014

Fill in your SQL product key or use a evaluation , accept the agreement.

clip_image016 clip_image018 

Mm a warning it looks OK yes it is I create a new blog post on this ignore it for now.

clip_image020 clip_image034

Yes I corrected the binding order and we continue the setup.

clip_image036 clip_image038

I choose to install all the options This cluster will be used for the System center products.

clip_image040 clip_image042

clip_image044 clip_image046

I use a basic account but for more security you should use different accounts. And I will also configure my report server by hand later.

clip_image048 clip_image050

clip_image051 clip_image053

Now that the first step is ready we can do the second step but first I want to create a second instance preparation. as a basic I use the setup .ini file that you can save during the setup.


The second instance I use this ini file to create the instance preparation. Open the ini file and I changed the SQL01 in SQL02. easy

image in the setup screen I use the install based on a Ini file setup. this is not an unattended setup. But all the screens are already filled in.  So this is like a practice unattended setup like in SQL03 Winking smile 

… import ini file As you can see the installation of a second instance is the same as installing one instance on a node or installing a third instance but you can install less or more options in the instances. they don’t have to be the same.

clip_image002[6] clip_image004[6]

clip_image006[6] clip_image008[6]

clip_image010[6] clip_image012[6]

clip_image014[6] clip_image016[6]

clip_image018[6] clip_image020[6]

Easy just press next and finish almost unattended. You can also use the ini file of this installation if you want to rebuild this instance during a disaster.

Advanced Cluster Completion

Now that the Instance SQL01 and SQL02 are installed but not jet completed in my cluster we need to do the next step Cluster completion. This step we need to do this also twice , and yes one time I do this in the GUI and save the INI file and One I use the Ini file for the SQL02 setup just to see how it can be done.

clip_image003 clip_image005

Here we create the Cluster name and the SQL instance As you can see. And You see also the SQL02 instance. but remember you can only do one instance installation at the time

clip_image007 clip_image009

clip_image011 clip_image013

We choose the Disks and the IP address for this SQL cluster instance.

I use here only two disks but you can use more disk, DB ,Logs, and Temp DB and Analysis all on different disks. if you want more performance. this is if it runs on multiple SAN disks.

clip_image015 for System center the Collation is most important If you choose the wrong one you are in trouble it is hard to reconfigure this.

If you continue Setup using the default collation (SQL_Latin1_General_CP1_CI_AS), you will not be able to support multiple languages in Service Manager. In the future, if you decide you want to support multiple languages, you will have to re-install SQL Server.

Service Manager doesn’t like the default collation method (SQL_Latin1_General_CP1_CI_AS). If your SCSM SQL server is running with that collation mode you will get a warning when you install SCSM.

Further down in the error the Exhange 2010 MP was referenced with regards to “Microsoft.Exchange.2010.Reports.Dataset.Ten

After doing some investigation discovered that nager is only supported with a collation of “SQL_Latin1_General_CP1_CI_AS” hange 2010 management pack relies on the collation being “SQL_Latin1_General_CP1_CI_AS” to place certain data into the Data Warehouse.

Here is the bad news!!! The only way to resolve is it re-install SQL. So make sure if you are installing Operatons Manager your SQL collation is correct.

This error message is because we installed SQL Server in the default SQL_Latin1_General_CP1_CI_AS collation. This collation is the only one that is supported by SCOM2012 and so this is necessary when we want to install SCOM2012 and want to connect SCSM with SCOM2012.

When installing SCSM 2012 it’s important to use a supported language.

If you use the default collation: SQL_Latin1_General_CP1_CI_AS

multilanguage support will not be available in Service Manager.

Instead you should use a supported collation like eg.: Latin1_General_100_CI_AS



More info about this you can find here :


clip_image024[4] clip_image026[4]

If you use system accounts you don’t want to add the domain administrator but in my demo It is ok

clip_image028[4] clip_image030[4]

clip_image032[4] clip_image034[4]


Ready. the one thing that I did not install is a DTC because it is so easy to install on a cluster we do this in just a few steps.  go to the failover cluster manager and add a cluster role

clip_image038[4] clip_image040[4]

clip_image042[4]  clip_image044[4]

pick the msdtc and give the role a IP and I always use a own disk for the DTC but you can share this if you want. my advice use a own disk for a more flexible cluster

clip_image046[4] clip_image048[4]


as you can see my cluster is ready to use

clip_image056 the second cluster completion I do this with a INI file all the steps are the same as without the ini file only the items are filled in.

clip_image058..import ini file

clip_image060 clip_image062

clip_image064 clip_image066

I skiped the other screens

clip_image076 clip_image078

Done Now I have two SQL instances and 2 sets of ini files. these file I’m gonna use it for an unattended setup. SQL installation in just 10 minutes Winking smile

the first step SQL cluster preperation

setup.exe /Q /CONFIGURATIONFILE=”C:\SQLSetup\ConfigurationFile.ini”


because I use a account for my SQL server I need to fill in my password.


clip_image082 clip_image084

clip_image088 clip_image090

clip_image092 clip_image093

clip_image095 clip_image097 this will kick in the cluster completion.

For this unattended setup I created the following file I use the following account for all the services : sql2012 and the password is also sql2012 Remember this is a lap use strong passwords in real life !!!

Step one is the Cluster preperation

d:\setup.exe /q /CONFIGURATIONFILE=”C:\SQLSetup\SQL03-1.ini”






Step Two is the Cluster Completion

d:\setup.exe /q /CONFIGURATIONFILE=”C:\SQLSetup\SQL03-2.ini”








You can do this also in one ini file but if something fails you don’t have to do it all again.

Happy clustering !!