K8up - Kubernetes Backup Operator

k8up logo

Introduction

K8up (pronounced /keɪtæpp/ or simply "ketchup") is a Kubernetes Operator distributed via a Helm chart, compatible with OpenShift and plain Kubernetes. It allows cluster operators to:

  • Backup all PVCs marked as ReadWriteMany, ReadWriteOnce or with a specific label.

  • Perform individual, on-demand backups.

  • Schedule backups to be executed on a regular basis.

  • Schedule archivals (for example to AWS Glacier), usually executed in longer intervals.

  • Perform "Application Aware" backups, containing the output of any tool capable of writing to stdout.

  • Check the backup repository for its integrity.

  • Prune old backups from a repository.

  • Restore backups with the help of the k8up CLI tool.

K8up is:

  • Stable and production ready since 2019.

  • Based on top of Restic, it can store backups in any S3-compatible storage, such as Amazon S3 or Minio.

  • Written in Go.

  • A CNCF Sandbox Open Source project, hosted at GitHub.

CNCF LANDSCAPE

The tutorial gives you a glimpse into K8up. Give it a try!

Documentation

The documentation is inspired by the Divio’s documentation structure:

Tutorials

Learning-oriented: Simple lessons to learn about K8up.

How-to guides

Problem-oriented: step-by-step guides to achieve a goal.

Technical reference

Information-oriented: explaining the inner ongoings of K8up.

Explanation

Understanding-oriented: puts k8up in context.