·

S3-Compatible Object Storage: The Best Solutions at a Glance

An overview of the most important S3-compatible object storage solutions that work without AWS dependency, their differences, and suited use scenarios.
S3-Compatible Object Storage: The Best Solutions at a Glance

The S3 API from Amazon Web Services is the de-facto standard for object storage. SDKs, CLI tools, and applications rely heavily on this interface. This remains true even if you don't use AWS directly. At the same time, there are now a whole range of S3-compatible object storage solutions that work without AWS dependency. We'll break down the available options, how they differ, and when each setup actually makes sense in production.

What does S3 compatibility mean?

Amazon S3 (Simple Storage Service) provides an HTTP REST API that has become an industry standard. Tools like aws cli, rclone, s3cmd, and most applications with object storage integration expect exactly this interface.

S3 compatibility means: A storage system implements the same API and works as a drop-in replacement for AWS S3. Existing tools, clients, and workflows can continue to be used without disruption. You only need to update the endpoint URL and credentials.

This makes switching between local development environments, on-premise clusters, and cloud providers simple, because the same mechanisms apply everywhere.

Self-hosted S3-compatible solutions

Self-hosted solutions are particularly suitable when compliance requirements or cost control play a role. These are the projects worth taking a closer look at right now:

MinIO

MinIO is the most well-known S3-compatible self-hosted object storage. Written in Go, it is performant and relatively easy to operate.

MinIO has, however, changed its licensing strategy. The Community Edition is under the AGPL-3.0 license, which raises legal questions for commercial use cases. In addition, MinIO has shifted to a source-only distribution. Pre-compiled binaries are no longer provided for the open-source version. Productive use therefore requires either self-compiling or a commercial license.

For existing users, little changes in the short term. However, those evaluating newly should know the alternatives.

Strengths:

  • Very high S3 API compatibility
  • Simple installation and operation
  • Good performance even with large files
  • Active community and extensive documentation

Ceph / RadosGW

Ceph is a distributed storage system that combines object, block, and file storage in one system. The S3-compatible interface is provided by the RADOS Gateway (RadosGW).

Ceph is suitable for very large amounts of data, high fault tolerance, and multi-protocol environments. Operation, however, requires solid knowledge and appropriate hardware resources. For smaller teams or simpler setups, Ceph is often oversized.

Strengths:

  • Extremely scalable (petabyte range)
  • Highly available through distributed architecture
  • Supports S3, Swift, and native Ceph protocol

Garage

Garage is a lightweight, distributed object storage with an S3-compatible API, written in Rust. Garage was developed for scenarios where solutions like Ceph are too complex or resource-hungry.

Garage is optimized for geographically distributed setups and is well suited for edge deployments or small, decentralized infrastructures. The license is AGPL-3.0, the operation is significantly simpler than with Ceph.

Strengths:

  • Very resource-efficient
  • Designed for distributed and edge setups
  • Simple configuration

SeaweedFS

SeaweedFS is a distributed object storage with an S3-compatible interface. Originally built for the efficient storage of large amounts of small files, SeaweedFS is now a fully-fledged S3-compatible solution.

Its strength lies in high read and write speeds, particularly when handling many small objects. This is an area where Ceph traditionally shows weaknesses.

Strengths:

  • Very high I/O performance, especially with small objects
  • Erasure coding and replication
  • Cloud tiering and FUSE mount
  • Business-friendly Apache 2.0 license

RustFS

RustFS is a newer open-source project that positions itself as an alternative to MinIO written in Rust. Rust brings memory safety without a garbage collector, which translates into low resource consumption and less attack surface for memory errors.

RustFS advertises 100% S3 API compatibility, Kubernetes support, and enterprise features such as WORM compliance, active replication, and cross-cloud redundancy. The solution is released under the Apache 2.0 license. This bypasses the typical licensing concerns that exist with MinIO (AGPL-3.0) and Garage (AGPL-3.0) in commercial environments.

Strengths:

  • Apache 2.0 license, no AGPL risk
  • Written in Rust, memory safety without GC
  • Enterprise features: WORM, cross-cloud replication, versioning
  • Kubernetes-native architecture, multi-cloud capable
  • Compact binary (< 100 MB), suitable for edge

Limitations:

  • Currently still in Alpha stage (Version 1.0.0-alpha), no stable production release
  • Small community, hardly any independent benchmarks or production experience reports
  • Long-term stability and maintenance not yet assessable

For productive use today, RustFS is still too early. As a MinIO alternative with an Apache license, however, it is worth keeping an eye on the project.

Kubernetes-native approaches

Rook is a Kubernetes operator that integrates Ceph as a storage backend into the cluster. Deployment, scaling, and recovery run via Kubernetes-native mechanisms. Deploy Rook on Kubernetes

Rook significantly reduces the complexity of Ceph and makes operations more accessible for Kubernetes-experienced teams. The result: an S3-compatible object storage that runs entirely in the cluster, without external infrastructure dependencies.

Managed S3-compatible Cloud Providers

If you don't want to operate your own object storage, you can fall back on managed S3-compatible cloud services.

Cloudflare R2 differs from AWS S3 primarily in that no egress costs apply. This is relevant for applications with high data output, such as media delivery or publicly accessible files.

Backblaze B2 is an affordable S3-compatible object storage with a transparent pricing model. B2 is often used for backups and natively supported by rclone and many backup tools.

Hetzner Object Storage runs in German and Finnish data centers and is therefore GDPR-compliant without additional effort. A practical and affordable option for European companies with data sovereignty requirements.

Comparison by Criteria

SolutionTypeLicenseOperational EffortGDPRBest Use Case
MinIOSelf-hostedAGPL-3.0 / CommercialMedium✅ (On-Prem)Allrounder, Dev to Enterprise
Ceph / RadosGWSelf-hostedLGPL-2.1 / LGPL-3.0High✅ (On-Prem)Enterprise, large data volumes
GarageSelf-hostedAGPL-3.0Low✅ (On-Prem)Edge, small distributed setups
SeaweedFSSelf-hostedApache 2.0Medium✅ (On-Prem)Many small objects, high I/O
RustFSSelf-hostedApache 2.0Unclear (Alpha)✅ (On-Prem)MinIO alternative (still Alpha!)
Rook + CephKubernetes-nativeApache 2.0Medium✅ (On-Prem)Kubernetes cluster with storage need
Cloudflare R2Managed CloudProprietaryNone⚠️ US ProviderPublic Assets, no egress
Backblaze B2Managed CloudProprietaryNone⚠️ US ProviderBackup, Archiving
Hetzner Object StorageManaged CloudProprietaryNone✅ EU (DE/FI)GDPR-compliant cloud projects

When Self-hosted, when Managed?

Self-hosted:

  • Full control over data required
  • Compliance requirements (BSI, GDPR, NIS2) mandate On-Premise
  • Existing Kubernetes infrastructure that can be used
  • Cloud costs exceed operational effort

Managed:

  • No Ops team for storage operation available
  • Scalability without upfront investment required
  • Time-to-Market is a priority
  • Uncritical or public data

For European companies with data protection requirements, an EU-based managed provider or a self-hosted solution on their own infrastructure is usually an option.

What's Next?

If you're evaluating S3-compatible storage today, the licensing changes at MinIO are hard to ignore. The good news is that there are solid alternatives. Ceph serves the heavy enterprise workloads, SeaweedFS excels at handling high I/O for small files, and lightweight tools like Garage fill edge-deployment niches. RustFS is definitely the project to keep on your radar for the future.

For Kubernetes environments, Rook + Ceph offers a natively integrated solution. If you want to skip the operational overhead entirely, European managed providers like Hetzner Object Storage are an easy path to check the GDPR compliance box without the headache.

On lowcloud, Kubernetes workloads run on truly sovereign infrastructure. You also have the ability to integrate S3-compatible object storage directly into the platform, completely independent of US hyperscalers.