Skip to content

Backup management

The following article provides information on how backups are handled in STACKIT Kubernetes Engine (SKE) and what you need to consider when running a Kubernetes cluster.

When running a Kubernetes cluster on SKE, you need to be aware that not all parts of your cluster are automatically backed up. While the SKE team backs up the control plane, data inside your cluster is your responsibility. Read on to find out exactly what that means.

Control plane backup for disaster recovery

Section titled “Control plane backup for disaster recovery”

The control plane of your cluster (i.e. the etcd instance that stores all information the Kubernetes API server is aware of) is backed up by the SKE team. This type of backup is fully automated and used for disaster recovery purposes. It is not intended to be a customer service tool!

With the control plane backup, we make sure to be able to restore the API state of your cluster’s control plane when failures occur in our underlying infrastructure.

We do a full backup of the control plane data every 24 hours. Incremental delta snapshots are taken every 5 minutes.

Kubernetes clusters can vary a lot in terms of workloads and data they contain. Therefore, we cannot provide a central backup solution for data that is used and/or produced by the applications deployed in your cluster. Precisely, this affects the following:

  • Data inside persistent volumes
  • Data stored on the worker nodes
  • Any data inside your container that is not part of the container image

The last two bullet points are considered an antipattern, anyway. Whenever possible, you should build and use stateless containers. If stateful data is necessary for your application, persistent volumes should be used. Backing those up is the customer’s responsibility.

Using persistent volumes is the recommended way to handle data in Kubernetes. We do not provide automatic backups for them, though. We highly recommend to implement a backup strategy for the persistent volumes in your cluster using Velero

Velero is a tool that offers on-demand and scheduled backups of persistent volumes and other Kubernetes resources. Please refer to our Velero documentation for installation and usage.