Overview
Polystack Block Storage delivers persistent block volumes to compute instances through a distributed service architecture. The service separates its API layer, scheduling logic, and backend drivers — enabling flexible backend configurations, horizontal scaling, and multi-backend deployments where different hardware tiers serve distinct workload categories.Architecture Diagram
Principal Components
Request Flow
Volume Create
Volume Attach
Backend Driver Model
The backend driver is the component that communicates with the physical or virtual storage system. Polystack Block Storage supports multiple drivers that can be active simultaneously:Multi-Backend Deployment
Polystack Block Storage supports multiple concurrent backends. The scheduler filters backends using configurable filters and selects the optimal backend using a weighting algorithm:
The
CapacityWeigher (default) prioritizes backends with more free capacity to spread
load across the cluster.
High Availability
In a high-availability deployment:- The Block Storage API runs on all control plane nodes, load-balanced via the VIP
- The Scheduler runs on all control plane nodes (active-active)
- The Volume Service runs on each storage node (active-active per backend)
- The Database uses Galera multi-master replication across control plane nodes
- The Backup Service runs on one or more dedicated nodes
the deployment console automatically configures high-availability service placement based on your
cluster topology. Manual service placement is not required for standard deployments.
Next Steps
Storage Backends
Configure distributed storage, LVM, and NFS backend drivers
Volume Types & QoS
Create volume types and enforce I/O quality-of-service limits
Storage Tiers
Configure NVMe, SSD, and HDD tier mappings for multi-tier deployments
Admin Guide
Return to the Block Storage administration overview
