Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

VersityGW

VersityGW is a high-performance S3 object storage gateway that translates S3 API requests into equivalent operations on backend storage systems. It runs as a single, stateless binary and supports POSIX filesystems, ScoutFS, Azure Blob Storage, and other S3 servers as backends.

The POSIX backend stores objects directly as files on the filesystem. An object at backups/db-2026-06-29.sql.gz in a bucket appears at the corresponding path under the root directory.

Ingress

To expose VersityGW behind the centralised Ingress infrastructure:

apiVersion: v1
kind: Service
metadata:
    name: versitygw
spec:
    type: ExternalName
    externalName: nas.example.net
    ports:
        - port: 30157
          name: https
          protocol: TCP

---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
    name: s3gw
    annotations:
        nginx.ingress.kubernetes.io/backend-protocol: HTTPS
spec:
    rules:
        - host: s3gw.example.com
          http:
            paths:
                - path: /
                  pathType: Prefix
                  backend:
                    service:
                        name: versitygw
                        port:
                            name: https
    tls:
        - hosts:
            - s3gw.example.com
          secretName: versitygw-tls

Usage

Interact with VersityGW using any S3-compatible client:

mc alias set versitygw https://s3gw.example.com access-key secret-key
mc ls versitygw
mc cp backup.sql versitygw/backups/