Snel antwoord
Hoe host ik mijn eigen S3-compatibele objectopslag op een gehuurde server?
Om je eigen S3-compatibele objectopslag op een gehuurde server te hosten, draai je Garage, SeaweedFS, Ceph RGW of MinIO, gebouwd uit de broncode, op één machine met veel schijven, en kies je daarna waar redundantie zit: erasure coding in de objectopslag of ZFS RAIDZ2 eronder. De repository van MinIO is op 25 april 2026 gearchiveerd. Basalthold Hold 100 heeft 100 TB voor US$ 377,05, alleen crypto, zonder KYC.
Wat levert één gehuurde machine een objectopslag op?
| Machine | Storage dedicated servers: a whole physical machine built around a bank of hard drives, rented to one customer, with root access to every drive |
|---|---|
| Schijven bij levering | Het besturingssysteem staat op een eigen SSD (twee gespiegelde SSD's bij de grotere configuraties); de dataschijven worden leeg en ongepartitioneerd geleverd, zodat je ZFS, een mdadm-array of een set losse schijven kunt bouwen. Wil je dat het team een RAID 6- of RAID 10-array voorbereidt vóór de levering, meld dat dan bij support voordat de server wordt overgedragen |
| Hold 100 | Intel Xeon Silver 4210R (10 cores / 20 threads), 128 GB DDR4 ECC, 10 × 10 TB harde schijven (100 TB raw) plus 2 × 480 GB SSD voor het systeem, gespiegeld, 1 Gbit/s-poort met 120 TB verkeer per 30 dagen, 1 IPv4 en een IPv6 /64 |
| Hold 160 | AMD EPYC 7302P (16 cores / 32 threads), 128 GB DDR4 ECC, 10 × 16 TB harde schijven (160 TB raw) plus 2 × 480 GB SSD voor het systeem, gespiegeld, 1 Gbit/s-poort met 200 TB verkeer per 30 dagen, 1 IPv4 en een IPv6 /64 |
| Systemen | Debian 13, Debian 12, Ubuntu 24.04 LTS, AlmaLinux 10, Rocky Linux 10, Proxmox VE 9 en Proxmox Backup Server 4 |
| Versleuteling | Je kunt elke dataschijf versleutelen met LUKS of native ZFS-encryptie; de sleutels blijven bij jou en niemand in het team vraagt er ooit naar |
| Netwerk | Elke server heeft een poort van 1 Gbit/s met een maandelijkse verkeerslimiet (Hold 24 40 TB, Hold 40 60 TB, Hold 100 120 TB, Hold 160 200 TB), één toegewezen IPv4-adres en een IPv6 /64; de limiet overschrijden leidt nooit tot een automatische factuur |
| Prijs per 30 dagen | Hold 24 $110,99, Hold 40 $201,09, Hold 100 $377,05, Hold 160 $561,39 |
| Betaling | Alleen crypto: BTC, USDT, USDC, ETH, SOL, LTC. Geen KYC: geen ID, geen selfie, geen documenten, geen kaart en geen telefoonnummer, op geen enkel moment |
Welke S3-server moet ik op één machine draaien?
Kies de S3-server op basis van de functies die je clients nodig hebben, en bepaal daarna de machinegrootte. De onderstaande versies zijn de nieuwste stabiele releases op de eigen pagina's van de projecten, gelezen op 2 november 2026.
Vier S3-servers op één machine (gelezen 2026-11-02)
| Server | Nieuwste release | Licentie | Redundantie op één machine | Versioning / object lock |
|---|---|---|---|---|
| Garage | v2.5.0, 24 oktober 2026 | AGPLv3, geschreven in Rust | Geen van Garage met replication_factor = 1: zet ZFS of mdadm eronder | Nee / nee |
| SeaweedFS | 4.52, 2 november 2026 | Apache 2.0, geschreven in Go | Replicatie, of Reed-Solomon 10+4 erasure coding op sealed volumes | Ja / ja |
| Ceph RGW | Ceph 21.2.0 "Umbrella", 28 oktober 2026 | LGPL 2.1 of 3, geschreven in C++ | Gerepliceerde of erasure-coded pools; één OSD per schijf | Ja / ja |
| MinIO community edition | RELEASE.2025-10-15T17-29-55Z, alleen de bron | AGPLv3; repository gearchiveerd in april 2026 | Erasure coding over de schijven | Ja / ja |
Garage's S3-compatibiliteitspagina noemt versioning en object lock als ontbrekend. Ceph documenteert object lock in zijn RGW bucket-operaties.
- Garage is het lichtst: de site vraagt om 1 GB RAM. Zonder versioning of object lock past het beter bij sync-doelen en app-opslag dan bij vergrendelde back-ups.
- SeaweedFS documenteert versioning, object lock en erasure coding, allemaal onder Apache 2.0. De projectpagina zegt dat het gebouwd is voor miljarden bestanden, en de erasure coding werkt per volume.
- Ceph RGW is de keuze als je van plan bent naar meerdere machines te groeien. Op één host is het zwaar: Ceph's eigen docs noemen single-host clusters over het algemeen niet geschikt voor productie.
- MinIO draait nog, maar de gratis editie krijgt geen updates meer; zie het beste alternatief voor MinIO.
Erasure coding of ZFS: waar hoort de redundantie te zitten?
Stop redundantie in één laag. Erasure coding bovenop RAIDZ2 betaalt dubbel voor pariteit en levert op één machine weinig op.
Ontwerp A: losse schijven, erasure coding in de object store. MinIO, SeaweedFS en Ceph splitsen elk object in data- en pariteitshards over de schijven. Een uitgevallen schijf kost alleen de shards erop, en de store heelt object voor object.
Ontwerp B: een ZFS-pool, geen redundantie in de object store. Bouw RAIDZ2 en draai dan Garage met één replica of SeaweedFS zonder replicatie. ZFS checksumt elk blok, repareert vanuit pariteit en geeft je snapshots en compressie op de hele pool.
Onze visie: op één gehuurde machine is Ontwerp B eenvoudiger te draaien en makkelijker te redden. Eén zpool status toont de gezondheid van elke schijf. ZFS-snapshots beschermen ook tegen een verwijderde bucket. Ontwerp A wint als je per object wilt healen of later machines wilt toevoegen.
Garage vereist Ontwerp B. De quick start zegt dat een single-node-opstelling helemaal geen redundantie geeft. Met één kopie kunnen Garage's checksums een slecht blok detecteren, maar niet herbouwen.
Hoeveel bruikbare ruimte houdt elke opstelling over?
De bruikbare ruimte hangt af van hoeveel schijven pariteit bevatten. OpenZFS geeft de RAIDZ-regel: N schijven met P pariteit bevatten ongeveer (N − P) × de schijfomvang. MinIO's standaardpariteit is EC:4 voor sets van 8 schijven of meer en EC:2 voor 5 of minder. SeaweedFS's 10+4-code slaat ongeveer 1,4 keer de data op.
Bruikbare capaciteit per hold, vóór overhead van het bestandssysteem
| Hold | Schijven | ZFS-opstelling → bruikbaar | MinIO standaardpariteit → bruikbaar | SeaweedFS 10+4 → bruikbaar |
|---|---|---|---|---|
| Hold 24 | 2 × 12 TB HDD | Mirror → 12 TB | 1 data + 1 pariteit → 12 TB | — |
| Hold 40 | 4 × 10 TB HDD | RAIDZ2 → 20 TB (RAIDZ1 → 30 TB) | EC:2 → 20 TB | — |
| Hold 100 | 10 × 10 TB HDD | RAIDZ2 → 80 TB | EC:4 → 60 TB | ongeveer 71 TB |
| Hold 160 | 10 × 16 TB HDD | RAIDZ2 → 128 TB | EC:4 → 96 TB | ongeveer 114 TB |
Berekeningen op basis van de schijfaantallen, met 1 TB = 10^12 bytes zoals schijven worden verkocht. MinIO's pariteit kan lager: EC:2 op 10 schijven houdt 80% over, hetzelfde als RAIDZ2. Holds met twee schijven hebben geen ruimte voor een 10+4-code.
RAIDZ2 op tien schijven overleeft twee storingen, en MinIO op EC:2 ook. De standaard EC:4 overleeft er vier, tegen de prijs van 20 punten extra ruwe ruimte. Grote schijven kosten veel tijd om te herbouwen, dus lees hoe lang een RAIDZ2-herbouw duurt met grote schijven voordat je voor enkele pariteit kiest.
Hoe lang duurt de eerste upload?
Bij 1 Gbit/s is het beste geval 125 MB per seconde. Het vullen van Hold 100 na RAIDZ2 (80 TB) duurt minstens 7,4 dagen. Het vullen van Hold 160 (128 TB) duurt minstens 11,9 dagen.
Dit zijn berekeningen op lijnsnelheid, geen metingen: echte overdrachten lopen langzamer. De maandelijkse limiet van elke hold is groter dan één volledige vulling: Elke server heeft een poort van 1 Gbit/s met een maandelijkse verkeerslimiet (Hold 24 40 TB, Hold 40 60 TB, Hold 100 120 TB, Hold 160 200 TB), één toegewezen IPv4-adres en een IPv6 /64; de limiet overschrijden leidt nooit tot een automatische factuur. Plan een grote migratie in parallelle streams, bijvoorbeeld met rclone copy --transfers 16.
Hoe stel ik Garage in op een ZFS-pool?
Dit is Ontwerp B op Hold 100: tien dataschijven in RAIDZ2, metadata op de gespiegelde systeem-SSD's. De deployment guide van Garage zet metadata op SSD en data op harde schijven. Vervang de apparaatnamen en secrets door je eigen waarden.
# 1. RAIDZ2 pool on the ten blank data drives (use /dev/disk/by-id names)
zpool create -o ashift=12 tank raidz2 /dev/disk/by-id/ata-HDD1 /dev/disk/by-id/ata-HDD2 ... /dev/disk/by-id/ata-HDD10
zfs create -o compression=lz4 -o atime=off tank/garage
# 2. /etc/garage.toml (metadata on the system SSD, data on the pool)
metadata_dir = "/var/lib/garage/meta"
data_dir = "/tank/garage"
db_engine = "sqlite"
replication_factor = 1
rpc_bind_addr = "[::]:3901"
rpc_public_addr = "127.0.0.1:3901"
rpc_secret = "<openssl rand -hex 32>"
[s3_api]
s3_region = "garage"
api_bind_addr = "[::]:3900"
[admin]
api_bind_addr = "127.0.0.1:3903"
admin_token = "<openssl rand -base64 32>"
# 3. Layout, bucket and key
garage status
garage layout assign -z dc1 -c 70T NODE_ID # NODE_ID from garage status; leave headroom
garage layout apply --version 1
garage bucket create backups
garage key create backup-key
garage bucket allow --read --write --owner backups --key backup-keyGarage beantwoordt S3-calls op poort 3900 via gewoon HTTP, dus zet er een TLS-proxy zoals Caddy of nginx voor. Sluit 3901 en 3903 af van het internet. Garage heeft geen object lock, dus die taak nemen ZFS-snapshots over. De methode staat op hoe je back-ups immutable maakt op je eigen server.
Is een gehuurde server goedkoper dan cloud-objectopslag?
Per terabyte kosten de tien-schijf-holds minder dan Backblaze B2 of Wasabi, en de server rekent geen egress of API-calls. Hold 100 kost $3.77/TB per ruwe TB en Hold 160 $3.50/TB. Per 2 November 2026 vermeldt Backblaze B2 $6.95 per TB per maand en Wasabi $7.99.
Ruw is echter niet bruikbaar. RAIDZ2 op tien schijven houdt 80% over, dus elke bruikbare TB kost een kwart meer dan elke ruwe TB. Beide tien-schijf-holds blijven ook dan onder B2. Op een hold met twee schijven halveert een mirror de ruimte, en wint de cloud. De cloud bewaart je data ook op meer dan één plek, wat één server niet doet. De volledige som, met egress, staat op is een gehuurde storage-server goedkoper dan Backblaze B2 of Wasabi. Elke hold staat op de prijzenpagina van Basalthold.
Self-hosted S3: snelle antwoorden
Kan ik S3-compatibele opslag draaien op één gehuurde server?
Ja. Garage, SeaweedFS en MinIO draaien allemaal op één machine, en Ceph RGW kan dat met zijn single-host-instellingen. Bescherm de data met RAIDZ2 eronder of erasure coding over de schijven, nooit met niets. Eén server is nog steeds één plek, dus houd een tweede kopie ergens anders.
Hoeveel RAM heeft een self-hosted S3-server nodig?
Garage vraagt om 1 GB. Ceph is de hongerige: de docs raden minstens 6 GiB per hard-drive-OSD aan, dus tien schijven willen ongeveer 60 GiB. ZFS gebruikt RAM ook als cache; zie hoeveel RAM ZFS nodig heeft. Hold 100 en Hold 160 hebben 128 GB DDR4 ECC.
Welke self-hosted S3-server ondersteunt object lock voor back-ups?
SeaweedFS, Ceph RGW en MinIO ondersteunen object lock; Garage niet. Object lock voorkomt dat een objectversie wordt verwijderd tot de retentiedatum. Bescherm bij Garage back-ups met ZFS-snapshots of een append-only back-uptool.
Kan ik de schijven onder mijn objectopslag versleutelen?
Ja. Je kunt elke dataschijf versleutelen met LUKS of native ZFS-encryptie; de sleutels blijven bij jou en niemand in het team vraagt er ooit naar. Een remote reboot vereist dan een manier om de sleutel in te voeren; LUKS op afstand ontgrendelen laat er een zien.
Is MinIO nog gratis self-hostbaar?
De communitycode blijft onder AGPLv3, maar de repository is in april 2026 gearchiveerd en krijgt geen updates meer. MinIO verwijst communitygebruikers nu naar AIStor Free, een single-node editie onder een gratis licentie die herdistributie en doorverkoop beperkt.
Bronnen (18)
- Garage-releases (v2.5.0) — Deuxfleurs (read 2026-11-02)
- Garage-startpagina (hardwarevereisten) — Deuxfleurs (read 2026-11-02)
- Garage quick start — Deuxfleurs (read 2026-11-02)
- Garage: S3 compatibility status — Deuxfleurs (read 2026-11-02)
- Garage: deployment op een cluster — Deuxfleurs (read 2026-11-02)
- SeaweedFS release 4.52 — SeaweedFS (read 2026-11-02)
- SeaweedFS: erasure coding for warm storage — SeaweedFS (read 2026-11-02)
- SeaweedFS: Amazon S3 API — SeaweedFS (read 2026-11-02)
- v21.2.0 Umbrella released — Ceph (read 2026-11-02)
- Een nieuw Ceph-cluster uitrollen (single-host defaults) — Ceph documentation (read 2026-11-02)
- CPU- en geheugenafstemming — Ceph documentation (read 2026-11-02)
- RGW-bucketbewerkingen (object lock) — Ceph documentation (read 2026-11-02)
- MinIO-repository (gearchiveerd) — MinIO (read 2026-11-02)
- MinIO erasure code quickstart-handleiding — MinIO (read 2026-11-02)
- MinIO storage class (standaardpariteit) — MinIO (read 2026-11-02)
- MinIO object lock- en immutability-handleiding — MinIO (read 2026-11-02)
- SeaweedFS-repository (beschrijving, licentie) — SeaweedFS (read 2026-11-02)
- RAIDZ — OpenZFS documentation (read 2026-11-02)
Huur de schijven voor je eigen S3
Hold 100: 10 × 10 TB HDD voor US$ 377,05. Hold 160: 10 × 16 TB HDD voor US$ 561,39. Lege dataschijven en root via SSH. Betalen met crypto, zonder KYC.
- DomaineGoat LLC, geregistreerd in Panama
- Prijzen onderzocht bij 23 storageverkopers, 2 november 2026
- Zonder KYC, zonder documenten
- Je encryptiesleutels blijven van jou