Concepts

Concepts help you to learn about the different parts of the Stash and the abstractions it uses.

This concept section is divided into the following modules:

  • What is Stash?

    • Overview provides an introduction to Stash. It also give an overview of the features it provides.
    • Architecture provides a visual representation of Stash architecture. It also provides a brief overview of the components it uses.
  • Declarative API

    • Repository introduces the concept of Repository crd that holds backend information in a Kubernetes native way.
    • BackupConfiguration introduces the concept of BackupConfiguration crd that is used to configure backup for a target resource in a Kubernetes native way.
    • BackupBatch introduces the concept of BackupBatch crd that is used to setup backup of multiple co-related targets under single configuration.
    • BackupSession introduces the concept of BackupSession crd that represents a backup run of a target resource for the respective BackupConfiguration or BackupBatch object.
    • RestoreSession introduces the concept of RestoreSession crd that represents a restore run of a target resource.
    • RestoreBatch introduces the concept of RestoreBatch crd that allows restore of multiple targets that were backed up using BackupBatch under single configuration.
    • Function introduces the concept of Function crd that represents a step of a backup or restore process.
    • Task introduces the concept of Task crd which specifies an ordered collection of multiple Functions and their parameters that make up a complete backup or restore process.
    • BackupBlueprint introduces the concept of BackupBlueprint crd that specifies a blueprint for Repository and BackupConfiguration object which provides an option to share backup configuration across similar targets.
    • AppBinding introduces the concept of AppBinding crd which holds the information that are necessary to connect with an application like database.
    • Snapshot introduces the concept of Snapshot object that represents backed up snapshots in a Kubernetes native way.
  • v1alpha1 API

    • Restic introduces the concept of Restic crd that is used for configuring restic in a Kubernetes native way.
    • Recovery introduces the concept of Recovery crd that is used to restore a backup taken using Stash.