s3教學 - 是否存在在本地提供Amazon S3樣式API的服務器?




s3 browser教學 (5)

minio對此很有用。 用Go編寫,易於部署。

我們製作分佈式軟件,在a)數據庫或b)Amazon S3中存儲一些數據(附件)。 使用該數據庫是因為它不需要其他配置。 Amazon S3是更好的選擇。

我們現在想要的是一個不想使用Amazon S3的客戶的解決方案。 我們顯然可以只使用文件系統,但如果有多個Web服務器並且需要復製文件,這可能會有問題; 它還要求我們編寫額外的代碼來處理可能發生的各種問題。

如果有一台服務器軟件基本上複製了Amazon S3的API,我們會優先考慮。 這樣我們的客戶就可以在一個盒子上安裝服務器; 我們不需要更改任何代碼。 所以......那裡有沒有這樣的軟件?


你看過Cloudian嗎? 我們在公司內部使用它來開發我們的S3應用程序。 我使用的社區版可以免費提供高達10TB的存儲空間。 它具有相當不錯的S3覆蓋率或者至少覆蓋了我的應用程序使用的大部分內容(我使用版本控制和分段上傳,所以我認為我的應用程序是高級的)。 它生成的版本ID和多部分ID等與您從AWS獲得的版本不同,但是到目前為止boto沒有任何抱怨。 它也適用於我嘗試過的s3fs和其他s3桶瀏覽器。

在我看來,它是針對AWS S3 API進行開發的一個很好的工具,應該滿足您的要求。 您可以將應用程序指向您當地的Cloudian服務器,然後在準備好生產時,您可以將其指向亞馬遜。 你的里程可能有所不同......祝你好運。


我最近開始使用Skylable來滿足我的S3需求,它是免費的(GPL)。 它們的對象存儲支持複製,HA和重複數據刪除,並且它完全兼容S3。 如果您不需要冗餘,則可以在單個服務器(鐵,虛擬機或容器)上運行其軟件,或者如果您需要HA,則可以使用更多節點。

每個桶可以選擇副本的數量,就像使用Swift一樣。 我從副本2中的2個節點開始,隨著用戶群開始增長,添加了更多節點,以應對額外的網絡流量和空間需求。

添加更多節點非常簡單,可以在實時集群上完成。

根據我的經驗,Skylable被證明比Swift更快,更可靠。 它是用C和OCaml編寫的,它沒有被解釋。 內存佔用率非常低,因此我甚至可以在一些便宜的VPS上運行節點。

最近他們宣布將開發Swift API,顯然他們的目標是取代Swift。


正如之前已經提到過的:您可以嘗試使用Swift作為Amazon S3替代方案。 看一下SwiftFS文件系統,它允許您將存儲在Swift中的OpenStack容器作為本地文件系統掛載。


雖然最初的問題是關於S3兼容軟件(似乎)生產使用,但許多人對同一軟件感興趣,但對於本地開發和測試。

關於生產就緒的解決方案,有一個很棒的S3兼容存儲軟件叫做Riak CS ,它經過多年的穩定和生產驗證,一個缺點 - 設置起來並不簡單。 有一些限制,但沒有任何重大問題,請參閱api /兼容性documentation

已經為開發和測試提供了一些很好的答案,這對Docker用戶來說很有用 - 還有docker-riak-cs圖像,可以快速啟動Riak CS實例。 我已經使用它近兩年進行本地開發和集成測試,取得了巨大的成功。







amazon-s3