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.

Don’t stop now! The next scenario will only take about 10 minutes to complete.

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