我只需要简单的S3
I just want simple S3

原始链接: https://blog.feld.me/posts/2026/04/i-just-want-simple-s3/

## 寻找简单的S3存储 作者需要一个基础、可靠且快速的S3兼容存储解决方案,用于在局域网内存储几GB的数据。他们排除了几个选项,认为它们过于复杂或性能不足。由于开发重心转向AI以及过去的一些bug经历,Minio被排除在外。Garage虽然很有前景,但感觉在其早期阶段过于复杂。SeaweedFS虽然架构吸引人,但实际上速度很慢。CEPH被认为过于庞大。 最终,**Versity GW** 提供了理想的解决方案。它使用本地文件系统作为后端,并提供Web界面,实现了预期的线路速率下载速度。Versity利用扩展属性进行元数据管理。 其他考虑过的选项包括RustFS(太新/复杂,编译时间长)、rclone(并非设计为服务器)、Filestash(一体化文件管理器)、Zenko CloudServer & Supabase Storage(基于NodeJS,引发性能担忧)。作者预计最终会迁移到原生ZFS对象存储解决方案,一旦可用。

## “简单 S3” 的探索 这个 Hacker News 讨论的核心是对于一个简单、自托管、兼容 S3 的对象存储解决方案的需求。发起者希望获得类似亚马逊 S3 的功能,可能用于本地开发、数据管理或性能优化,但避免其复杂性和厂商锁定。 许多项目被提出,包括 MinIO、SeaweedFS、RustFS、Garage 和 Floci。然而,评论者指出挑战:对“简单”的定义各不相同,许多实现缺少关键的 S3 功能(版本控制、身份验证),并且自托管会带来运营负担。一些人提倡使用 NFS 或 rsync.net 等替代方案,而另一些人则指向 Cloudflare R2 或 Backblaze 等托管 S3 替代方案。 一个反复出现的主题是 S3 API 作为行业标准的重要性,以及实现真正简单的挫败感。讨论还涉及功能完整性、性能和易用性之间的权衡,并且对严重依赖 AI 生成代码的项目持怀疑态度。最终,“最佳”解决方案很大程度上取决于具体的用例和对复杂性的容忍度。
相关文章

原文

I just want S3. My needs are pretty basic. I don't need to scale out. I don't need replication. I just need something that can do S3 and is reliable and not slow.

Minio is dead, they pulled the plug after axing the interface. They archived the repo so they can chase AI industry dollars because those folks have heavily utilized Minio. Good for them, but I always wrote them off after pointing out a bug their tests weren't catching because they were mocking responses, not actually testing the code, and they shrugged it off. (deletes were broken at one point)

Garage is new and interesting being built in Rust, but last I tried (6 months ago?) it was also unnecessarily complex. It's very young, development was paused for a while (funding), and was missing a couple normal S3 features I wanted last I checked. Maybe it's better now. Still feels too heavy.

SeaweedFS is honestly super cool. I like their approach and how they added layers on it so they can do things like support WebDAV. I don't know what's wrong, but I run it with a master and volume node, it's slow. I switch to the new weed mini approach -- still slow. I'm storing a couple GBs of normal files in here, it's nothing fancy, but even on my own LAN I try to download a file and it chugs and chugs -- starts downloading at maybe a few hundred KB/s, eventually ramps up to ~10mbit/s. I don't know why. It's on my LAN, why isn't it instant?

CEPH is a monster. It's huge. We have it at work. Way more complex than I need, but if you really wanted to build something that can compete with Amazon's S3 you probably want CEPH. SeaweedFS is close to being capable as well...

Versity GW -- oh bless you, Reddit commenter, for bringing this one up in a thread about benchmarking S3 backend performance. Nobody seems to know it exists except... Sandia National Labs, Los Alamos National Lab, the military, bunch of universities...!

The Versity S3 Gateway currently supports generic POSIX file backend storage and Versity’s ScoutFS filesystem.

I don't know what the main use case is for Versity. It can proxy to other S3 backends so you don't have to expose auth or can provide a custom auth layer. Does it do read-through caching? Don't know, didn't check. Can you have some local buckets and some that are proxied? Don't know, didn't check.

But what it can do is just use the local filesystem for S3 storage and that's good enough for me. And I get a web interface to manage it all, it can do anonymous/public read buckets and handles policies. Interesting is that it uses xattrs for storing metadata of the objects.

So I drop this in, rclone my data over, do some testing, and I get lightning fast performance on my LAN like I expect -- line rate downloads! Finally, sanity is restored.

Now I just wait to replace this with a true ZFS native object storage that someone is working on...

Didn't know about the following until after I deployed Versity, but here are some notes:

RustFS is a newer contender also written in Rust. Also seems heavier than I need. Benchmarks show it's faster than Minio (also POSIX fs backed), they claim 100% S3 compatibility which is impressive if true. "Development began in December 2023, and we officially launched as an open-source project on July 2, 2025." and "users can now migrate from MinIO to RustFS through direct binary replacement." Have not evaluated it yet, not thrilled with adding more Rust to my environment as the compile times are so long and it's not in FreeBSD ports, so I'd have to port it myself. Its usage of the filesystem instead of packing the objects into a custom data format means it would be less performant for small objects, but I want regular fs backed anyway. Give it entire disks/filesystems and it can distribute the data across them, repair/heal when replacing broken disks. Neat!

rclone has the ability to act as an S3 server, but that's not its main purpose and I'm hesitant to rely on it. I knew about this, but wrote it off. If I had to guess I'd say the server is mostly implemented to make it easier for them to test their client.

filestash seems like a nice all-in-one that I should look into. "It started as a storage agnostic Dropbox-like file manager that works with every storage protocol: FTP, SFTP, S3, SMB, WebDAV, IPFS, and about 20 more."

Zenko CloudServer is another I've never heard of. Written in NodeJS, so enjoy your single threaded event loop...

Supabase Storage is also NodeJS, but stores metadata in Postgres. Authorization is handled with Postgres Row Level Security. Interesting concept.

联系我们 contact @ memedata.com