Research reportDistributed storage

Self-hosted S3-compatible storage: Ceph RGW and the alternatives

MinIO alternatives for self-hosted S3-compatible storage, compared from each project's own documentation and license as of 8 November 2026: Ceph RGW, SeaweedFS, RustFS, Garage, Apache Ozone and OpenStack Swift.

Cover of the full report: Self-hosted S3-compatible storage: Ceph RGW and the alternatives
The research behind this article, with every source listed. 20 pages.

Key points

From the Summary of the full report

  1. MinIO's community edition moved from the Apache License 2.0 to the GNU AGPL version 3 on 23 April 2021 [1], shipped as source code only from 15 October 2025 [2, 3], entered maintenance mode on 3 December 2025 [4] and was archived on 25 April 2026 [5]. MinIO now calls that codebase frozen and sells AIStor under a commercial license [6].
  2. Security fixes for MinIO's frozen open-source code go to its commercial product, AIStor [6, 7]. MinIO's advisory for CVE-2026-41145, published on 14 April 2026 and rated high, covers every open-source release from RELEASE.2023-05-18T00-05-36Z onward and lists the fix only in an AIStor release [7].
  3. "S3-compatible" names a subset that each project documents for itself. AWS lists 116 Amazon S3 actions (counted for this report) [8]. The Ceph Object Gateway (RGW) marks 27 of the 28 features in its S3 table as supported and bucket replication as partial [9], and Garage answers 501 Not Implemented for every endpoint it lacks [10].

The search for MinIO alternatives starts from a date. MinIO's open-source repository was archived on 25 April 2026, and MinIO now sells its object store as AIStor under a commercial license [5, 6]. This research compares six open-source projects that serve self-hosted S3-compatible storage, the Ceph Object Gateway (RGW), SeaweedFS, RustFS, Garage, Apache Ozone and OpenStack Swift, from each project's own documentation and license as viewed on 8 and 9 November 2026. It measures no performance and uses no vendor benchmark.

What changed with MinIO's open-source edition

MinIO's own commits and pages date each step.

Date What changed
23 April 2021 The license changed from the Apache License 2.0 to the GNU AGPL version 3 [1]
15 October 2025 The community edition became source only, with no pre-compiled binaries [2, 3]
16 October 2025 RELEASE.2025-10-15T17-29-55Z was published, and no later release is listed [30]
3 December 2025 Maintenance mode: no new features, enhancements or pull requests [4]
12 February 2026 The README opened with "THIS REPOSITORY IS NO LONGER MAINTAINED." [2, 36]
25 April 2026 GitHub marked the repository archived and read-only [5]

MinIO's pricing page now describes the AGPLv3 codebase as "frozen, with no new features, bug fixes, or security patches" [6]. Security fixes after the freeze go to AIStor [6, 7]. MinIO's advisory for CVE-2026-41145, published on 14 April 2026 and rated high, describes a flaw that lets anyone who knows a valid access key write objects to any bucket without the secret key. It covers every open-source release from RELEASE.2023-05-18T00-05-36Z onward and lists its fix only in an AIStor release [7].

AIStor comes in three tiers [6]. Free and Enterprise Lite joined Enterprise on 23 December 2025 [31]. Free is the full feature set on a single node, with redistribution prohibited [6]. Enterprise Lite is multi-node and self-supported below 400 TiB [6, 31]. Enterprise adds 24/7/365 support with a <4-hour SLA [6, 31]. Prices are based on usable capacity, and MinIO publishes no list prices [6].

MinIO alternatives compared

Each project describes itself in its own documentation, and the table restates those descriptions.

Project License How it protects data Also serves
Ceph Object Gateway (RGW) LGPL 2.1 or 3 [19] Writes into the pools of a Ceph cluster, chosen per bucket and storage class [18] Block devices and a file system from the same cluster [17]
SeaweedFS Apache 2.0 [13] Replicates hot data and erasure-codes warm data in the background [13] A POSIX file system, WebDAV, SFTP and table buckets [13]
RustFS Apache 2.0 [14] Erasure sets, under topology rules that follow MinIO's [14] The Swift API, FTPS, WebDAV and SFTP [14]
Garage AGPL version 3 [22] Whole copies only, with erasure coding left out by design [16] No file system, since POSIX compatibility is a non-goal [16]
Apache Ozone Apache 2.0 [20] Replication and erasure coding [51] Hadoop ecosystem integration [51]

SeaweedFS runs from one binary, with volume servers that store blobs and filer servers that add directories, files and the S3, WebDAV, SFTP and FUSE interfaces [13]. Its README also points to a SeaweedFS Enterprise Edition [13]. RustFS published its 1.0.0 release on 16 September 2026 and 1.0.4 on 25 October 2026 [47]. Garage is built for several sites joined by regular Internet connections and is developed by Deuxfleurs, a non-profit [16]. Apache Ozone serves S3 through a separate S3 Gateway component [15]. OpenStack Swift publishes a matrix of the S3 calls its S3 API answers, beside its own Swift API [29].

Ceph RGW vs MinIO

The Ceph Object Gateway is an HTTP server, radosgw, built on librados. It gives applications an interface compatible with "a large subset of the Amazon S3 RESTful API" and with a large subset of the Swift API, in one shared namespace [17]. The same cluster stores data for Ceph's block devices and file system [17]. Placement targets tie each bucket to pools when it is created, and lifecycle rules move objects between storage classes, each of which names a data pool [18]. In a multi-zone setup, zones in separate Ceph clusters each accept writes, and a bucket's data replicates to the other zones of its zonegroup [39].

MinIO's AIStor groups drives into erasure sets of 2 to 16 drives by default, fixed when a server pool initializes [28]. Ceph publishes named stable releases with dated end-of-life estimates. Umbrella, 21.2.0, came out on 28 October 2026 with an estimated end of life on 1 June 2028, and Squid's estimate is 2 December 2026 [37]. Ceph's code is licensed LGPL 2.1 or 3 [19].

Ceph's hardware guide recommends one drive for each Ceph OSD Daemon, a minimum OSD size of 1 TiB, at least 4 GB of RAM per ceph-osd daemon, and SSDs for the gateway's index and log pools when bucket data sits on hard drives [40]. Umbrella's container images need CPUs at the x86-64-v3 level [38]. On Kubernetes, Rook configures the Ceph object store, and the Cloud Native Computing Foundation (CNCF) graduated Rook on 7 October 2020 [43, 44].

Rillor's distributed storage work designs and builds Ceph clusters whose object gateway serves self-hosted S3-compatible buckets, with versioning, for datasets, model weights and checkpoints, next to block volumes and shared file systems from the same cluster. What datasets, checkpoints and weights each ask of storage is set out in storage for model training.

What "S3-compatible" covers

AWS lists 116 Amazon S3 actions, counted for this report on 8 November 2026 [8]. Each project publishes its own subset. Versioning keeps each version of an object under its own version ID, and object lock holds objects under a retention mode [11]. Ceph's S3 table marks 27 of 28 features supported and bucket replication partial, permitted only across zones [9]. SeaweedFS counts 73 S3 bucket and object operations, plus IAM and STS calls [13]. RustFS states that it "does not claim complete coverage" of S3 behavior [46]. Garage answers 501 Not Implemented for every endpoint it lacks [10].

Feature Ceph RGW SeaweedFS RustFS Garage
Versioning Supported [9] Listed [13] Available [14] Missing [10]
Object lock Governance and compliance modes, set at bucket creation [11] With retention and legal hold [13] Available [14] Missing [10]
Server-side encryption SSE-C, SSE-KMS and SSE-S3 [12] SSE-S3, SSE-KMS and SSE-C [13] Available [14] SSE-C only [10]
Lifecycle rules Supported [9] Listed [13] Available [14] Expiration and multipart cleanup only [10]
Access policies ACLs and bucket policies [9] Bucket policies, IAM and STS [13] IAM and policies [14] Its own per-key, per-bucket permissions [10]

Apache Ozone's S3 gateway lists bucket versioning, object locking and server-side encryption as not supported [15]. Swift's matrix answers yes for versioning and no for bucket notifications, lifecycle, bucket policy and object tagging [29].

Licenses: AGPL, Apache 2.0, LGPL and commercial

Garage and MinIO's archived edition carry the GNU AGPL version 3 [5, 22]. Section 13 of that license says a modified version must offer all users who interact with it remotely over a network a chance to receive its Corresponding Source [23]. SeaweedFS, RustFS, Apache Ozone and OpenStack Swift use the Apache License 2.0 [13, 14, 20, 21], which has no such clause and grants each contributor's patent license in its section 3 [52]. Ceph's code is LGPL 2.1 or 3, with its documentation under CC-BY-SA-3.0 [19]. AIStor is commercially licensed [6]. These are summaries of the license texts, not legal advice on any deployment.

Moving data off MinIO

Buckets move between S3-compatible stores at the S3 level. rclone's S3 backend lists "Ceph", "Minio", "SeaweedFS" and "Other" among its providers, and for Ceph it says to leave the region blank and set the endpoint [24]. No source reviewed states what such a copy carries over, whether object versions, object lock retention or encryption.

RustFS adds an on-disk path that runs one way, MinIO to RustFS. Its interoperability document says the default build reads MinIO's unencrypted objects, and objects MinIO encrypted with SSE-S3 or SSE-KMS read only in the opt-in rio-v2 build, with the shared master key [25]. Its README instead says MinIO on-disk compatibility is not part of the default build and that objects MinIO encrypted are not readable by RustFS [14]. RustFS marks MinIO on-disk compatibility as a preview feature [14].

Choosing among the alternatives

The comparison comes down to the S3 features the workload calls, the terms of the license, the protection model and what it fixes at setup, and the other storage types the same team needs [9, 14, 16, 18, 28]. Where checkpoints sit affects cost as well: the research on training on spot GPUs counts checkpoint egress among the costs of moving training across regions. The same self-hosting question on the serving side is worked through in self-hosted LLM vs API cost, which sets a break-even utilization.

Read the full report

The full report adds each project's feature list with its sources, the MinIO advisories and where MinIO's own pages disagree, release dates and support windows, Kubernetes paths and RustFS's one-way migration rules by build.

The full report

Self-hosted S3-compatible storage: Ceph RGW and the alternatives

The research behind this article, with every source listed. 20 pages.

  1. Summary
  2. Background
  3. Method
  4. Findings
  5. Implications
  6. Limits of this analysis
  7. Sources

Sources

  1. update license change for MinIO (commit 0694325). MinIO, Inc., GitHub, 23 April 2021, viewed 8 November 2026. https://github.com/minio/minio/commit/069432566fcfac1f1053677cc925ddafd750730a
  2. MinIO Quickstart Guide (README.md), minio/minio repository. MinIO, Inc., GitHub, last changed 12 February 2026, viewed 8 November 2026. https://github.com/minio/minio/blob/master/README.md
  3. update README.md and other docs to point to source only releases (commit 9e49d5e). MinIO, Inc., GitHub, 15 October 2025, viewed 8 November 2026. https://github.com/minio/minio/commit/9e49d5e7a6
  4. update README.md maintenance mode (commit 27742d4). MinIO, Inc., GitHub, 3 December 2025, viewed 8 November 2026. https://github.com/minio/minio/commit/27742d4694
  5. minio/minio repository. MinIO, Inc., GitHub, archived 25 April 2026, viewed 8 November 2026. https://github.com/minio/minio
  6. AIStor Subscriptions and Pricing (Pricing and FAQ). MinIO, Inc., viewed 8 November 2026. https://www.min.io/pricing
  7. Unauthenticated Object Write via Query-String Credential Signature Bypass in Unsigned-Trailer Uploads (GHSA-hv4r-mvr4-25vw, CVE-2026-41145). MinIO, Inc., GitHub Security Advisories, 14 April 2026, viewed 8 November 2026. https://github.com/minio/minio/security/advisories/GHSA-hv4r-mvr4-25vw
  8. Amazon S3 actions. Amazon Simple Storage Service API Reference, Amazon Web Services, viewed 8 November 2026. https://docs.aws.amazon.com/AmazonS3/latest/API/API_Operations_Amazon_Simple_Storage_Service.html
  9. Ceph Object Gateway S3 API. Ceph Documentation (Umbrella), Ceph Foundation, viewed 8 November 2026. https://docs.ceph.com/en/umbrella/radosgw/s3/
  10. S3 Compatibility status. Garage documentation, Deuxfleurs, viewed 8 November 2026. https://garagehq.deuxfleurs.fr/documentation/reference-manual/s3-compatibility/
  11. Bucket operations, Ceph Object Gateway S3 API. Ceph Documentation (Umbrella), Ceph Foundation, viewed 8 November 2026. https://docs.ceph.com/en/umbrella/radosgw/s3/bucketops/
  12. Encryption. Ceph Documentation (Umbrella), Ceph Foundation, viewed 8 November 2026. https://docs.ceph.com/en/umbrella/radosgw/encryption/
  13. SeaweedFS (README), seaweedfs/seaweedfs repository. SeaweedFS project, GitHub, viewed 8 November 2026. https://github.com/seaweedfs/seaweedfs
  14. RustFS (README), rustfs/rustfs repository. RustFS project, GitHub, viewed 8 November 2026. https://github.com/rustfs/rustfs
  15. S3 API. Apache Ozone documentation, version 2.2.2, The Apache Software Foundation, viewed 8 November 2026. https://ozone.apache.org/docs/user-guide/client-interfaces/s3/s3-api
  16. Goals and use cases. Garage documentation, Deuxfleurs, viewed 8 November 2026. https://garagehq.deuxfleurs.fr/documentation/design/goals/
  17. Ceph Object Gateway. Ceph Documentation (Umbrella), Ceph Foundation, viewed 8 November 2026. https://docs.ceph.com/en/umbrella/radosgw/
  18. Pool Placement and Storage Classes. Ceph Documentation (Umbrella), Ceph Foundation, viewed 8 November 2026. https://docs.ceph.com/en/umbrella/radosgw/placement/
  19. COPYING, ceph/ceph repository. Ceph project, GitHub, viewed 8 November 2026. https://github.com/ceph/ceph/blob/main/COPYING
  20. apache/ozone repository. The Apache Software Foundation, GitHub, viewed 8 November 2026. https://github.com/apache/ozone
  21. LICENSE, openstack/swift repository (a mirror of code maintained at opendev.org). OpenStack, GitHub, viewed 8 November 2026. https://github.com/openstack/swift/blob/master/LICENSE
  22. deuxfleurs-org/garage (GitHub mirror of the Garage repository). Deuxfleurs, GitHub, viewed 8 November 2026. https://github.com/deuxfleurs-org/garage
  23. GNU Affero General Public License, version 3. Free Software Foundation, 19 November 2007, viewed 8 November 2026. https://www.gnu.org/licenses/agpl-3.0.html
  24. Amazon S3 Storage Providers. rclone documentation, rclone, viewed 8 November 2026. https://rclone.org/s3/
  25. MinIO On-Disk Format Interoperability. RustFS project, GitHub, viewed 8 November 2026. https://github.com/rustfs/rustfs/blob/main/docs/architecture/minio-file-format-compat.md
  26. Erasure Coding. MinIO AIStor Documentation, MinIO, Inc., viewed 8 November 2026. https://docs.min.io/aistor/operations/core-concepts/erasure-coding/
  27. S3/Swift REST API Comparison Matrix. Swift 2.39.0.dev112 documentation, OpenStack, viewed 8 November 2026. https://docs.openstack.org/swift/latest/s3_compat.html
  28. Releases, minio/minio. MinIO, Inc., GitHub, viewed 8 November 2026. https://github.com/minio/minio/releases
  29. Introducing New Subscription Tiers for MinIO AIStor: Free, Enterprise Lite, and Enterprise. MinIO blog, MinIO, Inc., 23 December 2025, viewed 8 November 2026. https://blog.min.io/introducing-new-subscription-tiers-for-minio-aistor-free-enterprise-lite-and-enterprise/
  30. update README.md format and clarify state of the project (commit 7aac2a2). MinIO, Inc., GitHub, 12 February 2026, viewed 8 November 2026. https://github.com/minio/minio/commit/7aac2a2c5b
  31. Ceph Releases (index). Ceph Documentation, Ceph Foundation, viewed 8 November 2026. https://docs.ceph.com/en/latest/releases/
  32. Umbrella (v21.2.0 release notes). Ceph Documentation, Ceph Foundation, 28 October 2026, viewed 8 November 2026. https://docs.ceph.com/en/latest/releases/umbrella/
  33. Multi-Site. Ceph Documentation (Umbrella), Ceph Foundation, viewed 8 November 2026. https://docs.ceph.com/en/umbrella/radosgw/multisite/
  34. Hardware Recommendations. Ceph Documentation (Umbrella), Ceph Foundation, viewed 8 November 2026. https://docs.ceph.com/en/umbrella/start/hardware-recommendations/
  35. Rook. Cloud Native Computing Foundation, viewed 8 November 2026. https://www.cncf.io/projects/rook/
  36. Object Storage Overview. Rook Ceph Documentation, Rook, viewed 8 November 2026. https://rook.io/docs/rook/latest/Storage-Configuration/Object-Storage-RGW/object-storage/
  37. S3 Compatibility Matrix. RustFS project, GitHub, viewed 8 November 2026. https://github.com/rustfs/rustfs/blob/main/docs/architecture/s3-compatibility-matrix.md
  38. Releases, rustfs/rustfs. RustFS project, GitHub, viewed 8 November 2026. https://github.com/rustfs/rustfs/releases
  39. Apache Ozone (home page). The Apache Software Foundation, viewed 8 November 2026. https://ozone.apache.org/
  40. Apache License, Version 2.0. The Apache Software Foundation, January 2004, viewed 8 November 2026. https://www.apache.org/licenses/LICENSE-2.0

Notices

Rillor is not a registered investment adviser or commodity trading advisor and does not provide investment or trading advice. Research, forecasts, data and software described on this site are for research and engineering use. Nothing here is an offer or recommendation to buy or sell any security, commodity interest or digital asset. Past or simulated results do not indicate future results.

NVIDIA, AMD, Ceph, Kubernetes and related product names are trademarks of their owners and are used only to identify products. No affiliation or endorsement is implied.

Tell us what your storage must hold.

Send what the storage must hold, how fast it grows, how it is read and written, and where it runs.

Scope a storage cluster