4 poin oleh GN⁺ 2025-12-20 | 1 komentar | Bagikan ke WhatsApp
  • Garage adalah penyimpanan objek kompatibel S3 yang dapat beroperasi stabil bahkan di lingkungan di luar pusat data
  • Tersedia sebagai biner tunggal tanpa dependensi sehingga mudah dijalankan di semua distribusi Linux
  • Data direplikasi ke 3 zona (zone) untuk memastikan redundansi dan toleransi kesalahan yang tinggi
  • Mengimplementasikan Amazon S3 API sehingga kompatibel dengan berbagai aplikasi seperti Nextcloud, Matrix, dan Mastodon
  • Dengan kebutuhan perangkat keras yang rendah dan desain berbasis riset terbuka, Garage memperluas aksesibilitas sistem terdistribusi

Gambaran umum

  • Garage adalah penyimpanan objek S3 yang dapat dioperasikan secara stabil di luar pusat data, dan dapat dijalankan lintas beberapa pusat data melalui internet
  • Dapat digunakan untuk berbagai keperluan seperti hosting situs web, penyimpanan media, dan target cadangan

Tujuan desain

  • Sistem ini dikembangkan dengan menitikberatkan pada ringan dan efisien
    • Didistribusikan sebagai berkas eksekusi tunggal tanpa dependensi dan berjalan di semua distribusi Linux
    • Dirancang ramah administrator sistem untuk deployment cepat dan operasi yang aman
  • Dirancang agar dapat di-deploy di semua lingkungan, sehingga bisa dijalankan antar beberapa pusat data melalui internet tanpa jaringan backbone khusus
  • Memiliki ketahanan tinggi terhadap gangguan jaringan, latensi, kesalahan disk, dan kesalahan operator
Iklan

Persyaratan minimum

  • CPU: x86_64, ARMv7, atau ARMv8 dari 10 tahun terakhir
  • RAM: 1GB
  • Ruang disk: minimal 16GB
  • Jaringan: latensi 200ms atau kurang, bandwidth 50Mbps atau lebih
  • Dengan dukungan perangkat keras heterogen, klaster dapat dibangun menggunakan perangkat bekas

Ketahanan data dan kompatibilitas

  • Setiap potongan data (chunk) disimpan dengan replikasi ke 3 zona
  • Mengimplementasikan Amazon S3 API sehingga langsung kompatibel dengan aplikasi yang sudah ada
    • Contoh dukungan: Nextcloud, Matrix, Cyberduck, Mastodon, Rclone, PeerTube
Iklan

Dasar teknis

  • Garage dirancang berdasarkan capaian terbaru dalam riset sistem terdistribusi
    • Penyimpanan key-value Dynamo dari Amazon
    • Conflict-Free Replicated Data Types (CRDTs)
    • Load balancer jaringan perangkat lunak Maglev

Sponsor dan pendanaan

  • Proyek Garage telah beberapa kali menerima dukungan dana publik
    • 2021–2022: NGI POINTER – dukungan 1 tahun untuk 3 pegawai penuh waktu
    • 2023–2024: NLnet / NGI0 Entrust – dukungan 1 tahun untuk 1 pegawai penuh waktu
    • 2025: NLnet / NGI0 Commons Fund – dukungan 1 tahun untuk 1,5 pegawai penuh waktu
  • Menerima dukungan finansial dari program riset dan inovasi Horizon 2021 Uni Eropa serta program Next Generation Internet
  • Dukungan tambahan atau partisipasi melalui kontrak sponsorship juga dimungkinkan (kontak: garagehq@deuxfleurs.fr)

1 komentar

 
GN⁺ 2025-12-20
Komentar Hacker News
  • Baru-baru ini kami menguji Garage secara cukup luas dalam pengujian internal
    Deploy-nya sedikit lebih sederhana dibanding MinIO, tetapi tertinggal dalam performa tinggi
    Di lingkungan 25G NIC, MinIO bisa mencapai 20~25Gbps, sedangkan Garage terbatas di kisaran 5Gbps
    Kesan saya, Garage memang tidak menargetkan kasus penggunaan berperforma tinggi seperti ini
    Berikutnya saya berencana meninjau RustFS dan Ceph/Rook juga
    Karena arah terbaru MinIO, sepertinya pada akhirnya kami memang harus mencari alternatif lain

    • Garage secara resmi memang tidak menargetkan performa tertinggi
      Filosofinya adalah, “performa tinggi membatasi desain dan infrastruktur, jadi kami mengejar performa melalui minimalisme
      (dokumen Design Goals)
      Meski begitu, menarik juga melihat di mana bottleneck performanya muncul. Mungkin paralelismenya lebih sedikit dibanding MinIO
    • Kalau hanya butuh S3, saya tidak merekomendasikan Rook
      Kompleksitasnya sangat tinggi, jadi kalau tidak benar-benar memahaminya, akan sulit memulihkan cluster saat rusak
    • Saya sarankan menambahkan SeaweedFS ke daftar pengujian juga
  • Ini terlihat seperti proyek yang menarik untuk pengembangan lokal
    Tetapi setelah melihat panduan konfigurasi production, saya agak khawatir
    Garage merekomendasikan filesystem seperti BTRFS atau ZFS karena saat menyimpan metadata, ia tidak melakukan checksum dan verifikasi integritas sendiri
    Engine LMDB bawaan punya risiko kerusakan data saat shutdown tidak normal, sehingga snapshot berkala diperlukan
    SQLite juga bisa dipakai, tetapi cukup mengejutkan bahwa DB default-nya rentan terhadap mati listrik

    • Jika ada yang tahu embedded KV store yang mendukung transaksi, cepat, punya binding Rust, serta checksum dan verifikasi integritas bawaan, beri tahu mereka
      Katanya itu akan langsung diintegrasikan ke Garage
    • Untuk pengembangan lokal saya biasa memakai MinIO, tetapi versinya sekarang sudah tidak lagi dipelihara
      Persyaratan minimum Garage yaitu RAM 1GB terasa agak membebani
    • Masalah kerusakan data saat mati listrik sulit diselesaikan sepenuhnya lewat software
      Disarankan menggunakan drive NVMe dengan fitur PLP (power loss protection) atau UPS
  • Setelah insiden MinIO, saya melihat adopsi Garage melonjak tajam
    Tulisan perbandingan benchmark dari Repoflow cukup berguna
    RustFS juga menarik, tetapi saya mengecualikannya karena alasan non-teknis
    Kalau ada tips saat mengganti MinIO, saya ingin mendengarnya

    • Saya belum memakainya langsung, tetapi Versity S3 Gateway juga terlihat bagus
      Lihat tautan GitHub
      Saya juga penasaran bagaimana perbandingannya dengan Ceph S3 Gateway
    • Ada yang bertanya kenapa RustFS dikecualikan
    • Dari diskusi sebelumnya dan pengalaman kerja, Garage terlihat sebagai alternatif yang stabil
    • Dalam benchmark, SeaweedFS juga menunjukkan performa yang baik
  • Situs resmi Deuxfleurs punya desain paling indah di antara website yang pernah saya lihat sejauh ini

    • Secara artistik memang luar biasa, tetapi keterbacaan dan aksesibilitasnya kurang baik
  • Saya memakai Garage untuk pengembangan lokal dan pengujian
    Dengan s5cmd, saya bisa melakukan seed 15GB dan lebih dari 60 ribu objek dalam waktu kurang dari 60 detik
    Replikasi lingkungan staging yang mencakup API, DB, cache, dan container objek dengan Docker selesai dalam waktu kurang dari 2 menit
    Konfigurasinya sangat sederhana dan sejauh ini berjalan stabil
    Sebelumnya saya memakai LocalStack S3, tetapi kurangnya persistensi menjadi masalah, dan MinIO OSS juga sudah dihentikan pemeliharaannya
    Saya juga meninjau SeaweedFS dan RustFS, tetapi Garage yang paling mudah digunakan

  • Garage sangat mengesankan dalam kode uji dan benchmark
    Deploy mudah karena berupa satu executable, dan dokumentasinya juga bagus
    Tetapi tidak adanya fitur object tagging cukup disayangkan
    Di dunia API cloud, tagging adalah fitur dasar, jadi saya berharap bagian ini bisa diperbaiki

    • Tim pengembang menjawab bahwa mereka menerima masukan itu dengan senang hati
  • Saya sangat menyukai Garage
    Lebih dari sekadar alternatif S3 yang sederhana, ini juga berguna dalam arsitektur hyper-converged
    Strukturnya keren: membaca data terlebih dahulu dari mesin lokal, lalu hanya memakai jaringan saat diperlukan

    • Ada yang bertanya konfigurasi seperti apa yang sedang dipakai
  • Tidak adanya erasure coding adalah kekurangan besar dari sisi toleransi kesalahan dan efisiensi

    • Saya sempat ingin memakainya di library tape LTO, tetapi saya khawatir karena hanya menyediakan toleransi kesalahan berbasis replikasi
      Kekhawatiran utamanya adalah bagaimana pemulihan dilakukan saat terjadi kegagalan hardware
  • Garage berguna dalam skrip data engineering
    Karena sebagian besar tool mendukung integrasi S3, mudah untuk membuang data ke Garage lalu memperluasnya ke cloud nanti

  • Baru-baru ini saya menguji Garage
    Setelah mengunggah sekitar 300 dokumen (1GB) lalu mencoba menghapusnya, layanan S3 crash di dalam container sehingga harus direstart
    Ini proyek yang keren, tetapi menurut pengalaman saya, keandalannya masih kurang