S3-compatible object store for small self-hosted geo-distributed deployments https://garagehq.deuxfleurs.fr/
Go to file
Mendes 7f3249a237 New version of the algorithm that calculate the layout.
It takes as paramters the replication factor and the zone redundancy, computes the
largest partition size reachable with these constraints, and among the possible
assignation with this partition size, it computes the one that moves the least number
of partitions compared to the previous assignation.
This computation uses graph algorithms defined in graph_algo.rs
2022-09-21 14:39:59 +02:00
doc New version of the algorithm that calculate the layout. 2022-09-21 14:39:59 +02:00
nix Patch cargo2nix openssl override 2022-03-17 12:17:38 +01:00
script Add/Fix OpenTelemetry 2022-04-07 16:12:35 +02:00
src New version of the algorithm that calculate the layout. 2022-09-21 14:39:59 +02:00
.dockerignore Build Docker image 2020-06-30 17:18:42 +02:00
.drone.yml Add integration tests to Drone 2022-02-10 17:55:50 +01:00
.gitattributes Add FOSDEM talk and move all .pdf files to Git LFS 2022-02-16 20:01:36 +01:00
.gitignore Work on API 2020-04-28 10:18:14 +00:00
Cargo.lock updated cargo.lock 2022-05-01 10:11:43 +02:00
Cargo.nix update Cargo.nix 2022-04-08 14:35:09 +02:00
Cargo.toml Add missing src/block to toplevel cargo.toml 2022-03-23 10:26:10 +01:00
Dockerfile Extract toolchain build from the CI 2021-10-29 11:34:01 +02:00
LICENSE Switch to AGPL 2021-03-16 16:35:46 +01:00
Makefile Build Garage with Nix 2021-10-19 16:56:07 +02:00
README.md Improve how node roles are assigned in Garage 2021-11-16 16:05:53 +01:00
default.nix Compile kuberetes-discovery only when release=true 2022-03-24 16:57:43 +01:00
rustfmt.toml Fix the Sync issue. Details: 2020-04-10 22:01:48 +02:00
shell.nix Remove strum crate dependency; add protobuf nix dependency 2022-03-14 10:53:00 +01:00

README.md

Garage Build Status

Garage logo

[ Website and documentation | Binary releases | Git repository | Matrix channel ]

Garage is a lightweight S3-compatible distributed object store, with the following goals:

  • As self-contained as possible
  • Easy to set up
  • Highly resilient to network failures, network latency, disk failures, sysadmin failures
  • Relatively simple
  • Made for multi-datacenter deployments

Non-goals include:

  • Extremely high performance
  • Complete implementation of the S3 API
  • Erasure coding (our replication model is simply to copy the data as is on several nodes, in different datacenters if possible)

Our main use case is to provide a distributed storage layer for small-scale self hosted services such as Deuxfleurs.