Garage
Object storegarage
Self-hosted S3-compatible object store for geo-distributed, heterogeneous nodes.
- Provider
- default
- Kind
- Object store
- Category
- Data
| property | type | values | required | kind default | this component |
|---|---|---|---|---|---|
| checksumOnWrite | boolean | — | no | false | inherited |
| consistencyMode | enum | consistent | degraded | dangerous | no | consistent | inherited |
| durabilityNines | integer | — | no | — | inherited |
| encryptionAtRest | boolean | — | no | false | ▸ false |
| managed | boolean | — | no | false | ▸ false |
| multiSite | boolean | — | no | false | inherited |
| objectLock | boolean | — | no | false | inherited |
| replication | enum | none | primary-secondary | quorum | erasure-coded | no | none | ▸ quorum |
| replicationFactor | integer | — | no | — | inherited |
| strongReadAfterWrite | boolean | — | no | false | ▸ true |
| tier | enum | hot | warm | cold | no | hot | inherited |
| versioning | boolean | — | no | false | ▸ false |
| zones | integer | — | no | — | inherited |
Every rule whose selector covers this component's kind or its category. Whether a rule fires depends on the design: its properties, its edges and its groups.
object-store-single-zone-with-durability-target
Eleven nines of durability assumes redundancy spread over at least three failure domains. An object store confined to fewer zones, or declaring none, cannot reach the target the design states.
- — all of these hold:
- — the design requirement `durability.annualNines` is a number greater than 10
- — any of these hold:
- — the node's `zones` has no value
- — the node's `zones` is a number less than 3
nodes:
- { id: "garage", component: "garage" }Object Storage Servicealibaba-ossAWS HealthImagingaws-healthimagingAWS HealthOmicsaws-healthomicsAmazon S3 Express One Zoneaws-s3-express-one-zoneAmazon S3 Glacieraws-s3-glacierAmazon S3 Tablesaws-s3-tablesAmazon Security Lakeaws-security-lakeAmazon S3s3Azure Blob Storageazure-blob-storageAzure Data Lake Storageazure-data-lake-storageMicrosoft Planetary Computer Proazure-planetary-computerCache Reservecloudflare-cache-reserveCloudflare Imagescloudflare-imagesCloudflare R2cloudflare-r2Backblaze B2 Cloud Storagebackblaze-b2Blob storeblob-storeCeph RADOS Gatewayceph-rgwCloudinarycloudinarylakeFSlakefsMinIOminioGeneric object storeobject-storeApache OzoneozoneSeaweedFSseaweedfsStorjstorjOpenStack SwiftswiftWasabi Hot Cloud StoragewasabiSpaces Object Storagedigitalocean-spacesGoogle Cloud StoragegcsIBM Cloud Object Storageibm-cloud-object-storageOCI Archive Storageoci-archive-storageOCI Object Storageoci-object-storageOUTSCALE Object Storage (OOS)outscale-oos
# yaml-language-server: $schema=../../schema/component.schema.json # Garage: self-hosted S3-compatible object store designed for geo-distributed, heterogeneous nodes. # Per "Configuration file format", replication_factor is a required cluster-wide setting that stores that # many full copies (there is no erasure coding), and consistency_mode defaults to "consistent", which uses # quorum reads and writes and gives read-after-write consistency. schemaVersion: "1" type: "component" id: "garage" kind: "object-store" provider: "default" docs: "https://garagehq.deuxfleurs.fr/documentation/reference-manual/configuration/" defaults: managed: false replication: "quorum" strongReadAfterWrite: true versioning: false encryptionAtRest: false properties: consistencyMode: type: "enum" values: ["consistent", "degraded", "dangerous"] default: "consistent" replicationFactor: type: "integer" multiSite: type: "boolean" default: false