61 lines
2.0 KiB
Markdown
61 lines
2.0 KiB
Markdown
|
---
|
||
|
title: Features
|
||
|
weight: 1
|
||
|
---
|
||
|
|
||
|
Vitastor is currently a pre-release and it still misses some important features.
|
||
|
However, the following is implemented:
|
||
|
|
||
|
- Basic part: highly-available block storage with symmetric clustering and no SPOF
|
||
|
- Performance ;-D
|
||
|
- Multiple redundancy schemes: Replication, XOR n+1, Reed-Solomon erasure codes
|
||
|
based on jerasure library with any number of data and parity drives in a group
|
||
|
- Configuration via simple JSON data structures in etcd (parameters, pools and images)
|
||
|
- Automatic data distribution over OSDs, with support for:
|
||
|
- Mathematical optimization for better uniformity and less data movement
|
||
|
- Multiple pools
|
||
|
- Placement tree, OSD selection by tags (device classes) and placement root
|
||
|
- Configurable failure domains
|
||
|
- Recovery of degraded blocks
|
||
|
- Rebalancing (data movement between OSDs)
|
||
|
- Lazy fsync support
|
||
|
- Per-OSD and per-image I/O and space usage statistics in etcd
|
||
|
- Snapshots and copy-on-write image clones
|
||
|
- Write throttling to smooth random write workloads in SSD+HDD configurations
|
||
|
- RDMA/RoCEv2 support via libibverbs
|
||
|
|
||
|
CLI (vitastor-cli):
|
||
|
- Pool listing and space stats (df)
|
||
|
- Image listing, space and I/O stats (ls)
|
||
|
- Image and snapshot creation (create, modify)
|
||
|
- Image removal and snapshot merge (rm, flatten, merge, rm-data)
|
||
|
|
||
|
Plugins and packaging:
|
||
|
- Debian and CentOS packages
|
||
|
- Generic user-space client library
|
||
|
- Native QEMU driver
|
||
|
- Loadable fio engine for benchmarks
|
||
|
- NBD proxy for kernel mounts
|
||
|
- CSI plugin for Kubernetes
|
||
|
- OpenStack support: Cinder driver, Nova and libvirt patches
|
||
|
- Proxmox storage plugin and packages
|
||
|
|
||
|
## Roadmap
|
||
|
|
||
|
The following features are planned for the future:
|
||
|
|
||
|
- Better OSD creation and auto-start tools
|
||
|
- Other administrative tools
|
||
|
- Web GUI
|
||
|
- OpenNebula plugin
|
||
|
- iSCSI proxy
|
||
|
- Simplified NFS proxy
|
||
|
- Multi-threaded client
|
||
|
- Faster failover
|
||
|
- Scrubbing without checksums (verification of replicas)
|
||
|
- Checksums
|
||
|
- Tiered storage (SSD caching)
|
||
|
- NVDIMM support
|
||
|
- Compression (possibly)
|
||
|
- Read caching using system page cache (possibly)
|