2022-01-29 23:43:22 +03:00
|
|
|
# Vitastor
|
2020-09-17 23:07:50 +03:00
|
|
|
|
2021-02-12 00:06:07 +03:00
|
|
|
[Читать на русском](README-ru.md)
|
|
|
|
|
2020-09-17 23:07:50 +03:00
|
|
|
## The Idea
|
|
|
|
|
2022-01-29 23:43:22 +03:00
|
|
|
Make Clustered Block Storage Fast Again.
|
|
|
|
|
2024-03-11 00:42:33 +03:00
|
|
|
Vitastor is a distributed block and file SDS, direct replacement of Ceph RBD and CephFS,
|
|
|
|
and also internal SDS's of public clouds. However, in contrast to them, Vitastor is fast
|
|
|
|
and simple at the same time. The only thing is it's slightly young :-).
|
2022-01-29 23:43:22 +03:00
|
|
|
|
|
|
|
Vitastor is architecturally similar to Ceph which means strong consistency,
|
|
|
|
primary-replication, symmetric clustering and automatic data distribution over any
|
|
|
|
number of drives of any size with configurable redundancy (replication or erasure codes/XOR).
|
|
|
|
|
2023-07-09 12:45:11 +03:00
|
|
|
Vitastor targets primarily SSD and SSD+HDD clusters with at least 10 Gbit/s network,
|
|
|
|
supports TCP and RDMA and may achieve 4 KB read and write latency as low as ~0.1 ms
|
2022-01-29 23:43:22 +03:00
|
|
|
with proper hardware which is ~10 times faster than other popular SDS's like Ceph
|
|
|
|
or internal systems of public clouds.
|
|
|
|
|
2024-09-05 02:00:14 +03:00
|
|
|
Vitastor supports QEMU, NBD, NFS protocols, OpenStack, OpenNebula, Proxmox, Kubernetes drivers.
|
2022-01-29 23:43:22 +03:00
|
|
|
More drivers may be created easily.
|
|
|
|
|
2024-09-15 00:43:21 +03:00
|
|
|
Read more details in the documentation. You can start from here: [Quick Start](docs/intro/quickstart.en.md).
|
2022-01-29 23:43:22 +03:00
|
|
|
|
|
|
|
## Talks and presentations
|
|
|
|
|
|
|
|
- DevOpsConf'2021: presentation ([in Russian](https://vitastor.io/presentation/devopsconf/devopsconf.html),
|
|
|
|
[in English](https://vitastor.io/presentation/devopsconf/devopsconf_en.html)),
|
|
|
|
[video](https://vitastor.io/presentation/devopsconf/talk.webm)
|
|
|
|
- Highload'2022: presentation ([in Russian](https://vitastor.io/presentation/highload/highload.html)),
|
|
|
|
[video](https://vitastor.io/presentation/highload/talk.webm)
|
|
|
|
|
|
|
|
## Documentation
|
|
|
|
|
|
|
|
- Introduction
|
|
|
|
- [Quick Start](docs/intro/quickstart.en.md)
|
|
|
|
- [Features](docs/intro/features.en.md)
|
|
|
|
- [Architecture](docs/intro/architecture.en.md)
|
|
|
|
- [Author and license](docs/intro/author.en.md)
|
|
|
|
- Installation
|
|
|
|
- [Packages](docs/installation/packages.en.md)
|
|
|
|
- [Proxmox](docs/installation/proxmox.en.md)
|
2024-08-31 14:16:33 +03:00
|
|
|
- [OpenNebula](docs/installation/opennebula.en.md)
|
2022-01-29 23:43:22 +03:00
|
|
|
- [OpenStack](docs/installation/openstack.en.md)
|
|
|
|
- [Kubernetes CSI](docs/installation/kubernetes.en.md)
|
|
|
|
- [Building from Source](docs/installation/source.en.md)
|
|
|
|
- Configuration
|
|
|
|
- [Overview](docs/config.en.md)
|
|
|
|
- Parameter Reference
|
|
|
|
- [Common](docs/config/common.en.md)
|
|
|
|
- [Network](docs/config/network.en.md)
|
2023-10-28 13:39:48 +03:00
|
|
|
- [Client](docs/config/client.en.md)
|
2022-01-29 23:43:22 +03:00
|
|
|
- [Global Disk Layout](docs/config/layout-cluster.en.md)
|
|
|
|
- [OSD Disk Layout](docs/config/layout-osd.en.md)
|
|
|
|
- [OSD Runtime Parameters](docs/config/osd.en.md)
|
|
|
|
- [Monitor](docs/config/monitor.en.md)
|
|
|
|
- [Pool configuration](docs/config/pool.en.md)
|
|
|
|
- [Image metadata in etcd](docs/config/inode.en.md)
|
|
|
|
- Usage
|
|
|
|
- [vitastor-cli](docs/usage/cli.en.md) (command-line interface)
|
2022-08-22 00:31:30 +03:00
|
|
|
- [vitastor-disk](docs/usage/disk.en.md) (disk management tool)
|
2022-01-29 23:43:22 +03:00
|
|
|
- [fio](docs/usage/fio.en.md) for benchmarks
|
|
|
|
- [NBD](docs/usage/nbd.en.md) for kernel mounts
|
|
|
|
- [QEMU and qemu-img](docs/usage/qemu.en.md)
|
2024-03-11 00:42:33 +03:00
|
|
|
- [NFS](docs/usage/nfs.en.md) clustered file system and pseudo-FS proxy
|
2024-03-31 01:15:46 +03:00
|
|
|
- [Administration](docs/usage/admin.en.md)
|
2022-01-29 23:43:22 +03:00
|
|
|
- Performance
|
|
|
|
- [Understanding storage performance](docs/performance/understanding.en.md)
|
|
|
|
- [Theoretical performance](docs/performance/theoretical.en.md)
|
|
|
|
- [Example comparison with Ceph](docs/performance/comparison1.en.md)
|
2024-03-23 18:27:08 +03:00
|
|
|
- [Newer benchmark of Vitastor 1.3.1](docs/performance/bench2.en.md)
|
2020-09-17 23:07:50 +03:00
|
|
|
|
|
|
|
## Author and License
|
|
|
|
|
|
|
|
Copyright (c) Vitaliy Filippov (vitalif [at] yourcmc.ru), 2019+
|
|
|
|
|
2021-03-03 01:35:21 +03:00
|
|
|
Join Vitastor Telegram Chat: https://t.me/vitastor
|
2020-09-17 23:07:50 +03:00
|
|
|
|
|
|
|
All server-side code (OSD, Monitor and so on) is licensed under the terms of
|
2021-02-06 01:26:07 +03:00
|
|
|
Vitastor Network Public License 1.1 (VNPL 1.1), a copyleft license based on
|
2020-09-17 23:07:50 +03:00
|
|
|
GNU GPLv3.0 with the additional "Network Interaction" clause which requires
|
|
|
|
opensourcing all programs directly or indirectly interacting with Vitastor
|
2021-02-06 01:26:07 +03:00
|
|
|
through a computer network and expressly designed to be used in conjunction
|
|
|
|
with it ("Proxy Programs"). Proxy Programs may be made public not only under
|
|
|
|
the terms of the same license, but also under the terms of any GPL-Compatible
|
|
|
|
Free Software License, as listed by the Free Software Foundation.
|
2020-09-17 23:07:50 +03:00
|
|
|
This is a stricter copyleft license than the Affero GPL.
|
|
|
|
|
2021-02-06 01:26:07 +03:00
|
|
|
Please note that VNPL doesn't require you to open the code of proprietary
|
|
|
|
software running inside a VM if it's not specially designed to be used with
|
|
|
|
Vitastor.
|
|
|
|
|
2020-09-17 23:07:50 +03:00
|
|
|
Basically, you can't use the software in a proprietary environment to provide
|
|
|
|
its functionality to users without opensourcing all intermediary components
|
|
|
|
standing between the user and Vitastor or purchasing a commercial license
|
|
|
|
from the author 😀.
|
|
|
|
|
|
|
|
Client libraries (cluster_client and so on) are dual-licensed under the same
|
2021-02-06 01:26:07 +03:00
|
|
|
VNPL 1.1 and also GNU GPL 2.0 or later to allow for compatibility with GPLed
|
2020-09-17 23:07:50 +03:00
|
|
|
software like QEMU and fio.
|
|
|
|
|
2021-02-06 01:26:07 +03:00
|
|
|
You can find the full text of VNPL-1.1 in the file [VNPL-1.1.txt](VNPL-1.1.txt).
|
2020-09-17 23:07:50 +03:00
|
|
|
GPL 2.0 is also included in this repository as [GPL-2.0.txt](GPL-2.0.txt).
|