Backup for GKE - concepts - Part 1 - how it works
Spencer Patrick Bischof
Google Kubernetes Engine (GKE) is a scalable and fully automated Kubernetes service for running containerized applications and stateful/stateless workloads. However, what happens if your deployment fails, data gets corrupted, or you want to restore a snapshot of a cluster to a cluster in another region? Introducing Backup for GKE! Your solution for config and volume backups.
Backup for GKE is a Kubernetes-native backup solution for your GKE cluster. It's straightforward to use, scalable, and reliable. With this, you can be confident that your backups will be successful.
Backup for GKE has a variety of use cases:
Disaster recovery: In the event of a regional outage, you can use Backup for GKE to restore your applications and data in another region
Data protection: If your application data is corrupted, you can use Backup for GKE to restore your data.
Compliance: Backup for GKE can help you follow industry regulations.
Backup could also be useful for cloning workloads, CI/CD pipelines or during upgrade scenarios.
In part one of this series, we will demonstrate and define key concepts in Backup for GKE.
Backup for GKE is easy to use. You can create a backup plan to schedule periodic backups of both application data and GKE cluster state data. You can also restore a workload from one cluster to another, so you can quickly recover from an incident.
What is it composed of?
Backup for GKE is composed of a control plane which consists of a Google Cloud API and an Agent that runs in every cluster targeted for backups and restores.
Types of User Data Backup for GKE saves?
Config Backups: Captures the cluster state(Kubernetes resource descriptions)
Volume Backups: Volume backups that correspond to PVC(persistent volume claim)
All GKE Backups are encrypted at rest by default using a Google supplied key. You can supply your own though.
What Backup for GKE doesn’t save?
Node Configurations, node pools or enabled features
The actual container image itself
Config information or state of services external to the cluster. CLB(Cloud Load balancing) or Cloud SQL
Get started with GKE today using this quick tutorial.