Kubernetes state backup solution, designed to be run as Kubernetes Job.
Use the Helm chart and deploy it to Kubernetes as CronJob which will ensure cluster backups of Kubernetes resource definitions to your S3/GCS/Azure cloud storage.
For more information, see the tutorial.
For instructions on how to restore from backup, see the tutorial.
This is using a Kubernetes alpha feature Cron Jobs, batch/v2alpha1 API group needs to be enabled in your cluster to make it work.
If your Kubernetes cluster runs under version 1.5 or less, spec.successfulJobsHistoryLimit and spec.failedJobsHistoryLimit will be ignored as they've been introduced in version 1.6. In this case, running an export every 10 minutes will quickly run up your Job (and therefor Pod) count, causing a linear increase in master server load.
A fix for this is to deploy a cleanup job to clean the old kube-backup jobs.