Skip to content

Stages

Stages are away to define the flow from the source (zfs) to the sink (s3) while allowing to specify middlewares in a pipeline like styles.

Stages are defined in the config file.

The type field corresponds to the type of stage and must be set for every stage.

S3 Stage

type: s3
bucket: foo-bucket
baseEndpoint: https://s3.eu-central-003.backblazeb2.com
usePathStyle: true
accessKey: foo-key
accessSecret: foo-secret
region: us-east-1
prefix: deep/nested/folder
maxRetries: 15
uploadPartSize: 62914560 # in bytes
fielddescriptionrequired
bucketThe bucket to upload the blobs toyes
accessKeyThe access key for the s3 bucketyes
accessSecretThe secret key for the s3 bucketyes
regionThe region of the s3 bucketyes
baseEndpointThe s3 api endpoint (set if you are using a s3 compatible api like backblaze)no
usePathStyleSet this to true if your compatible api needs path style urlsno
prefixThe folder in the s3 bucket to upload the blobs tono
maxRetriesThe maximum amount of retries to perform for requests to the s3 api.no
uploadPartSizeThe size of the parts to upload to s3 in bytes. Its recommended to increase this depending on your bandwidth (the higher the bandwidth the higher the partSize)no

Zfs Stage

type: zfs
zfsPath: /bin/zfs
remote: next_stage
fielddescriptionrequired
remoteThe next stage to executeyes
zfsPathThe path to the zfs executeable (if not set zfs must be in the PATH)no

Throttle Stage

type: throttle
remote: next_stage
writeSpeed: 1048576 # in bytes per second
readSpeed: 1048576 # in bytes per second
fielddescriptionrequired
remoteThe next stage to executeyes
writeSpeedThe max write speed when uploading a backup to the sink (s3), not setting = no limityes
readSpeedThe max read speed when restoring a backup from sink (s3), not setting = no limityes

Crypt Stage

type: crypt
remote: next_stage
password: my_secret_password
fielddescriptionrequired
remoteThe next stage to executeyes
passwordThe password to encrypt the backups with aes256 gcmyes