Abstract
A widely used "separate-cluster" architecture for datacenters uses a server cluster, sometimes called a "storage array", that implements highly available shared-storage volumes, and a separate server cluster running application workloads that access those volumes. An alternative "combined-cluster" architecture, sometimes called "hyperconverged", uses a single server cluster in which every node can participate in implementing highly available shared-storage volumes, and also run application workloads that access those volumes. For each of these architectures, there are many commercially available implementations. Using technical (not marketing) language, and without naming specific products, this tutorial evaluates key strengths and weaknesses of each approach, including some practical issues that are often omitted in such evaluations. Learning Objectives Strengths and weaknesses of separate vs. combined clusters Best use cases for each architecture Future directions: scale-out infrastructure for apps and shared storage