backup

package module
v0.0.0-...-e2010ec Latest Latest
Warning

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

Go to latest
Published: Jun 28, 2021 License: AGPL-3.0 Imports: 6 Imported by: 0

README

Backup bucket to bucket

Create a backup of a bucket and restore at a later time.

Problem description

Rook, Ceph and Kubernetes operate in a high available manner and replicate data.

Raid (Data replication) is not a backup and does not protect against data loss.

Possible failure scenarious are:

  • human error
  • ceph can fail
  • rook can fail
  • kubernetes can fail
  • hardware can fail

bucket-backup creates backups from buckets and stores the snapshots in external buckets.

Features

  • none

Wishlist

  • create snapshots
  • list snapshots
  • list files in snapshot
  • list snapshots of file
  • restore bucket
  • restore file
  • skip unchanged files
  • trim snapshots
  • parity data
  • scrub
  • compression
  • deduplication
  • encryption
  • helm chart

Contribute

  1. start minio via docker-compose up
  2. verify tests via go test ./...

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BackupLocation

type BackupLocation struct {
	Storage
	EncrytionKey string
}

func (BackupLocation) GarbageCollection

func (s BackupLocation) GarbageCollection() error

func (BackupLocation) ListFileSnapshots

func (s BackupLocation) ListFileSnapshots(bucket, path string) error

func (BackupLocation) ListFiles

func (s BackupLocation) ListFiles(bucket, snapshot string, timestamp *time.Time) error

func (BackupLocation) ListSnapshots

func (s BackupLocation) ListSnapshots(bucket string) error

func (BackupLocation) Restore

func (s BackupLocation) Restore(bucket, prefix string, timestamp *time.Time, target Storage) error

func (BackupLocation) Scrub

func (s BackupLocation) Scrub() error

func (BackupLocation) Snapshot

func (s BackupLocation) Snapshot(ctx context.Context, source Storage) error

type Storage

type Storage struct {
	Sess       *session.Session
	BucketName string
}

Directories

Path Synopsis
cmd

Jump to

Keyboard shortcuts

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