Stash

Stash by AppsCode is a cloud native data backup and recovery solution for Kubernetes workloads. If you are running production workloads in Kubernetes, you might want to take backup of your disks, databases etc. Traditional tools are too complex to setup and maintain in a dynamic compute environment like Kubernetes. Stash is a Kubernetes operator that uses restic or Kubernetes CSI Driver VolumeSnapshotter functionality to address these issues. Using Stash, you can backup Kubernetes volumes mounted in workloads, stand-alone volumes and databases. User may even extend Stash via addons for any custom workload.

Features

FeaturesCommunity EditionEnterprise EditionScope
Backup & Restore Workload DataDeployment, DaemonSet, StatefulSet, ReplicaSet, ReplicationController, OpenShift DeploymentConfig
Backup & Restore Stand-alone Volume (PVC)PersistentVolumeClaim, PersistentVolume
Backup & Restore databasesPostgreSQL, MySQL, MongoDB, Elasticsearch, Percona-XtraDB
Schedule Backup, Instant BackupSchedule through cron expression or trigger instant backup using Stash Kubernetes plugin
Pause BackupNo new backup when paused.
Backup & Restore subset of filesOnly backup/restore the files that matches the provided patterns
Cleanup old snapshots automaticallyCleanup old snapshots according to different retention policies
Encryption, Deduplication (send only diff)Encrypt backed up data with AES-256. Stash only sends the changes since last backup.
CSI Driver IntegrationVolumeSnapshot for Kubernetes workloads. Supported for Kubernetes v1.17.0+.
Prometheus MetricsRich backup metrics, restore metrics and Stash operator metrics.
SecurityBuilt-in support for RBAC, PSP and Network Policy
CLIkubectl plugin (for Kubernetes 1.12+)
Extensibility and CustomizabilityWrite addons for bespoke applications and customize currently supported workloads
HooksExecute httpGet, httpPost, tcpSocket and exec hooks before and after of backup or restore process.
Cloud Storage as BackendStores backup data in AWS S3, Minio, Rook, GCS, Azure, OpenStack Swift, Backblaze B2 and Rest Server
On-prem Storage as BackendStores backup data in any locally mounted Kubernetes Volumes such as NFS, etc.
Auto BackupShare backup configuration across workloads using templates. Enable backup for a target application via annotation.
Batch Backup & Batch RestoreBackup and restore co-related applications (eg, WordPress server and its database) together
Point-In-Time Recovery (PITR)PlannedRestore a set of files from a time in the past.