4 ポイント 投稿者 GN⁺ 2025-12-20 | 1件のコメント | WhatsAppで共有
  • Garage は、データセンター外の環境でも安定して動作できる S3互換オブジェクトストレージ
  • 単一の 依存関係のないバイナリ として提供され、あらゆるLinuxディストリビューションで容易に実行可能
  • データは 3つのゾーン(zone) に複製され、高い 冗長性と耐障害性 を確保
  • Amazon S3 API を実装し、Nextcloud、Matrix、Mastodon など多様なアプリケーションと互換
  • 低いハードウェア要件と公開研究に基づく設計により、分散システムへのアクセス性を拡大

概要

  • Garage は データセンター外でも安定運用可能なS3オブジェクトストレージ であり、インターネットを通じて複数のデータセンターにまたがって実行可能
  • Webサイトホスティングメディア保存バックアップ先 など、さまざまな用途に利用可能

設計目標

  • 軽量性と効率性 を重視して開発されたシステム
    • 単一の 依存関係のない実行ファイル として配布され、すべてのLinuxディストリビューションで動作
    • 迅速なデプロイと安全な運用 のため、システム管理者に優しい設計
  • あらゆる環境でデプロイ可能 なように設計され、専用バックボーンネットワークがなくてもインターネット上で複数データセンター間の運用が可能
  • ネットワーク障害、遅延、ディスク障害、オペレーターのミス にも耐えられる高い 復元力 を確保

最小要件

  • CPU: 過去10年以内の x86_64、ARMv7 または ARMv8
  • RAM: 1GB
  • ディスク容量: 最低 16GB
  • ネットワーク: 遅延 200ms 以下、帯域幅 50Mbps 以上
  • 異種ハードウェア対応 により、中古機材を活用したクラスター構成が可能

データ復元性と互換性

  • 各データチャンク(chunk)は 3つのゾーンに複製 されて保存
  • Amazon S3 API を実装し、既存アプリケーションと即座に互換
    • 対応例: NextcloudMatrixCyberduckMastodonRclonePeerTube

技術的基盤

  • Garage は最新の 分散システム研究成果 に基づいて設計
    • Amazon の Dynamo キー・バリューストア
    • Conflict-Free Replicated Data Types (CRDTs)
    • Maglev ソフトウェアネットワークロードバランサー

後援と資金支援

  • Garage プロジェクトは複数回にわたり 公的資金支援 を受けている
    • 2021–2022: NGI POINTER – 3人のフルタイムスタッフを1年間支援
    • 2023–2024: NLnet / NGI0 Entrust – 1人のフルタイムスタッフを1年間支援
    • 2025: NLnet / NGI0 Commons Fund – 1.5人分のフルタイムスタッフを1年間支援
  • 欧州連合の Horizon 2021 研究・イノベーションプログラム および Next Generation Internet プログラムから財政支援を受けている
  • 追加の後援や支援契約を通じた参加も可能(連絡先: garagehq@deuxfleurs.fr)

1件のコメント

 
GN⁺ 2025-12-20
Hacker Newsのコメント
  • 最近の社内テストで Garage をかなり広範に検証した
    デプロイは MinIO より 少し簡単だったが、高速性能では劣っていた
    25G NIC 環境では MinIO は 20〜25Gbps に達した一方、Garage は約 5Gbps 程度に制限されていた
    Garage はこうした高性能ユースケースを狙っていないという印象だった
    次は RustFSCeph/Rook もあわせて検討する予定だ
    MinIO の最近の方向性のため、結局は別の代替案を探す必要がありそうだ

    • Garage は公式に 最高性能を目標にしていない
      「高性能は設計とインフラを制約するため、私たちは ミニマリズムによる性能 を追求する」という思想だ
      Design Goals ドキュメント
      ただし、性能ボトルネックがどこで発生しているのかは興味深い点だ。MinIO より並列処理が少ないのかもしれない
    • S3 だけが必要なら Rook は勧めない
      複雑さが非常に高く、きちんと理解していないとクラスターが壊れたときの復旧が難しい
    • テスト候補に SeaweedFS も入れてみることを勧める
  • ローカル開発用としては興味深いプロジェクトに見える
    ただし 本番設定ガイド を見ると少し不安になる
    Garage はメタデータ保存時に独自の チェックサムおよび整合性検証 を行わないため、BTRFS や ZFS のようなファイルシステムを推奨している
    既定の LMDB エンジンは異常終了時にデータ破損のリスクがあり、定期的なスナップショットが必要だ
    SQLite も使えるが、デフォルト DB が電源障害に弱いというのは意外だった

    • トランザクション対応、高速、Rust バインディング、標準でのチェックサムおよび整合性検証をすべて備えた組み込み KV ストアを知っていれば教えてほしいとのこと
      すぐに Garage に統合するつもりだという
    • ローカル開発では MinIO を使ってきたが、そのバージョンはもう保守されていない
      Garage の最小要件が RAM 1GB という点はやや重く感じた
    • 電源障害時のデータ破損問題はソフトウェアだけで完全に解決するのは難しい
      PLP(電源断保護) 機能付きの NVMe ドライブや UPS の利用を勧める
  • MinIO 騒動以降、Garage の採用が急増しているのを見ている
    Repoflow のベンチマーク比較記事 が有用だった
    RustFS も興味深かったが、技術的ではない理由で候補から外した
    MinIO を置き換える際のコツがあれば聞きたい

    • 自分では使っていないが Versity S3 Gateway も良さそうだ
      GitHub リンク 参照
      Ceph S3 Gateway との比較も気になる
    • RustFS を除外した理由が気になるという質問があった
    • 以前の議論や業務での経験から、Garage は安定した代替候補に見える
    • ベンチマークでは SeaweedFS も良い性能を示していた
  • Deuxfleurs 公式サイト はこれまで見たウェブサイトの中でもっとも 美しいデザイン

    • 芸術的には素晴らしいが、可読性 とアクセシビリティはやや低い
  • ローカル開発とテスト用に Garage を使っている
    s5cmd と組み合わせると、15GB・6万個以上のオブジェクトを 60 秒以内にシードできる
    Docker で API、DB、キャッシュ、オブジェクトコンテナを含む ステージング環境の複製 が 2 分以内に完了する
    設定は非常に簡単で、安定して動作している
    以前は LocalStack S3 を使っていたが、永続性の不足 が問題で、MinIO OSS も保守終了になった
    SeaweedFS と RustFS も検討したが、Garage がもっとも手軽だった

  • Garage はテストコードとベンチマークで 非常に印象的だった
    単一バイナリでデプロイが簡単で、ドキュメントも充実している
    ただし オブジェクトタグ機能の欠如 は大きな不満点だった
    クラウド API の世界ではタグは基本機能なので、この点が改善されてほしい

    • 開発チームはフィードバックに感謝すると返答していた
  • Garage は本当に気に入っている
    単なる S3 代替以上の存在で、ハイパーコンバージドアーキテクチャ でも有用だ
    ローカルマシンでまずデータを読み、必要なときだけネットワークを使う構造が見事だ

    • どんな構成で使っているのか気になるという質問があった
  • Erasure coding がない点は、耐障害性と効率の面で大きな損失だ

    • LTO テープライブラリで使おうとしたが、レプリケーションベースの耐障害性 しか提供されないのが気がかりだった
      ハードウェア障害時にどう復旧されるのかが主な懸念だった
  • データエンジニアリング用スクリプトで Garage が役立った
    たいていのツールが S3 統合をサポートしているので、Garage にデータをダンプして後でクラウドへ拡張しやすい

  • 最近 Garage をテストしてみた
    約 300 件のドキュメント(1GB)をアップロードした後に削除しようとしたところ、S3 サービスが コンテナ内でクラッシュ し、再起動が必要になった
    すばらしいプロジェクトではあるが、自分の経験ではまだ 信頼性 が不足している