4 puan yazan GN⁺ 2025-12-20 | 1 yorum | WhatsApp'ta paylaş
  • Garage, veri merkezi dışındaki ortamlarda da kararlı şekilde çalışabilen S3 uyumlu nesne depolama çözümüdür
  • Tek bir bağımlılıksız ikili dosya olarak sunulur ve tüm Linux dağıtımlarında kolayca çalıştırılabilir
  • Veriler 3 bölgeye (zone) çoğaltılarak yüksek yedeklilik ve hata toleransı sağlar
  • Amazon S3 API'sini uyguladığı için Nextcloud, Matrix, Mastodon gibi çeşitli uygulamalarla uyumludur
  • Düşük donanım gereksinimleri ve kamuya açık araştırmalara dayanan tasarımıyla dağıtık sistemlerin erişilebilirliğini artırır

Genel Bakış

  • Garage, veri merkezi dışında da güvenilir biçimde işletilebilen bir S3 nesne depolama çözümüdür; internet üzerinden birden fazla veri merkezine yayılmış şekilde çalıştırılabilir
  • Web sitesi barındırma, medya depolama, yedekleme hedefi gibi çeşitli amaçlarla kullanılabilir

Tasarım Hedefleri

  • Hafiflik ve verimlilik odağıyla geliştirilmiş bir sistemdir
    • Tek bir bağımlılıksız çalıştırılabilir dosya olarak dağıtılır ve tüm Linux dağıtımlarında çalışır
    • Hızlı dağıtım ve güvenli işletim için sistem yöneticisi dostu şekilde tasarlanmıştır
  • Her ortamda dağıtılabilir olacak şekilde tasarlanmıştır; özel bir omurga ağ olmadan da internet üzerinde birden fazla veri merkezi arasında işletilebilir
  • Ağ kesintileri, gecikme, disk hataları ve operatör hataları karşısında dayanıklı olacak yüksek esneklik sunar

Minimum Gereksinimler

  • CPU: Son 10 yıl içinde üretilmiş x86_64, ARMv7 veya ARMv8
  • RAM: 1GB
  • Disk alanı: En az 16GB
  • : 200ms veya daha düşük gecikme, 50Mbps veya daha yüksek bant genişliği
  • Heterojen donanım desteği sayesinde ikinci el ekipmanlarla küme kurulabilir

Veri Dayanıklılığı ve Uyumluluk

  • Her veri parçası (chunk) 3 bölgeye çoğaltılarak saklanır
  • Amazon S3 API'sini uyguladığı için mevcut uygulamalarla hemen uyumludur
    • Destek örnekleri: Nextcloud, Matrix, Cyberduck, Mastodon, Rclone, PeerTube

Teknik Temel

  • Garage, modern dağıtık sistem araştırmalarının çıktıları temel alınarak tasarlanmıştır
    • Amazon'un Dynamo anahtar-değer deposu
    • Conflict-Free Replicated Data Types (CRDTs)
    • Maglev yazılım tabanlı ağ yük dengeleyicisi

Sponsorluk ve Finansman

  • Garage projesi birkaç kez kamu fonu desteği aldı
    • 2021–2022: NGI POINTER – 3 tam zamanlı çalışan için 1 yıllık destek
    • 2023–2024: NLnet / NGI0 Entrust – 1 tam zamanlı çalışan için 1 yıllık destek
    • 2025: NLnet / NGI0 Commons Fund – 1,5 tam zamanlı çalışan için 1 yıllık destek
  • Avrupa Birliği'nin Horizon 2021 araştırma ve inovasyon programı ile Next Generation Internet programından mali destek aldı
  • Ek sponsorluk veya destek sözleşmeleriyle katkı sağlanabilir (iletişim: garagehq@deuxfleurs.fr)

1 yorum

 
GN⁺ 2025-12-20
Hacker News yorumları
  • Yakın zamanda dahili testlerde Garage'ı oldukça kapsamlı biçimde doğruladık
    Dağıtımı MinIO'ya göre biraz daha kolaydı, ancak yüksek hız performansında geride kaldı
    25G NIC ortamında MinIO 20~25Gbps'ye kadar ulaşırken Garage yaklaşık 5Gbps seviyesinde sınırlı kaldı
    Garage'ın bu tür yüksek performanslı kullanım senaryolarını hedeflemediği izlenimini veriyor
    Bir sonraki aşamada RustFS ve Ceph/Rook da birlikte incelenecek
    MinIO'nun son dönemdeki yönelimi nedeniyle sonunda başka alternatifler aramamız gerekecek gibi görünüyor

    • Garage resmî olarak en yüksek performansı hedeflemiyor
      Felsefesi, “yüksek performans tasarım ve altyapıyı kısıtlar; biz ise minimalizm yoluyla performans peşindeyiz” şeklinde
      (Design Goals belgesi)
      Yine de performans darboğazının nerede oluştuğu ilginç bir nokta. MinIO'ya kıyasla daha az paralel işlem yapıyor olabilir
    • Yalnızca S3 gerekiyorsa Rook önerilmez
      Karmaşıklığı çok yüksektir; tam olarak anlaşılmazsa küme bozulduğunda kurtarmak zor olur
    • Test listesine SeaweedFS'i de eklemeniz önerilir
  • Yerel geliştirme için ilginç bir proje gibi görünüyor
    Ancak prodüksiyon yapılandırma kılavuzuna bakınca biraz ürkütüyor
    Garage, metadata depolarken kendi checksum ve bütünlük doğrulamasını yapmadığı için BTRFS veya ZFS gibi dosya sistemlerini öneriyor
    Varsayılan LMDB motorunda beklenmedik kapanma durumunda veri bozulması riski var, bu yüzden düzenli snapshot gerekiyor
    SQLite da kullanılabiliyor, ancak varsayılan veritabanının güç kesintisine karşı hassas olması şaşırtıcıydı

    • Transaction desteği, yüksek hız, Rust binding'leri, yerleşik checksum ve bütünlük doğrulamasını bir arada sunan gömülü bir KV store bilen varsa haber vermeleri istenmiş
      Hemen Garage'a entegre edeceklerini söylüyorlar
    • Yerel geliştirmede MinIO kullanıyordum, ancak o sürüm artık bakımı yapılmıyor
      Garage'ın asgari gereksiniminin 1GB RAM olması biraz külfetli geldi
    • Güç kesintisinde veri bozulması sorunu yazılımla tamamen çözülemez
      PLP (power loss protection) özelliğine sahip NVMe sürücüler veya UPS kullanılması öneriliyor
  • MinIO olayından sonra Garage benimsenmesinin hızla arttığını görüyorum
    Repoflow'un benchmark karşılaştırma yazısı faydalıydı
    RustFS de ilginçti, ancak teknik olmayan nedenlerle elendi
    MinIO'yu değiştirirken işe yarayan ipuçları varsa duymak isterim

    • Kendim kullanmadım ama Versity S3 Gateway de iyi görünüyor
      GitHub bağlantısı incelenebilir
      Ceph S3 Gateway ile kıyaslaması da merak ediliyor
    • RustFS'in neden elendiği sorulmuş
    • Önceki tartışmalar ve iş deneyimine göre Garage istikrarlı bir alternatif gibi görünüyor
    • Benchmark'ta SeaweedFS de iyi performans göstermişti
  • Deuxfleurs resmî sitesi şimdiye kadar gördüğüm web siteleri arasında en güzel tasarıma sahip olanı

    • Sanatsal açıdan harika, ama okunabilirlik ve erişilebilirlik daha zayıf kalıyor
  • Yerel geliştirme ve test için Garage kullanıyorum
    s5cmd ile birlikte 15GB ve 60 binden fazla nesneyi 60 saniyeden kısa sürede seed edebiliyorum
    Docker ile API, DB, cache ve nesne konteynerlerini içeren bir staging ortamı kopyası 2 dakikadan kısa sürede tamamlanıyor
    Yapılandırması çok basit ve kararlı biçimde çalışıyor
    Daha önce LocalStack S3 kullanıyordum ama kalıcılık eksikliği sorundu; MinIO OSS'nin de bakımı durduruldu
    SeaweedFS ve RustFS'i de değerlendirdim, ancak Garage en kolay olanıydı

  • Garage test kodu ve benchmark'larda çok etkileyiciydi
    Tek bir çalıştırılabilir dosya olarak dağıtılması kolay ve dokümantasyonu iyi
    Ancak nesne etiketleme özelliğinin olmaması büyük bir eksiydi
    Bulut API dünyasında etiketler temel bir özellik, bu yüzden bu tarafın iyileşmesini umuyorum

    • Geliştirme ekibi geri bildirimi memnuniyetle aldıklarını söylemiş
  • Garage'ı gerçekten seviyorum
    Basit bir S3 alternatifinden fazlası; hyper-converged architecture içinde de faydalı
    Veriyi önce yerel makineden okuyup yalnızca gerektiğinde ağı kullanma yapısı çok hoş

    • Hangi yapılandırmayla kullandığı sorulmuş
  • Erasure coding olmaması, hata toleransı ve verimlilik açısından büyük bir kayıp

    • Bunu bir LTO tape library ile kullanmak istemiştim, ancak yalnızca replikasyon tabanlı hata toleransı sunması endişe vericiydi
      Donanım arızasında nasıl toparlandığı temel endişeydi
  • Veri mühendisliği script'lerinde Garage faydalı oldu
    Araçların çoğu S3 entegrasyonunu desteklediği için, veriyi Garage'a dump edip daha sonra buluta genişletmek kolay oluyor

  • Yakın zamanda Garage'ı test ettim
    Yaklaşık 300 belgeyi (1GB) yükledikten sonra silmeye çalıştım, ancak S3 servisi konteyner içinde crash oldu ve yeniden başlatmak zorunda kaldım
    Harika bir proje ama benim deneyimime göre hâlâ güvenilirlik açısından yetersiz