Overview
Xloud Block Storage supports both thin and thick provisioning models. Thin provisioning allocates storage capacity on demand — physical space is consumed only as data is written, not when the volume is created. Thick provisioning reserves the full volume capacity immediately at creation time. The provisioning behavior is controlled by the backend driver and the scheduler overcommit configuration.Thin vs Thick Comparison
| Attribute | Thin Provisioning | Thick Provisioning |
|---|---|---|
| Space allocated at creation | No — space consumed as data is written | Yes — full size reserved immediately |
| Overcommit support | Yes — allocate more than physical capacity | No — bounded by actual available space |
| Performance | Comparable to thick once space is allocated | Predictable from the start |
| Risk | Out-of-space if usage exceeds physical capacity | No overcommit risk |
| Supported backends | Ceph RBD, LVM thin, NetApp, Pure Storage, HPE, Dell | LVM (default), some SAN arrays |
| Recommended for | Multi-tenant clouds, variable-usage workloads | Latency-sensitive databases, predictable workloads |
Backend Provisioning Support
Ceph RBD — thin by default
Ceph RBD — thin by default
Ceph RBD images are sparse by design. When a volume is created, no physical storage is consumed until data is written. No configuration is required to enable thin provisioning on the Ceph backend.
cinder.conf — Ceph RBD backend
LVM — configure thin pools
LVM — configure thin pools
LVM uses thick provisioning by default. To enable thin provisioning, create a thin pool in the volume group before configuring Cinder, then set Step 2: Configure CinderStep 3: Apply the configurationStep 4: Verify thin volumes are createdVolumes created from this backend will show
lvm_type = thin in the backend section.Step 1: Create the thin poolCreate LVM thin pool
cinder.conf — LVM thin backend
Deploy block storage configuration
Check LVM thin volume allocation
Twi in the Attr column, confirming thin layout.NetApp ONTAP — FlexVol thin provisioning
NetApp ONTAP — FlexVol thin provisioning
NetApp ONTAP supports thin provisioning through FlexVol volumes. Set
netapp_lun_space_reservation = disabled to enable thin provisioning on the LUN.cinder.conf — NetApp thin provisioning
Pure Storage — thin by default
Pure Storage — thin by default
Pure Storage FlashArray volumes are thin-provisioned by default. The array reports the provisioned size to the scheduler, not physical consumption. No additional configuration is needed.
cinder.conf — Pure Storage thin provisioning
Scheduler Overcommit Configuration
The Cinder scheduler usesmax_over_subscription_ratio to determine how much capacity to advertise to tenants above physical availability. This applies to backends that report thin_provisioning_support = True.
cinder.conf — scheduler overcommit settings
| Parameter | Description | Default |
|---|---|---|
max_over_subscription_ratio | Maximum ratio of provisioned capacity to physical capacity | 20.0 |
reserved_percentage | Percentage of backend capacity reserved and excluded from scheduling | 0 |
Monitor Overcommit and Capacity
- Dashboard
- CLI
Navigate to Admin → Volume → Volume Services to view backend capacity statistics. The Free Capacity and Total Capacity columns show the physical pool state reported by each backend driver.For provisioned-vs-physical overcommit visibility, use the XIMP monitoring dashboard to track Cinder backend pool utilization over time.
Next Steps
External Storage Integration
Connect to enterprise storage backends including NetApp, Pure Storage, and Dell
Storage Backends
Configure and register backend drivers with the scheduler
Volume Types Admin
Expose provisioning mode to tenants through volume type extra specs
Storage Tiers
Configure multi-tier storage with NVMe, SSD, and HDD backends