Clustering

Clustering Concepts, plan & Deployment.

Cluster-Aware Applications
Q. What is a Cluster Aware Application?
A. A cluster-aware application is an application that calls the cluster APIs to determine the context under which it is running (such as the virtual server name etc.) and can failover between nodes for high availability.
Can applications that were not written for a cluster be made highly available?
Yes, Server clusters provide a plug-in environment that allows resource dlls to provide the necessary control and health monitoring functions to make existing applications highly available.
Server clusters provide a set of generic resource types that can be used to make existing applications failover in a cluster. In Windows 2000 there are two generic resource types:
Generic application
allows any application to be started, stopped and monitored by the cluster service
Generic Service
allows an existing Windows Service to be started, stopped and monitored.
These generic services provide very rudimentary health monitoring (for example, is the process that was started still a valid process on the system). It does not check that the application is servicing requests since this requires specific knowledge of the application. The generic resources can be used to make applications failover relatively quickly; however, to provide a more appropriate health check, Microsoft recommends that you build an application-specific resource dll.
In Windows Server 2003, we have provided an additional resource type (Generic Script) that allows the start/stop and health monitoring functions to be implemented as scripts rather than using C or C++. This makes the job of building application-specific resource plug-ins much more manageable and easier.
Q. How do I build a cluster-aware application?
A. Server clusters provides a rich API set that allows applications to recognize and utilize the cluster environment. These APIs are fully documented in the Platform SDK.
Q. Should I use the Generic Service or Generic Application resource to make my application highly available?
A. The generic services provide very rudimentary health monitoring (for example, is the process that was started still a valid process on the system). It does not check that the application is servicing requests since this requires specific knowledge of the application. The generic resources can be used to make applications failover relatively quickly; however, to provide a more appropriate health check, Microsoft recommends that you build an application-specific resource dll.
Q. Does Microsoft validate or logo software products that work with Server clusters?
A. Yes, Server clustering is an optional component of the Windows Advanced Server logo program. Applications can be logoed as working on a Server cluster.
Q. What Microsoft Applications are cluster-aware?
A. The following services shipped as part of the Windows operating system are cluster-aware:
DHCP Highly available DHCP server
MSDTC Highly available distributed transaction coordinator
IIS Highly available web server and FTP server*
File Share Highly available file share service and DFS
Message Queue Highly available MSMQ service
MSMQ triggers Highly available MSMQ trigger service (new for Windows Server 2003)
Print Spooler Highly available printer service
WINS Highly available WINS service
The following additional Microsoft Products are cluster-aware:
SQL Server 6.5, 7.0, 2000 and upwards
Exchange Server 5.5 and upwards
Services for Unix 3.0 and upwards
Q. Does Exchange 2000 support active/active clusters?
A. Yes, there are some caveats to supporting Exchange 2000 in an active/active configuration.
Q. Does SQL Server support active/active clusters?
A. Yes, SQL Server allows the following:
Multiple nodes in a cluster hosting different databases. Each database can be failed over independently.
Multiple nodes in a cluster hosting partitions of a single database using database views to tie the different instances into a single logical database from a client perspective.
Q. Where do I find information about writing cluster-aware applications?
A. The cluster concepts and APIs are fully documented in the Platform SDK. In addition, there are several examples in the Platform SDK that can be used to demonstrate Server cluster integration.
Q. Is Services for Macintosh (SFM) supported in a Server cluster?
A. No, Services for Macintosh is not supported in a Server cluster.
Q. Is Services for Unix (SFU) supported in a Server cluster?
A. Yes, Services for Unix supports highly available NFS shares in SFU 3.0.
Applies To: Windows Server 2003, Windows Server 2003 R2, Windows Server 2003 with SP1, Windows Server 2003 with SP2.

Cluster admin console access:

      • In windows server 2003, local admin also can access cluster admin console access along with domain admin.
      • Post versions of Windows 2003 domain admin or delegated domain user can access cluster admin console.

Windows Clustering types:

  • Fail-over clustering (Most of windows clusters are of Fail-over (SQL, exchange etc..)
  • NLB ( Web Server of using network load balancing, part of networking.

Understanding Quorum:

  • Quorum:- A complete database of quorum configuration. Which determines the number of failures that the cluster can sustain while still remaining online.
  • Voting towards quorum:- ‘quorum’, or a majority of voters, is based on voting algorithm where more than half of the voters must be online and able to communicate with each other.
  • Cluster must need more thanhalf of the total votes to achieve quorum & most of the time it is Odd number.
  • A voter can be a node & disk or file share . each node have 1 vote but 1 Disk Witness or 1 File Share Witness may have a vote in the cluster, but not multiple disks, multiple file shares nor any combination of the two
  • Recommendation:- Always have an odd number of total voters in the cluster.
  • Quorum types:-
    • Node Majority
      • Recommended for clusters with an odd number of nodes (3-nodes, 5-nodes, etc.
    • Node & Disk Majority
      • used when there is an even number of nodes in the cluster
    • Node & File Share Majority
      • used in multi-site clusters, generally in even number of nodes. single file server can host multiple FSWs for multiple clusters.
    • Disk only
      • This quorum type is not recommended as it has a single point of failure until unless storage vendor direction. last man standing

In general

  • Odd Number of Nodes – use Node Majority
  • Even Number of Nodes
    • Available Cluster Disks – use Node & Disk Majority
    • No Available Cluster Disk – use Node Majority

Other stuff:-

  1. MicroSoft Clustering Blog: http://blogs.msdn.com/b/clustering/
  2. Concepts: http://technet.microsoft.com/en-us/library/cc753362(v=ws.10).aspx
  3. Cluster Storage Functionality Event IDs: http://technet.microsoft.com/en-us/library/cc773411(WS.10).aspx
  4. Cluster Conf:http://blogs.technet.com/b/filecab/archive/2009/06/29/deploying-dfs-replication-on-a-windows-failover-cluster-part-i.aspx
  5. Windows Server 2008 Failover Clustering – Top Questions: http://msmvps.com/blogs/clusterhelp/archive/2007/06/05/teched-cluster-booth-top-questions.aspx
  6. Clustering Technet Forum: http://social.technet.microsoft.com/Forums/en-US/winserverClustering/threads
  7. Step by Step procecure:http://technet.microsoft.com/en-us/library/cc732035(v=ws.10).aspx
  8. Restore Scenarios of Cluster : http://kb.acronis.com/content/8504#scenario7
  9. Network Load Balance Clusters: NLB can configure to just send the traffic to an node if the other is not available. This kind of “smart” load balancing mechanisms can be implemented with advanced hardware load balances like a.e. F5 BIGIP. NLB does “only” check an heartbeat if the server is available from networking perspective and does not check if the service is running:heartbeat.A message that is sent at regular intervals by one computer on a Network Load Balancing cluster or server cluster to another computer within the cluster to detect communication failures.Network Load Balancing initiates convergence when it fails to receive heartbeat messages from another host or when it receives a heartbeat message from a new host.NLB – Technical Overview:http://technet.microsoft.com/en-us/library/bb742455.aspxNLB – Technical Reference:http://technet.microsoft.com/en-us/library/cc739506(WS.10).aspxNLB – How does it work:http://technet.microsoft.com/en-us/library/cc756878(WS.10).aspx
  10. NLB: http://robertsmit.wordpress.com/2008/12/06/how-to-windows-2008-nlb-part-1-2/
  11. 7 Best Practices for Physical Servers Hosting Hyper-V Roles http://technet.microsoft.com/en-us/magazine/dd744830.aspx
  12. Understanding Backup and Recovery Basics for a Failover Cluster: http://technet.microsoft.com/en-us/library/cc771973.aspx
  13. Backing up and Recovering the Failover Cluster Configuration Database: http://blogs.msdn.com/b/clustering/archive/2008/01/20/7176982.aspx
  14. Non-Authoritative restore of a failover cluster node in windows 2008 r2: http://social.technet.microsoft.com/Forums/en/winserverClustering/thread/790254cc-b63a-452d-8f0b-dcf6bbecf5f5
  15. Windows Print Cluster Best Practices for Windows Server 2003 to Windows Server 2008 R2:http://blogs.technet.com/b/askperf/archive/2010/11/12/windows-print-cluster-best-practices-for-windows-server-2003-to-windows-server-2008-r2.aspx
  16. Differences between Windows Server 2003 to Windows Server 2008 Clustering: http://msmvps.com/blogs/clusterhelp/archive/2007/06/05/teched-cluster-booth-top-questions.aspx
  17. Resource Hosting Subsystem (RHS): http://blogs.msdn.com/b/clustering/archive/2009/06/27/9806160.aspx
  18. Cluster logs (Win2K8):Even viewer>Applications and Services Logs>Microsoft>Windows> FailoverClustering(operational logs) or  FailoverClustering-Manager(Admin Logs)

Clustering 2012:Windows Server 2012 also enables you to save money on software, because Failover Clustering is now included in Windows Server 2012 Standard Edition. You’ll remember that prior to Windows Server 2012, Failover Clustering was only available in Windows Server Enterprise and Datacenter, which are considerably more expensive. By the way, also note that that Windows Server 2012 doesn’t include an Enterprise version – there are only Windows Server 2012 Standard and Enterprise to choose from. That should simplify your decision-making. Now that Failover Clustering is available in Standard Edition, even small and medium businesses can take advantage of virtualization and high availability of the feature without breaking the bank. The same info we can find in http://www.windowsnetworking.com/articles_tutorials/Whats-New-Windows-Server-2012-Failover-Clustering-Part1.html
19. Creating a Windows Server 2012 Failover Cluster: http://blogs.msdn.com/b/clustering/archive/2012/05/01/10299698.aspx

Other observed key notes about clustering:

      • The fail-over cluster feature is not available in Windows Web Server 2008/2003 and Windows Server 2008/2003 Standard.But Standard editions of 2012 support it.
      • SQL Server failover clustering cannot be installed where cluster nodes are domain controllers.
      • Cluster nodes are identical either member server or DCs.But DC are not recommended for clustering.  If they are, other servers will be the domain controllers in the domain that contains your failover cluster.
      • Cluster service:In Windows Server 2008 R2, there is no Cluster service account. Instead, the Cluster service automatically runs in a special context that provides the specific permissions and privileges necessary for the service (similar to the local system context, but with reduced privileges).
      • NIC teaming:In Win Server 2008 and Win Server 2008 R2, there are no restrictions that are associated with NIC Teaming and the Failover Clustering feature. In Win Server 2008, the new Microsoft Failover Cluster Virtual Adapter is compatible with NIC Teaming and allows it to be used on any network interface in a Failover Cluster.