Page tree
Skip to end of metadata
Go to start of metadata
The full text of this page is only available to our customers.

Please login or sign up. You may also need to provide your support ID if you have not already done so.

Product Name
Cluster Server
Publisher Page
Clustering and Availability Software
TKU 2021-05-1
More Information
Publisher Link

Product Description

A Windows Server Failover Cluster (WSFC) is a group of independent servers that work together to increase the availability of applications and services.

SQL Server takes advantage of WSFC services and capabilities to support Always On availability groups and SQL Server Failover Cluster Instances.

SQL Server AlwaysOn Component Context Diagram

Pattern Details

Known Versions

As for Microsoft Windows

Supported Platforms

The pattern identifies instances of Microsoft Cluster Server running on the Windows platform.

Pattern Triggers

Trigger NodeCondition
Discovered Processmatches regex '(?i)\bclussvc\.exe'

Simple Identification Mappings

Windows Cluster Resource Monitorregex'(?i)\bresrcmon\.exe$'
Windows Cluster Serviceregex'(?i)\bclussvc\.exe$'

Model Overview

Modeled nodes

Node kindNode typeNode keyComments
SoftwareInstanceMicrosoft Cluster Server<cluster_id>/<type>/<host.key>

Microsoft Cluster


"Main Cluster" contains all cluster members


Microsoft Failover Group


"Sub Clusters" contains only some cluster members.

It is modelled for ClusterServices which has len(possible_owners) < len(all_cluster_members) .

ClusterMember <member_id>/<cluster.key>used for modeling of MS Cluster Nodes



used for modeling of MS Cluster ResourceGroups
<resource.Name>/<service_node.key>used for modeling of MS Cluster Resources

Purpose of "Microsoft Failover Group" is to indicate that some resources (like SQL Server) are configured to run and failover only on some subset of cluster nodes.

Example: 'Microsoft Cluster'/'Microsoft Failover Group' Cluster and clustered 'MS SQL Server' SI nodes

Example: 'Microsoft Cluster' Cluster node

Example: MS Cluster and SQL Server Availability Group

Example: Cluster, ClusterServices and ClusterResources

Pattern Logic Details


As Microsoft Cluster Server software is part of certain editions of Microsoft Windows Server OS, its version is tied to the version of the OS itself. The Microsoft Cluster Server pattern therefore derives the version of Cluster Server SI from the OS version as set on the scanned Host node

Cluster_name extraction

Cluster ID information is extracted from the registry key: 'HKEY_LOCAL_MACHINE\Cluster\ClusterInstanceID'

Cluster name is extracted from:

  • WMI Query: 'SELECT Name, Fqdn from MSCluster_Cluster' (namespace='root\MSCluster')

  • Registry query: 'HKEY_LOCAL_MACHINE\Cluster\ClusterName'

If the cluster_name attribute is not obtained then cluster_name is set to the cluster_id value

Relationship Creation

Once both the SoftwareInstance and Cluster nodes have been created the pattern then creates two different relationships.

First a SoftwareService relationship is created using the SoftwareInstance as the ServiceProvider and the Cluster as the Service.

Secondly a HostContainment relationship is created between the Cluster (HostContainer) and the Host (ContainedHost).

These two relationships allow for the Cluster service to be correctly modeled in the Discovery UI.

Cluster Awareness in BMC Discovery 11.x series

For BMC Discovery 11.x, cluster awareness has been incorporated into the pattern module.

After performing additional WMI queries to obtain details of MSCluster Nodes, ResourceGroups and Resources, the pattern will create a number of ClusterMember, ClusterService and ClusterResource nodes for the Microsoft Cluster Server being modelled. Note that "Available Storage" ClusterService nodes will never have ClusterResources.

The ClusterService nodes will have a specific type attribute if BMC Discovery detects they are one of the following services, otherwise they will have no type attribute:

  • Generic Application
  • Generic Service
  • IBM MQSeries MSCSSELECT Name, Description, State, GroupType FROM MSCluster_ResourceGroupSELECT Name, Description, State, GroupType FROM MSCluster_ResourceGroup
  • SQL Server

Cluster detials extraction

PurposeWMI requestComment
ClusterMembers nodes

SELECT Name, Description, State from MSCluster_Node (for os_version="Server 2003"only)

SELECT Name, Description, NodeInstanceID, State from MSCluster_Node

SELECT GroupComponent, PartComponent, __RELPATH FROM MSCluster_NodeToNetworkInterface
SELECT IPv4Addresses, IPv6Addresses, __RELPATH FROM MSCluster_NetworkInterface
ClusterServices nodes

SELECT Name, Description, State FROM MSCluster_ResourceGroup (for os_version="Server 2003" nd 2008)

SELECT Name, Description, State, GroupType FROM MSCluster_ResourceGroup

linkage between ClusterResources and ClusterMembers SELECT PartComponent, GroupComponent, __RELPATH FROM MSCluster_NodeToActiveGroup
linkage between ClusterResources and ClusterServicesSELECT GroupComponent, PartComponent, __RELPATH FROM MSCluster_ResourceGroupToResource
ClusterResource nodesSELECT Name, Description, Type, PrivateProperties, __RELPATH FROM MSCluster_Resource
<possible_owner> attributeSELECT * FROM MSCluster_ResourceToPossibleOwner

Information Sources

The Cluster Server Wikipedia page has some information on Microsoft Cluster Server as does this Microsoft Technet article.

Created by: Rebecca Shalfield 27 November 2007
Updated by: Nikola Vukovljak 22 Sep 2011
Reviewed by: [Vineet Deshpande] 4 Oct 2011

The full text of this page is only available to our customers.

Please login or sign up. You may also need to provide your support ID if you have not already done so.