Difficulty: Beginner
Estimated Time: 10 minutes

Ark gives you tools to back up and restore your Kubernetes cluster resources and persistent volumes. Ark lets you:

  • Take backups of your cluster and restore in case of loss.
  • Copy cluster resources across cloud providers. NOTE: Cloud volume migrations are not yet supported.
  • Replicate your production environment for development and testing environments.

Ark consists of:

  • A server that runs on your cluster
  • A command-line client that runs locally

For more information, the documentation provides a getting started guide, plus information about building from source, architecture, extending Ark, and more.

Heptio Ark

Step 1 of 3

Set Up our Environment

Let's pull down the Heptio Ark GitHub repo to help us get started: git clone https://github.com/heptio/ark

Apply some basic prerequisites (e.g. CustomResourceDefinitions, namespaces, and RBAC): kubectl apply -f ark/examples/common/00-prereqs.yaml

Apply a local storage service (e.g. Minio): kubectl apply -f ark/examples/minio/

Deploy an example nginx application: kubectl apply -f ark/examples/nginx-app/base.yaml

Check to see that both Ark and nginx deployments have been successfully created:

kubectl get deployments -l component=ark --namespace=heptio-ark

kubectl get deployments --namespace=nginx-example