Thursday, September 13, 2012

Part 1- 4 NODE MULTI-SITE CLUSTER,WINDOWS 2012 RC


Today I will go over setting up 4 Node Multi Site clustering in Windows 2012 RC. I posted long back which goes over setting up iSCSI SAN on Starwind 5.8 30 days trail verison, here is link so I am skipping that part. We will start with adding the 5 GB iSCSI disk to all the Nodes and configuring Multi- site clustering. So lets get started


Lab:
Site: INDIA Subnet : 10.92.76.0/24
Domain Controller/iSCSI Target Server :  FOODC1 - Windows 2008 R2 SP1
FOOPRIMARY – Windows 2012 RC
FOOSECONDARY – Windows 2012 RC

Site: Hartford,USA Subnet: 172.168.0.0/16
Domain Controller/iSCSI Target Server: DRDC1 - Windows 2008 R2 SP1
DRPRIMARY - Windows 2012 RC
DRSECONDARY Windows 2012 RC

Site: Singapore Subnet: 100.0.0.0/8
Domain Controller: SGPDC1 - Windows 2008 R2 SP1










Heartbeat Nic's:

    As Heartbeat Nic's doesn't have Default gateway , only nodes in same Subnet will be able to communicate and not cross Subnet. Please see below I am logged on FOOPRIMARY node ping to DRPRIMARY AND DRSECONDARY on Heartbeat Nic's fails.



    To fix this we need to add static routes on each Node so that all nodes can communicate over Heartbeat Nic's.

Note: NETSH no more works , Microsoft has introduced a new Powershell cmdlet NEW-NetRoute http://technet.microsoft.com/en-us/library/hh826148.aspx

Adding Static route is 2 Step process:

1.Get-NetIPinterface cmdlet will get you Interface index, which is required to add NEW-NetRoute.


  1. NEW-NETRoute



We have successfully add the static route.




Testing on FOOPRIMARY to both DRPRIMARY and DRSECONDARY
Heartbeat Nic's SUCCESSFULL.






VERIFYING ISCSI DISK ACCESS ON ALL NODES:






I have added the iSCSI disk, formatted and marked the disk as E drive and Volume name as SAN.










So all the 4 Nodes can access the disk.




Configuring Clustering

Note: I am logged in as Domain Admin on the Server FOOPRIMARY







Note: In windows 2008 we skipped storage test by picking run only tests I selected. Windows 2012 we select all test, please see the link which explains more on storage test in Multi-site.




click on View Report








Note: I have 1 warnings, iSCSI disk having no Multiply paths, which can be safely ignored.
In case you want to review the report you can view it in c:\windows\cluster\reports folder.

Next step is to create the Cluster


If all the test has passed , clicking Finish in Validating will take your to create cluster.










Provide a cluster name and 2 Static IP Address from both Subnets.




Click Finish.

Note: quorum model we need to change to Node and File share.
More info please see this link on why we need to change
Failover Cluster Step-by-Step Guide: Configuring the Quorum in a Failover Cluster: http://technet.microsoft.com/en-us/library/cc770620(WS.10).asp
Requirements and Recommendations for a Multi-site Failover Cluster: 



CHANGING THE QUORUM:

Microsoft recommends a third location site for File share for any Multi-Site clustering, In my Lab I have a third site which is SINGAPORE site which has only1 DC SGPDC1 which will host the File share.

Note: Before you create File share please make sure Cluster Name computer object(FOOMULTICLS) and its DNS entries are all replicated to all the sites.


File share On SGPDC1:






Log into any of the Node, to be consistent I am logged on FOOPRIMARY:






I think this is welcome change from Microsoft, earlier if you had a 3 Node Multi-Site clustering you need to skip a node from voting in cluster , need to run a Powershell command. Now you will see we can pick which nodes to Vote in cluster failover in Advance quorum settings, more check this link

Note: File share witness can be set either using Add or change the quorum witness/ Advanced quorum.

I will go over setting up with Advance Quorum


I you need to skip any Node form voting you can do so here.


Note: You can leave the check box enabled if you want cluster to dynamically change the assignment of node votes, or you can deselect and you can manually select quorum if any Nodes fail and if you need to bring cluster online.More information see the below link on Dynamic Manage quorum settings.











So we have successfully changed the quorum settings.

Please keep a eye on the DNS entry for Cluster name:

INDIA SITE: 10.92.76.0 DC: FOODC1



HARTFORD,USA SITE: 172.168.0..0 DC: FOODRDC1




TESTING THE FAILOVER:






FAILING OVER TO DRPRIMARY:







So we have successfully failed over the Cluster to DRPRIMARY node.



So we have successfully failed over to all the Nodes of the cluster.

How did it work: If you look at dependency option, cluster name has added a OR clause which allows the cluster to be online even if one IP address is online.





LETS CHECK THE DNS ENTRY:


SITE: INDIA


SITE: HARTFORD,USA




So cluster has updated the FOOMULTICLS DNS record from 10.92.76.36 to 172.168.0.36.




If you have seen my other posting on 2 Node MULTI-SITE clustering on Windows 2008 R2 you would know that we have 2 problem only1 IP getting registered and DNS TTL, hopefully IP registration will be fixed in final release of windows 2012.DNSTTL is optional settings change depending on your Network.



Powershell command on any Node and failover:

Get-Clusterresource "cluster name" | Set-Clusterparameter RegisterallprovidersIP 1
Get-Clusterresource "cluster name" | Set-Clusterparameter HostrecordTTL 300



This ends the configuration and testing of MULTI-SITE Failover cluster on 4 Nodes.
When I started this posting I didn't think of adding SQL cluster, but decided to do it. So in the Part 2 I will go over setting up SQL 2012 cluster on 4 Node as this version of SQL supports cross Subnet clustering. Also in part 3 I will go over different scenarios on a Node failure.





2 comments:

  1. great work..you can also configure ping drop or latency of ping for your cluster as you know if 5 heartbeat ping drop the cluster will do failver..
    (may be i did not explain it correctely)

    ReplyDelete
  2. you can configure like not 5 ping but 20 pings drop then failover occur..and you have to do it through Shell

    ReplyDelete