Database Addon

Backup & Restore Percona XtraDB Database on Kubernetes

A complete Kubernetes native disaster recovery solution for backup and restore Percona XtraDB databases in Kubernetes on various public and private clouds.

BackupConfiguration
 1apiVersion: stash.appscode.com/v1beta1
 2kind: BackupConfiguration
 3metadata:
 4  name: percona-xtradb-backup
 5  namespace: demo
 6spec:
 7  repository:
 8    name: demo-repo
 9  retentionPolicy:
10    keepLast: 5
11    name: keep-last-5
12    prune: true
13  schedule: '*/5 * * * *'
14  target:
15    ref:
16      apiVersion: appcatalog.appscode.com/v1alpha1
17      kind: AppBinding
18      name: sample-xtradb
About

What is Percona XtraDB Backup?

Kubernetes is becoming a vital aspect of enterprise IT environments as businesses increasingly rely on containerized applications. And a large amount of data is generated by business applications and microservices everyday, which must be protected with a reliable backup and recovery solution.

But the problem is traditional backup and restore solutions were not designed for Kubernetes. If you want to copy a Kubernetes cluster over platforms, you have to face so many difficulties during the process. And when the application grows in size, you need to create a lot of new custom scripts to take snapshots of your pods, services, volumes, configmaps, secrets, and have to continuously maintain those scripts. Stash is a complete Kubernetes native disaster recovery solution for backup and restore Kubernetes workloads, volumes and databases on various public and private clouds.

As we already know, 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. Users may even extend Stash via addons for any custom workload.
AES-256 Encrypted Any Cloud Deduplicated Declarative API
Key Capabilities
  • Logical Backup
  • Backup & Restore Percona XtraDB Databases
  • Declarative API
  • Deduplication
  • Data Encryption
  • Monitoring
  • Policy Based Backup
  • Multiple Storage Support
How It Works

Backup Percona XtraDB in 4 steps

01

Install Stash

Deploy Stash operator via Helm into your Kubernetes cluster.

helm install stash
02

Define Backup Policy

Create a BackupConfiguration CRD pointing at your Percona XtraDB instance.

kind: BackupConfiguration
03

Automated Backups

Stash schedules encrypted, deduplicated snapshots to your storage backend.

✓ Backup verified
04

One-Click Restore

Restore to any point in time with a single RestoreSession manifest.

kind: RestoreSession
Features

Built for production reliability

Logical Backup

Logical Backup

A logical backup contains copies of database information (such as tables, schemas, and procedures) and is often exported as a binary file utilizing EXPORT/IMPORT tools. Logical backups are useful if you need to restore or relocate a copy of the database to another environment. Stash offers Logical Backup for Percona XtraDB databases on Kubernetes.

Backup & Restore Percona XtraDB Databases

Backup & Restore Percona XtraDB Databases

Backup your Percona XtraDB databases deployed in Kubernetes. You can also restore your Percona XtraDB databases using Stash. Stash simplifies the whole process of Backup & Restore your Percona XtraDB databases on Kubernetes.

Declarative API

Declarative API

Backup your data in Kubernetes native way. Stash uses Custom Resource Definition (CRD) to specify targets and behaviors of the backup and restore process. Schedule a backup for your workloads in the same way you deployed them into Kubernetes.

Deduplication

Deduplication

Stash will upload only the diff since the last backup. It splits the targeted files into smaller blobs using Content Defined Chunking (CDC) and uploads only the modified blobs.

Data Encryption

Data Encryption

To provide data security, your data needs to be encrypted during the whole process. Stash keeps all the backed up data encrypted using AES-256. So, your data is protected even if it leaks from the backend. And it will not make any sense until they are decrypted.

Monitoring

Monitoring

Stash comes with native support for monitoring via Prometheus. You can use builtin Prometheus scrapper or CoreOS Prometheus Operator to monitor your database in Kubernetes. You can use the Grafana to view key operational metrics, including compute/memory/storage capacity utilization, I/O activity, and instance connections.

Policy Based Backup

Policy Based Backup

Define a common template to backup all similar types of workloads. Then, just add some annotations to your targeted workload to enable backup for it. You can use a single template to backup all the Deployments, StatefulSets, DaemonSets, ReplicationControllers and ReplicaSets of your entire cluster

Multiple Storage Support

Multiple Storage Support

You can store your backed up data into various storage services. Stash supports AWS S3, Minio, Rook, Google Cloud Storage, Azure Blob Storage, OpenStack Swift, DigitalOcean Spaces, Blackbaze B2 and REST server as backend. You can also use Kubernetes persistent volumes as backend.

Customer Stories

Trusted by teams worldwide

See what engineers are saying about Stash in production.

InterSystems was delighted to engage with AppsCode in the delicate, yet fundamental task of supporting durable, non-ephemeral workloads with Kubernetes. We needed the best-prepared, most-proficient database operator …

Luca Ravazzolo
Luca Ravazzolo Product Manager · Intersystems

Voyager made it simple and efficient for us to protect and initiate our bare metal Kubernetes workload. Its underlying technology and extensive L4 support along with seamless SSL integration is what made us choose …

Mario Kozjak
Mario Kozjak Solutions Architect · Elpheria

Voyager is the easiest way to use the fast and reliable HAProxy as our ingress controller. At PriceHubble, it is the corner-stone of our blue/green deployments.

Manuel Ramírez López
Manuel Ramírez López DevOps Engineer · Pricehubble
Get Started

Ready to use Stash?

Stash is free to use on any supported Kubernetes cluster. Deploy in minutes with a 30-day free license.