You are looking at the documentation of a prior release. To read the documentation of the latest release, please
visit here.
Stash
Stash by AppsCode is a Kubernetes operator for restic. 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. restic
is a backup program that is fast, efficient and secure with few moving parts. Stash is a CRD controller for Kubernetes built around restic
to address these issues. Using Stash, you can backup Kubernetes volumes mounted in workloads, stand-alone volumes and databases.
Features
Features | Availability | Scope |
---|---|---|
Backup & Restore Workload Data | ✓ | Deployment, DaemonSet, StatefulSet, ReplicaSet, ReplicationController, OpenShift DeploymentConfig |
Backup & Restore Stand-alone Volume (PVC) | ✓ | PersistentVolumeClaim, PersistentVolume |
Backup & Restore databases | ✓ | PostgreSQL, MySQL, MongoDB, Elasticsearch |
VolumeSnapshot | ✓ | CSI Driver must support VolumeSnapshot and Kubernetes Alpha features must be enabled |
Schedule Backup | ✓ | Schedule through cron expression |
Instant Backup | ✓ | Use CLI or create BackupSession manually |
Auto Backup | ✓ | Using a Template and annotations |
Batch Backup | ✓ | Backup multiple co-related targets under a single configuration |
Pause Scheduled Backup | ✓ | |
Support Multiple Storage Provider | ✓ | AWS S3, Minio, Rook, GCS, Azure, OpenStack Swift, Backblaze B2, Rest Server, any PV/PVC |
Encryption | ✓ | AES-256 in counter mode (CTR) (for Restic driver) |
Deduplication (send only diff) | ✓ | Uses Content Defined Chunking (CDC) (for Restic driver) |
Cleanup old snapshots automatically | ✓ | Cleanup according to different retention policies |
Prometheus Metrics for Backup & Restore Process | ✓ | Official Prometheus Server, CoreOS Prometheus Operator |
Prometheus Metrics for Stash Operator | ✓ | Official Prometheus Server, CoreOS Prometheus Operator |
Support RBAC enabled cluster | ✓ | |
Support PSP enabled cluster | ✓ | |
CLI | ✓ | kubectl plugin (for Kubernetes 1.12+) |
Extensibility | ✓ | Extend using Function and Task |
Customizability | ✓ | Customize backup / restore process using Function and Task |
Hooks | ✓ | Execute httpGet , httpPost , tcpSocket and exec hooks before and after of backup or restore process. |
Send Notification to Webhook | ✓ | Use hooks to send notification to webhooks(i.e. Slack channel) |