backup-tool

command module
v0.0.12 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 5, 2025 License: AGPL-3.0 Imports: 1 Imported by: 0

README

backup-tool

Tool for backing up my home infrastructure. Might be helpful for other folks as well.

Features:

  • Consistent backups for all resources (i.e. application databases and filesystem states will match)
  • Backups stored as files, in a human-readable format where possible
  • Little to no impact on running applications
    • No need to take databases offline for a consistent backup
    • No performance impact on running applications where possible
  • Backup jobs run on demand, with no long-lived processes (or containers) needed
  • Takes advantage of underlying filesystem features where possible, rather than reimplementing in-band
    • ZFS-backed storage reduces backup size via Copy on Write and compression (if enabled)
  • Can run locally or in-cluster
  • No passwords wherever possible - short-lived x509 certificates instead

See the design decision doc for additional details.

Supported applications:

  • Vaultwarden
    • Backup to an in-cluster PVC, which is then snapshotted
    • Restore from an in-cluster PVC
    • Only Postgres backend supported (SQLite not supported)
  • Teleport
    • Backup to an in-cluster PVC, which is then snapshotted
    • Restore from an in-cluster PVC
    • Only Postgres supported for "core" backend and audit events
    • Only S3-compatible object storage supported for audit session logs

Upcoming support:

  • ZFS snapshot to tape drive/library
  • Automatic cleanup

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
cmd
pkg
kubecluster/primatives/approverpolicy/gen/clientset/versioned/fake
This package has the automatically generated fake clientset.
This package has the automatically generated fake clientset.
kubecluster/primatives/approverpolicy/gen/clientset/versioned/scheme
This package contains the scheme of the automatically generated clientset.
This package contains the scheme of the automatically generated clientset.
kubecluster/primatives/approverpolicy/gen/clientset/versioned/typed/policy/v1alpha1
This package has the automatically generated typed clients.
This package has the automatically generated typed clients.
Package fake has the automatically generated clients.
kubecluster/primatives/cnpg/gen/clientset/versioned/fake
This package has the automatically generated fake clientset.
This package has the automatically generated fake clientset.
kubecluster/primatives/cnpg/gen/clientset/versioned/scheme
This package contains the scheme of the automatically generated clientset.
This package contains the scheme of the automatically generated clientset.
kubecluster/primatives/cnpg/gen/clientset/versioned/typed/api/v1
This package has the automatically generated typed clients.
This package has the automatically generated typed clients.
kubecluster/primatives/cnpg/gen/clientset/versioned/typed/api/v1/fake
Package fake has the automatically generated clients.
Package fake has the automatically generated clients.
s3

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL