VaultS3 presenteert zich als een innovatieve optie voor het implementeren van objectopslag compatibel met Amazon S3 binnen eigen infrastructuur, met een ongebruikelijke aanpak: één enkel uitvoerbaar bestand, zonder verplichte externe services, en een inactief geheugenverbruik dat door de ontwikkelaar wordt geschat op ongeveer 17 MiB. Het project betreedt een markt waar zowel beheerde diensten zoals Amazon S3 als gevestigde open source-platformen zoals Ceph, Garage en SeaweedFS bestaan.
De kernpunten van VaultS3 in 20 seconden
- VaultS3 implementeert meer dan 80 API-operaties van S3 en wordt als één enkel binair bestand aangeboden.
- De ontwikkelaar schat dat het ongeveer 17 MiB RAM in rust gebruikt, hoewel het verbruik toeneemt bij belasting.
- Incluseert encryptie, IAM, OIDC, versiebeheer, Object Lock, Prometheus-metrics en erasure coding.
- Concurreren met alternatieven zoals Ceph, Garage, SeaweedFS en beheerde diensten zoals Amazon S3.
- De gedistribueerde modus van VaultS3 bevat nog enkele componenten in bètafase.
S3-compatibiliteit is een gangbare component geworden in veel opslagarchitecturen. Back-upapplicaties, analysetools, data repositories, Kubernetes en diverse enterprise-tools kunnen allemaal gebruikmaken van deze interface, ongeacht of de opslag wordt verzorgd door AWS of door eigen servers.
VaultS3 richt zich juist op dat tweede scenario, en probeert daarbij de complexiteit van sommige gedistribueerde oplossingen te vermijden. Het project is hoofdzakelijk ontwikkeld in Go en wordt uitgebracht onder de licentie AGPL-3.0.
Van 17 MiB in rust tot ongeveer 185 MiB onder belasting
Wat meteen opvalt, is het geheugen- en resourcegebruik. Volgens tests gepubliceerd door de ontwikkelaar gebruikt VaultS3 ongeveer 17 MiB RAM wanneer inactief.
Dat betekent niet dat het alle soorten workloads aankan met die hoeveelheid geheugen.
Bij een test waarin objecten van 64 MiB werden weggeschreven met een gelijktijdigheid van 16 operaties, kan het gebruik oplopen tot ongeveer 185 MiB. Het benodigde geheugen hangt dus af van het aantal connecties, de grootte van de objecten en de belasting op de server.
Bovendien zijn de beschikbare vergelijkingen voornamelijk afkomstig uit dezelfde projectpublicaties en vormen ze geen independently benchmark. Het is nuttig om de 17 MiB te beschouwen als een indicatie van de lichtgewicht basisprocessen, niet als een vaste vereiste voor productie-omgevingen.
VaultS3 concentreert veel functionaliteiten in één enkele executable. Het vereist geen externe databases om te starten, en gebruikt BoltDB voor metadatabeheer. Er zijn ook Docker-images, pakketten voor diverse Linux-distributies en Kubernetes-opties beschikbaar.
Daarnaast biedt VaultS3 een ingebouwde webinterface, ondersteuning voor AWS Signature Version 4 authenticatie, IAM, OIDC, LDAP integratie, AES-256-GCM encryptie, bucket-beleid, Prometheus-metrics en verschillende databeveiligingsmechanismen.
VaultS3 versus Ceph, Garage en SeaweedFS
Compatibele S3-oplossingen kennen voldoende alternatieven waarbij geheugengebruik slechts één van de vele overwegingen is voor selectie.
Een schetsmatige vergelijking helpt te positioneren waar elke oplossing past:
| Oplossing | Model | API S3 | Complexiteit | Voornaamste toepassing |
|---|---|---|---|---|
| VaultS3 | Open source, AGPL-3.0 | Ja | Laag in single-node | Labs, edge, thuislabs en lichte private opslag |
| Ceph | Open source | Ja, via RGW | Hoog | Zakelijke clusters en gedistribueerde opslag |
| Garage | Open source | Ja | Gemiddeld-laag | Lichtgewicht gedistribueerde opslag |
| SeaweedFS | Open source | Ja | Gemiddeld | Distributed object-/bestandsopslag |
| MinIO AIStor | Commercieel, met proef- / gratis opties afhankelijk van modality | Ja | Gemiddeld | Enterprise S3 opslag |
| Amazon S3 | Beheerde cloudservice | Natuurlijk | Laag voor gebruiker | Grootschalige cloudopslag |
De tabel is niet bedoeld om een winnaar aan te wijzen, omdat de architecturen sterk verschillen.
Ceph, bijvoorbeeld, opereert in een andere categorie: het kan object-, blok- en bestandsopslag combineren op één gedistribueerd cluster. De RADOS Gateway (RGW) biedt uitgebreide S3 API-ondersteuning inclusief functies zoals versiebeheer, lifecycle rules, policies, encryptie, IAM en multisite configuraties.
Dat brengt operationele kosten met zich mee. Een Ceph-implementatie vereist meerdere componenten en meestal verschillende servers of OSDs om een redundante, hoge beschikbaarheid te garanderen. De documentatie stelt dat minstens drie OSDs nodig zijn voor redundantie.
VaultS3 zoekt daarentegen de minimale opzet: beginnen met een kleine server en eenvoudige configuratie.
Garage is interessant omdat het ontstaat vanuit de visie van lichtgewicht distributed storage die zelfs op heterogene hardware en connecties functioneert. VaultS3 probeert zich te onderscheiden door functionaliteiten voor beheer en databeveiliging binnen hetzelfde project op te nemen.
SeaweedFS biedt nog bredere mogelijkheden dan een simpele S3-server. Het gedistribueerde ontwerp kan verschillende componenten gebruiken voor volume-, metadata- en datatoegang, wat meer deployment-opties biedt maar ook meer beheercomplexiteit.
MinIO: niet meer precies hetzelfde als jaren geleden
MinIO is jarenlang gunstig geweest als alternatief voor het opzetten van S3-compatibele opslag buiten AWS.
De bedrijfs- en licentieplanning is echter gewijzigd.
De huidige documentatie van MinIO vermeldt een eigen licentie voor de software en beperkt zonder actief enterprise-contract het aantal instances voor evaluatie en niet-productief gebruik. Het bedrijf brengt zijn platform nu uit onder de merknaam AIStor.
Het vergelijken van de huidige MinIO AIStor met een project als VaultS3 dat onder de AGPL-licentie valt, is dus niet helemaal eerlijk of objectief onder de noemer “open source S3”.
VaultS3 probeert de gebruikers snel een werkend S3-endpoint te bieden, vergelijkbaar met de eerste generaties self-hosted oplossingen: download, uitvoerbaar maken en snel compatibele endpoints gebruiken.
Amazon S3: een heel ander probleem
De andere Extreme is Amazon Web Services S3.
AWS beheert de onderliggende infrastructuur, redundantie, hardwarevervanging en zorgt voor hoge beschikbaarheid. Bij een zelfbeheerde oplossing zoals VaultS3 zijn deze verantwoordelijkheden voor de beheerder van de servers.
Dat verandert de economische vergelijking compleet.
Een eigen S3-server kan interessant zijn bij grote lokale datavolumes, bij het voorkomen dat data via externe cloudpartijen reist, of wanneer transferkosten substantieel zijn.
Echter, software alleen maakt een server niet automatisch tot een volwaardige vervanger van Amazon S3.
De uiteindelijke duurzaamheid hangt af van hoe disks, back-ups, replicatie en datacenters geconfigureerd zijn.
Erasure coding en replicatie: uitgebreide opties
VaultS3 ondersteunt niet alleen enkelvoudige kopieën; het implementeert erasure coding met Reed-Solomon, versiebeheer, Object Lock, geplande back-ups en herstelprocedures voor beschadigde fragmenten.
Daarnaast biedt het clustering via Raft, consistente hashing en active-active replicatie.
Hier ligt echter ook een belangrijke beperking.
Het project maakt onderscheid tussen stabiele functies en functies in ontwikkeling. Deployments met één node, inclusief erasure coding over meerdere disks, zijn het meest volwassen. Sommige clustering- en replicatiefeatures bevinden zich nog in bètafase.
Voor een thuislab is dat wellicht geen probleem. Voor bedrijven die terabytes aan backups of kritieke data willen opslaan, is dat een heel andere beoordeling.
Een opslagoplossing wordt niet alleen geëvalueerd op RAM-gebruik bij opstart, maar vooral op storingsbestendigheid, dataconsistentie, gedrag bij netwerkpartitionering, updates, monitoring en het vermogen grote volumes te herstellen na disk- of serververlies.
Een vooral interessante optie voor labs en edge-omgevingen
VaultS3 is momenteel vooral geschikt voor thuislabs, ontwikkeltestomgevingen, kleine servers, edge-apparaten of lokale S3- endpoints.
Het is ook geschikt om S3-gebaseerde applicaties te testen zonder afhankelijkheid van externe services.
Voor grotere bedrijfsimplementaties biedt Ceph een volledig gedistribueerde architectuur met een breed scala aan functies, inclusief IAM, OpenID Connect, LDAP, encryptie en multisite-configuraties.
Beheerde diensten zoals Amazon S3 bieden een andere oplossing: zij regelen de infrastructuuruiting, in ruil voor een ander kostenmodel en operationele verantwoordelijkheid.
VaultS3 probeert een middenweg te vinden. Het echte testen begint bij grotere deployment en het gedrag onder continue load, updates en hardwarestoringen.
Tot die tijd blijven die 17 MiB RAM in rust een treffende herinnering: er is nog altijd ruimte om S3-compatibele opslag te bouwen zonder dat je meteen een complex cluster nodig hebt.
Veelgestelde vragen
Is VaultS3 compatibel met Amazon S3?
VaultS3 implementeert meer dan 80 operaties van de S3 API en werkt met tools en SDK’s die compatibel zijn, maar dat betekent niet dat alle functies van Amazon S3 worden gereproduceerd.
Kan VaultS3 Ceph vervangen?
Dat hangt af van de situatie. VaultS3 streeft naar eenvoud en laag resourcegebruik, terwijl Ceph ontworpen is voor grote, gedistribueerde opslagclusters die meerdere opslagtypen kunnen combineren.
Gebruik VaultS3 echt slechts 17 MiB RAM?
Dit is de gemeten waarde bij inactiviteit. Bij belasting neemt het gebruik toe; een publiceerde test rapporteerde ongeveer 185 MiB bij het wegschrijven van 64 MiB-objecten met 16 gelijktijdige operaties.
Is VaultS3 klaar voor productiegebruik?
De single-node-setup is het meest volwassen. Sommige gedistribueerde functies, zoals clustering en active-active replicatie, bevinden zich nog in bètafase en moeten zorgvuldig getest worden voordat ze voor kritieke data worden gebruikt.
