Browse Definitions :
Definition

cluster

What is a cluster?

Clusters are typically defined as collections or groups of items with similar or different characteristics. The group or collection of items constitutes a cluster. The following are three definitions of a cluster related primarily to technology.

1. Enterprise computing. In a computer system, a cluster is a group of servers and other resources that act like a single system and enable high availability, load balancing and parallel processing. These systems can range from a two-node system of two personal computers (PCs) to a supercomputer that has a cluster architecture.

2. Personal computing. In PC storage technology, a cluster is the logical unit of file storage on a hard drive and is managed by the computer's OS. Any file stored on a hard disk takes up one or more clusters of storage. A file's clusters can be scattered among different locations on the drive. The clusters associated with a file are tracked in the hard disk's file allocation table (FAT). When a user reads a file, the entire file is obtained without the user knowing where it's stored.

Since a cluster is a logical rather than a physical unit – it's not built into the hard disk -- the size varies. The maximum number of clusters on a hard disk depends on the size of a FAT entry. DOS 4.0's FAT entries were 16 bits in length, allowing for a maximum of 65,536 clusters. Windows 95 OSR2 supported a 32-bit FAT entry, allowing enough clusters to support up to 2 TB of data, assuming the hard disk has enough capacity.

In a cluster, the smallest file -- or even a directory -- takes up the entire cluster. Thus, a 10 byte file will take up 2,048 bytes if that's the cluster size. Many OSes set the cluster size default at 4,096 bytes or 8,192 bytes. Until Microsoft Windows 95 OSR2, the largest hard disk that could be supported in a single partition was 512 MB. Larger hard disks could be divided into up to four partitions, each with a FAT capable of supporting 512 MB of clusters.

3. Terminals and workstations. In some products, a cluster is a group of terminals or workstations attached to a common control unit.

Applications and benefits of clustering

Clustering apps, whether resident in the OS or as a separate tool, support many important user requirements, and fall into the following categories:

High-performance computing

High performance computing (HPC) is achieved by using the performance capabilities of multiple processing nodes in the cluster and adding devices to a system. Clustering software ensures added resources meet user requirements for high speed and storage capacity.

Diagram of high-performance computing cluster using Hadoop
Many businesses deploy high-performance computing infrastructure, using clusters of inexpensive, tightly connected computers or nodes paired with a distributed processing software framework, such as Hadoop.

High availability

High availability of processor and storage resources -- also called fault tolerance -- ensures that a loss of or disruption to a processing or storage element in a computer cluster won't disrupt overall production. Members of the cluster can be designated as backup if another device fails. When this happens, cluster failover software quickly shifts processing or storage to the backup or standby system.

High-availability CPU and storage capabilities boost redundancy across a cluster, while operational reliability relies on all cluster members as needed. Clustering multiple devices ensures availability; enough resources to limit the negative effects of a disruption provides resilience.

Load balancing

Load balancing spreads processing activities across cluster nodes to optimize performance and spread workloads evenly across devices. Load balancing clusters improves performance and use among single nodes in a cluster. Processing activities spread across multiple systems achieves active/active processing and economies of scale.

Resource scalability

Computing and storage are expanded or scaled in two ways:

  • vertically, where more storage or processing is added to the primary device; or
  • horizontally, where more devices are added to the cluster itself.

Each approach is used for different user applications. Clustering software accommodates both types of scaling.

Container management

Containers combine all the resources needed to run an application into a single package. Clustering software is used to manage individual containers as if they were members of a cluster.

Diagram of a Kubernetes cluster
In a Kubernetes cluster, nodes contribute varying amounts of compute and memory resources.

Kubernetes open source software facilitates the preparation, organization, scaling and deployment of container-based applications. Kubernetes clusters containing multiple containers, or pods, handle functions such as resource management, load sharing, fault tolerance and security requirements.

Managing cloud resources in clusters

Clustering isn't limited to on-premises data centers. It can be used with cloud computing and storage resources. Clusters are extended beyond the data center into a cloud provider's resources, with a set of storage and compute nodes implemented on VMs.

Clustering plays a key role in high-availability computing. Find out about the three best practices required for high-availability computing.

This was last updated in September 2022

Continue Reading About cluster

Networking
  • firewall as a service (FWaaS)

    Firewall as a service (FWaaS), also known as a cloud firewall, is a service that provides cloud-based network traffic analysis ...

  • private 5G

    Private 5G is a wireless network technology that delivers 5G cellular connectivity for private network use cases.

  • NFVi (network functions virtualization infrastructure)

    NFVi (network functions virtualization infrastructure) encompasses all of the networking hardware and software needed to support ...

Security
  • virus (computer virus)

    A computer virus is a type of malware that attaches itself to a program or file. A virus can replicate and spread across an ...

  • Certified Information Security Manager (CISM)

    Certified Information Security Manager (CISM) is an advanced certification that indicates that an individual possesses the ...

  • cryptography

    Cryptography is a method of protecting information and communications using codes, so that only those for whom the information is...

CIO
  • B2B (business to business)

    B2B (business-to-business) is a type of commerce involving the exchange of products, services or information between businesses, ...

  • return on investment (ROI)

    Return on investment (ROI) is a crucial financial metric investors and businesses use to evaluate an investment's efficiency or ...

  • big data as a service (BDaaS)

    Big data as a service (BDaS) is the delivery of data platforms and tools by a cloud provider to help organizations process, ...

HRSoftware
  • talent acquisition

    Talent acquisition is the strategic process an organization uses to identify, recruit and hire the people it needs to achieve its...

  • human capital management (HCM)

    Human capital management (HCM) is a comprehensive set of practices and tools used for recruiting, managing and developing ...

  • Betterworks

    Betterworks is performance management software that helps workforces and organizations to improve manager effectiveness and ...

Customer Experience
  • martech (marketing technology)

    Martech (marketing technology) refers to the integration of software tools, platforms, and applications designed to streamline ...

  • transactional marketing

    Transactional marketing is a business strategy that focuses on single, point-of-sale transactions.

  • customer profiling

    Customer profiling is the detailed and systematic process of constructing a clear portrait of a company's ideal customer by ...

Close