Skip to main content

Overview

The CRUSH map defines the hierarchical topology of the storage cluster — how nodes, racks, and rooms are structured, and how data is distributed across failure domains. Correct CRUSH configuration ensures data is spread across independent failure domains for maximum availability.
Administrator Access Required — This operation requires the admin role. Contact your Xloud administrator if you do not have sufficient permissions.
Prerequisites
  • Administrator credentials with the admin role
  • SSH access to a cluster management node
  • Understanding of your physical infrastructure topology (host, rack, room layout)

CRUSH Hierarchy

The CRUSH hierarchy places storage devices into a tree of buckets. Data placement rules traverse this tree to select OSDs from distinct failure domains.

Viewing the CRUSH Map

View OSD tree with device classes
This shows the current hierarchy and the device class assigned to each OSD.

Device Class Rules

Device class CRUSH rules route data to a specific storage tier. Create one rule per device class to enable multi-tier storage.

Create a device class rule

Create SSD device class rule
Create NVMe device class rule
Create HDD device class rule
Valid device classes: nvme, ssd, hdd.

Assign rule to a pool

Assign CRUSH rule to pool
In a single-device-class cluster (all SSD), changing a pool’s CRUSH rule from replicated_rule to replicated_rule_ssd involves zero data movement — data is already on the correct devices.

Verify rule assignment

List rules and their pools
Show pool CRUSH rule
Pool reports the new CRUSH rule name and OSD tree shows data on the correct device class.

Managing OSD Device Classes

OSDs are automatically classified by device type at deployment. Verify or override classifications as needed.
List all OSD device classes
List OSDs in a specific class

Failure Domain Configuration

Configure CRUSH rules to spread replicas across independent failure domains. The failure domain level determines how many simultaneous failures the cluster can survive without data loss.
Create a rack-level failure domain rule
For most production deployments, host-level failure domains provide the right balance of protection and OSD count requirements. Use rack-level failure domains only when you have at least 3 physical racks in your deployment.

Next Steps

Pool Management

Create pools and assign the CRUSH rules you’ve just configured

Storage Tiers

Wire device class rules to Cinder volume types for multi-tier storage

Cluster Management

Monitor cluster health and manage OSDs in your configured topology

Troubleshooting

Diagnose CRUSH-related issues including imbalanced data distribution