Skip to content
Snippets Groups Projects
Verified Commit 4ba9e4db authored by anarcat's avatar anarcat
Browse files

more in-depth Garage review (team#40478)

The more I look at this project, the more interesting I find it.
parent 32510adb
No related branches found
No related tags found
No related merge requests found
......@@ -207,8 +207,6 @@ object storage options:
* [openio][] mentioned in one of the GitLab threads, not evaluated,
python, main website down: https://www.openio.io/
(`SSL_ERROR_NO_CYPHER_OVERLAP`)
* [garage][] is another alternative, rust, docker and binaries, not
in debian
in general: i think Ceph is a great option that ticks a lot of the boxes here:
......@@ -243,7 +241,6 @@ trash its own backups). we could build this with ZFS/BTRFS replication, again.
[minio]: https://min.io/
[openio]: https://www.openio.io/
[garage]: https://garagehq.deuxfleurs.fr/
## TODO: triage Ceph war stories from GitLab and SO
......@@ -357,6 +354,49 @@ some storm brewing there.
[this hacker news discussion]: https://news.ycombinator.com/item?id=32148007
[licensing dispute]: https://blocksandfiles.com/2023/03/26/we-object-minio-says-no-more-open-license-for-you-weka/
## Garage
[Garage][] is another alternative, written in Rust. They provide a
[Docker image](https://hub.docker.com/r/dxflrs/garage) and [binaries](https://garagehq.deuxfleurs.fr/download/). It is not packaged in Debian.
It was written from scratch by a french association called
[deuxfleurs.fr][]. The first release was funded by a [NLNet grant](https://nlnet.nl/project/Garage/)
and has been [renewed for a year in May 2023][].
[garage]: https://garagehq.deuxfleurs.fr/
[deuxfleurs.fr]: https://deuxfleurs.fr/
[renewed for a year in May 2023]: https://plume.deuxfleurs.fr/~/Deuxfleurs/NLnet%20soutient%20Garage%20%26%20Aerogramme
Features:
* apparently [faster than Minio on higher-latency links](https://garagehq.deuxfleurs.fr/documentation/design/benchmarks/) (100ms+)
* [Prometheus monitoring](https://garagehq.deuxfleurs.fr/documentation/cookbook/monitoring/) (see [metrics list](https://garagehq.deuxfleurs.fr/documentation/reference-manual/monitoring/)) and Grafana
dashboard
* [regular releases](https://git.deuxfleurs.fr/Deuxfleurs/garage/releases) with actual release numbers, although not yet
1.0 (current is 0.8.2, released 4 months ago as of June 2023)
Missing and downsides:
* possibly slower (-10%) than MinIO in raw bandwidth and IOPS,
according to [this self-benchmark](https://garagehq.deuxfleurs.fr/blog/2022-perf/)
* [purposefully no erasure coding](https://news.ycombinator.com/item?id=30257057), which implies full data
duplication across nodes
* designed for smaller, "home lab" distributed setups, might not be
our target
* [no built-in authentication system](https://git.deuxfleurs.fr/Deuxfleurs/garage/issues/546)
* [non-goals](https://garagehq.deuxfleurs.fr/documentation/design/goals/) also include "extreme performance" and features
above the S3 API
* uses a CRDT and Dynamo instead of Raft, see [this discussion for
tradeoffs](https://news.ycombinator.com/item?id=30257041) and [the design page](https://garagehq.deuxfleurs.fr/documentation/design/internals/)
See also their [comparison with other software](https://garagehq.deuxfleurs.fr/documentation/design/related-work/#existing-software) including MinIO. A
lot of the information in this section was gleaned from [this Hacker
News discussion](https://news.ycombinator.com/item?id=30256753) and [this other one](https://news.ycombinator.com/item?id=33853539).
## SeaweedFS
https://github.com/seaweedfs/seaweedfs
## Kubernetes
In Kubernetes, storage is typically managed by some sort of operator
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment