Problem solve Get help with specific problems with your technologies, process and projects.

Guidelines for controlling clustering

This tip outlines different approaches, implementations and the factors to consider to effectively manage clustered resources.

What you will learn from this tip: Learn different approaches, implementations and the factors to consider to effectively manage clustered resources.

Clustering can be applied to storage systems (SAN, NAS and CAS object-based) as well as application, database, file systems and servers. It's not a new technology, having been around for a couple of decades in various implementations. However, with the availability of easier-to-implement and affordable open technology, clustering has grown in popularity and adoption. Moving forward, clustering will become more popular for servers and storage, eventually morphing into what is being generically referred to as "grids."

Related information

Clustering for high availability

Using clusters to ensure failover

Non-distributed clustering

Clusters have different characteristics, ranging from loosely coupled, using standard off-the-shelf components to tightly-integrated products with propriety components. Clusters provide various levels of transparency and fault containment ranging from simple active/passive, to active/active. One of the differences in the amount of time and complexity in managing a cluster is how it is designed, implemented and integrated into your environment. Clusters can be shared-nothing (no resources shared across the nodes), shared-something (supporting some level of failover) or shared-everything. Clusters can also be homogeneous (all the same operating systems (OSs) and servers) or heterogeneous (different servers with same OS).

For some environments, clustering is needed to support resource scaling including capacity and performance. For other environments, clustering is needed for higher availability, fault containment, business continuance and disaster recovery. Some environments use clustering technologies for both availability and scaling. Clusters can also be used to isolate applications from component failures locally or remotely. Clusters can be big or small, depending what they are being used for.

For storage systems, clustering provides scaling for reliability (availability and redundancy) and increase storage resources (performance and capacity) beyond a single device. A side benefit of scaling, using a clustered approach can be simplified storage management via consolidation of multiple smaller storage systems.

Most storage vendors support dual controllers or storage processors to provide redundancy for their storage, including block- and file-based products. Some vendors utilize active/active configurations where controllers or storage processors are actively providing failover. Other vendors configure their products to be active/passive with one controller or processor active and the other in standby mode. Some vendors use creative marketing to refer to storage systems with dual controllers, dual storage processors or redundant NAS filers as clustered storage systems. Some storage systems utilize loose clustering, which is also known as peer-based with TCP/IP and Ethernet, InfiniBand or Fibre Channel, while others use proprietary, tightly coupled approaches.

When it comes to storage-related clusters, consider the following items:

  • Look for cluster products that are transparent and easy for you to manage
  • A good cluster should be transparent including the configuration and failover
  • Understand cluster overhead including lock management and synchronization
  • Take care to avoid undesirable split cluster conditions known as partitioning
  • Clustering is a good complimentary technology to mirroring and replication
  • HBA path failover and load-balancing managers are complimentary to clusters
  • Leverage cluster management and monitoring tools with open interfaces

Regardless of what your definition is, clustering is an effective approach to enable scaling, availability and consolidation. Clustering is also a complimentary technology to replication as part of an overall data and information protection strategy. Understand why you need to deploy a clustered approach and what applications and service characteristics you are looking to address. Clustering may not be for everyone; however, it is a great approach to scale availability, resources or both.

Do you know about…

Clustering coming to NAS?

Using iSCSI for clustering?

About the author: Greg Schulz is founder and senior analyst with the IT infrastructure analyst and consulting firm StorageIO. Greg is also the author and illustrator of "Resilient Storage Networks" (Elsevier) and has contributed material to "Storage" magazine and other TechTarget venues.

Dig Deeper on SAN technology and arrays

Start the conversation

Send me notifications when other members comment.

Please create a username to comment.