Backup & Restore MariaDB Database on Kubernetes

A complete Kubernetes native disaster recovery solution for backup and recover MariaDB databases in Kubernetes on various public and private clouds.

 1apiVersion: core.kubestash.com/v1alpha1
 2kind: BackupConfiguration
 3metadata:
 4  name: mariadb-backup
 5  namespace: demo
 6spec:
 7  backends:
 8  - name: gcs-backend
 9    retentionPolicy:
10      name: demo-retention
11      namespace: demo
12    storageRef:
13      name: gcs-storage
14      namespace: demo
15  sessions:
16  - addon:
17      name: mariadb-addon
18      tasks:
19      - name: logical-backup
20        params:
21          databases: playground
22    name: frequent-backup
23    repositories:
24    - backend: gcs-backend
25      directory: /mariadb
26      encryptionSecret:
27        name: encrypt-secret
28        namespace: demo
29      name: gcs-mariadb-repo
30    scheduler:
31      jobTemplate:
32        backoffLimit: 1
33      schedule: '*/5 * * * *'
34  target:
35    apiGroup: appcatalog.appscode.com
36    kind: AppBinding
37    name: mariadb-appbinding
38    namespace: demo

Backup & Restore MariaDB Database on Kubernetes

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. Kubestash 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. Kubestash is a Kubernetes operator that uses restic or Kubernetes CSI Driver VolumeSnapshotter functionality to address these issues. Using Kubestash, you can backup Kubernetes volumes mounted in workloads, stand-alone volumes and databases. Users may even extend Kubestash via addons for any custom workload.

    Why Choose KubeDB?🤔

  • check-box Logical Backup
  • check-box Declarative API
  • check-box Deduplication
  • check-box Backup & Restore MariaDB Databases
  • check-box Data Encryption
  • check-box Monitoring
  • check-box Multiple Storage Support
  • check-box Policy Based Backup
Backup & Restore MariaDB Database on Kubernetes
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. Kubestash offers Logical Backup for MariaDB databases on Kubernetes.

Declarative API

Backup your data in Kubernetes native way. Kubestash 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.

Declarative API
Deduplication

Deduplication

Kubestash 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.

Backup & Restore MariaDB Databases

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

Backup & Restore MariaDB Databases
Data Encryption

Data Encryption

To provide data security, your data needs to be encrypted during the whole process. Kubestash 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

Kubestash 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.

Monitoring
Multiple Storage Support

Multiple Storage Support

You can store your backed up data into various storage services. Kubestash 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.

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

Policy Based Backup

What They Are Talking About us

Trusted by top engineers at the most ambitious companies

Run and Manage your Database on Kubernetes FREE !

KubeStash is FREE to use on any supported Kubernetes engines. You can deploy and manage your database in Kubernetes using KubeStash. There is no up-front investment required. We offer a 30 days license FREE of cost to try KubeStash.