前天 MinIO 宣告進(jìn)入維護(hù)模式,老馮寫了一篇《》聊了聊這個(gè)話題。 很多朋友也問我,MinIO 既然擺爛躺平了,有誰(shuí)能接 MinIO 的班?
大方向的話,臺(tái)面上的替代品無(wú)非就那幾個(gè):Ceph、RustFS、SeaweedFS、Garage…… 老馮把這些方案都打好了 Linux 上的 RPM/DEB 包,挨個(gè)試了一遍。
總結(jié)一句話:沒有完美替代。
![]()
老馮給這些方案都打好了 Linux 上的 RPM/DEB 包(https://pgext.cloud),都試驗(yàn)了一把。總體的結(jié)論是,沒有一個(gè)能完美替代 MinIO 的方案。
![]()
各有各的問題 —— Ceph 功能全但太復(fù)雜;SeaweedFS 針對(duì)小文件優(yōu)化但需要獨(dú)立元數(shù)據(jù)庫(kù);Garage 小巧玲瓏但功能簡(jiǎn)陋;RustFS 兼容 MinIO 但竟然還是 Alpha。
MinIO 替代品速覽
MinIO 是 AWS S3 的開源替代,所以從單純的 對(duì)象 CRUD 功能 上來(lái)講,任何兼容 S3 API 的對(duì)象存儲(chǔ)系統(tǒng)都可以作為 MinIO 的替代品。 但如果考慮到非功能類特性 —— 可靠性,可運(yùn)維性,復(fù)雜度,工具鏈,生態(tài)成熟度,運(yùn)維 SOP 這些,想要 “平替” 掉 MinIO 確實(shí)不容易。
這里我們不聊商業(yè)存儲(chǔ),云廠商的對(duì)象存儲(chǔ)服務(wù),只聊開源項(xiàng)目的話,大體上會(huì)有這些選擇:
Ceph 可能是企業(yè)用戶的最佳選擇,但學(xué)習(xí)曲線陡峭,適合有專人運(yùn)維的團(tuán)隊(duì),不像 MinIO 一個(gè)二進(jìn)制走天下。 很多用戶并不需要分布式塊存儲(chǔ)和分布式文件系統(tǒng)的功能,而且運(yùn)行還需要額外的 Podmon,不如 MinIO 爽利。
SeaweedFS 質(zhì)量不錯(cuò),針對(duì)海量小文件場(chǎng)景做優(yōu)化,O(1) 磁盤尋址,小文件場(chǎng)景性能碾壓。 但它需要一個(gè)獨(dú)立的元數(shù)據(jù)庫(kù)來(lái)存儲(chǔ)文件元信息,這就帶來(lái)了外部依賴。如果你需要一個(gè)"通用對(duì)象存儲(chǔ)",它不是最佳答案。
Garage 是歐洲 Deuxfleurs 團(tuán)隊(duì)的作品,拿過歐盟 NGI 資助,適合自托管愛好者和邊緣計(jì)算場(chǎng)景。 非常輕量(10MB),但 S3 兼容性太弱,沒有版本控制,跨區(qū)域復(fù)制,IAM 這些,不適合企業(yè)場(chǎng)景。
RustFS 是唯一一個(gè)瞄準(zhǔn)"MinIO 替代"生態(tài)位的項(xiàng)目,但成熟度不足 —— 竟然還是 Alpha。
結(jié)果,沒有一個(gè)能 “完美” 取代 MinIO 生態(tài)位的。細(xì)節(jié)的話,就用下面這個(gè) Claude 4 Opus 深度研究報(bào)告吧(粗略參考)
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
RustFS 是否可以替代 MinIO
在所有號(hào)稱"MinIO 開源替代"的項(xiàng)目中,老馮本來(lái)最看好 RustFS,所以特地花了些時(shí)間測(cè)試。 我在 Pigsty 中嘗試將 MinIO 換成 RustFS,大部分邏輯可以復(fù)用,但還是有些區(qū)別:
?RustFS 對(duì)證書名稱有特殊要求?RustFS 的健康檢查接口與 MinIO 有所不同?RustFS 不支持 mc admin 管理命令,無(wú)法配置詳細(xì)的 IAM 策略。這一點(diǎn)對(duì)企業(yè)用戶而言比較重要。
總的來(lái)說(shuō),跑起來(lái)了,但老馮思考再三,還是把這個(gè)分支給放棄掉了。因?yàn)榘?Alpha 版的軟件用在生產(chǎn)環(huán)境實(shí)在是太不像話了。 我是比較期待 RustFS GA 版本出來(lái)之后,再來(lái)做一次評(píng)測(cè)。
![]()
RustFS 是否會(huì)重蹈 MinIO 覆轍
當(dāng)然,RustFS 這個(gè)項(xiàng)目雖然看上去很有潛力,但也存在一些問題。例如,RustFS 是否會(huì)重蹈 MinIO 覆轍? 特別是,RustFS 在很多雷點(diǎn)上,跟 MinIO 十分相似。
老馮請(qǐng) AI SOTA 三件套(GPT5-pro, Claude4-Opus, Gemini3-pro)對(duì) RustFS 的風(fēng)險(xiǎn)進(jìn)行了全面的分析評(píng)測(cè)。
我用的 Prompt 如下:
![]()
Claude Opus 4: https://claude.ai/public/artifacts/eedd69db-c3cf-4e85-b213-47cf25b36ae4
![]()
Gemini 3 Pro: https://gemini.google.com/share/b024ed739ecb 則對(duì) RustFS 提出了相當(dāng)嚴(yán)重的指控:
![]()
其中 Gemini 對(duì) RustFS 項(xiàng)目提出來(lái)了幾項(xiàng)相當(dāng)嚴(yán)重的指控,老馮又請(qǐng) Claude 核實(shí)了一遍。
![]()
RustFS 這些風(fēng)險(xiǎn)信號(hào)與當(dāng)年的 MinIO 幾乎一模一樣:Apache 2.0 + 版權(quán)轉(zhuǎn)讓型 CLA + 單一商業(yè)公司控制。 考慮到這些因素,老馮對(duì) RustFS 的評(píng)級(jí)從 “樂觀期待”,下調(diào)為 “謹(jǐn)慎觀望”。
![]()
![]()
所以,應(yīng)該怎么做?
老馮的 PostgreSQL 發(fā)行版 Pigsty 里面集成了 MinIO 作為對(duì)象存儲(chǔ)的解決方案。 這完全是一個(gè)可選的模塊,主要作用是 —— 存儲(chǔ) PostgreSQL 備份,以及在其他業(yè)務(wù)軟件需要對(duì)象存儲(chǔ)的時(shí)候提供一個(gè) —— 比如自建 Supabase 。
考察了現(xiàn)有的生態(tài)替代品之后,老馮確實(shí)是不想再折騰換 MinIO 的事情了,也許會(huì)提供一個(gè)用 pgbackrest 自己的備份服務(wù)器替代掉 MinIO 的選項(xiàng)。
老馮覺得目前最優(yōu)的方案,還是繼續(xù)使用 MinIO 的最新版本,鎖定版本,做好網(wǎng)絡(luò)隔離。 等待半年左右,看看社區(qū)生態(tài)的發(fā)展再做打算。如果那時(shí)候 MinIO 有人接手,或者 RustFS GA 可用了,再做調(diào)整也不遲。
當(dāng)然,RustFS 也可以抓住這個(gè)機(jī)會(huì),搶占 MinIO 的生態(tài)位,并真的實(shí)現(xiàn)一個(gè)更好,更安全,協(xié)議更友善的 MinIO 版本。機(jī)會(huì)不等人,老馮覺得這個(gè)窗口也就幾個(gè)月時(shí)間,錯(cuò)過了就是錯(cuò)過了。
繼續(xù)使用 MinIO 的注意事項(xiàng)
如果要繼續(xù)使用 MinIO,有這么幾個(gè)注意事項(xiàng)。第一是應(yīng)該用什么版本。 雖然說(shuō),MinIO 20250422 版本是最后一個(gè)功能完整(帶有控制臺(tái) GUI)的版本,但老馮還是建議使用最新的版本。
因?yàn)閺?20250422 到現(xiàn)在(2025-12-08)這段期間,MinIO 有一個(gè)比較嚴(yán)重的 CVE 安全漏洞。CVE-2025-62506: Privilege escalation via session policy bypass (HIGH)
這個(gè)漏洞允許低權(quán)限用戶創(chuàng)建一個(gè)新的賬戶實(shí)現(xiàn)權(quán)限提升。不過如果是在內(nèi)網(wǎng)環(huán)境中,并且做好網(wǎng)絡(luò)隔離的話,這個(gè)漏洞的風(fēng)險(xiǎn)也是相對(duì)可控的。 這個(gè)漏洞已經(jīng)在 MinIO 20251015 版本中修復(fù)了,但是 MinIO 很雞賊的從這個(gè)版本開始移除了二進(jìn)制,只提供源代碼。
不過老馮覺得還好,因?yàn)?MinIO 是一個(gè) Go 語(yǔ)言項(xiàng)目,編譯就一條命令,跨平臺(tái)編譯 goreleaser 一把梭也很簡(jiǎn)單。 流程我已經(jīng)跑通了,其實(shí)很簡(jiǎn)單,這個(gè)事老馮可以整,等測(cè)一陣沒問題了就發(fā)到 Pigsty 倉(cāng)庫(kù)里去,把 MinIO 重新從一個(gè) “源碼發(fā)行版” 恢復(fù)成一個(gè)二進(jìn)制發(fā)行版。
但安全漏洞和BUG還是得有人來(lái)修的。老馮覺得,社區(qū)里如果有人愿意接手 MinIO 的話,現(xiàn)在還真是一個(gè)非常好的機(jī)會(huì)。 從 20250422 版本作為基礎(chǔ),CherryPick 重要的 Bug 和安全修復(fù)的話,然后開始維護(hù)一個(gè) MinIO 社區(qū)版本。
說(shuō)到底,MinIO 經(jīng)過這么長(zhǎng)時(shí)間的社區(qū)打磨,已經(jīng)是一個(gè)相當(dāng)成熟穩(wěn)定的對(duì)象存儲(chǔ)系統(tǒng)了 —— 基本上算是一個(gè) “已完成的軟件”。 需要的不是更新跟進(jìn)S3各種花里胡哨的新功能(S3 Vector/S3 Table),而是扎扎實(shí)實(shí)的修 Bug 和安全漏洞。
這種維護(hù)狀態(tài)的軟件,搞一個(gè) LTS,社區(qū)自發(fā)維護(hù)起來(lái)并不難。如果 MinIO 團(tuán)隊(duì)不愿意繼續(xù)維護(hù), 老馮覺得社區(qū)里會(huì)自發(fā)涌現(xiàn)出接棒的人選 —— 畢竟現(xiàn)在有很多商業(yè)存儲(chǔ)硬件公司都在用 MinIO。 比起自己從零瞎搞一個(gè)對(duì)象存儲(chǔ),接手一個(gè)成熟的項(xiàng)目,反而是更省事的選擇。
專欄:數(shù)據(jù)庫(kù)老司機(jī)
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺(tái)“網(wǎng)易號(hào)”用戶上傳并發(fā)布,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.