Documentation

Examples

After you set up the Velero server, you can clone the examples used in the following sections by running the following:

git clone https://github.com/vmware-tanzu/velero.git
cd velero

Basic example (without PersistentVolumes)

  1. Start the sample nginx app:

    kubectl apply -f examples/nginx-app/base.yaml
    
  2. Create a backup:

    velero backup create nginx-backup --include-namespaces nginx-example
    
  3. Simulate a disaster:

    kubectl delete namespaces nginx-example
    

    Wait for the namespace to be deleted.

  4. Restore your lost resources:

    velero restore create --from-backup nginx-backup
    

Snapshot example (with PersistentVolumes)

NOTE: For Azure, you must run Kubernetes version 1.7.2 or later to support PV snapshotting of managed disks.

  1. Start the sample nginx app:

    kubectl apply -f examples/nginx-app/with-pv.yaml
    
  2. Create a backup with PV snapshotting. --csi-snapshot-timeout is used to setup time to wait before CSI snapshot creation timeout. The default value is 10 minutes:

    velero backup create nginx-backup --include-namespaces nginx-example --csi-snapshot-timeout=20m
    
  3. Simulate a disaster:

    kubectl delete namespaces nginx-example
    

    Because the default reclaim policy for dynamically-provisioned PVs is “Delete”, these commands should trigger your cloud provider to delete the disk that backs the PV. Deletion is asynchronous, so this may take some time. Before continuing to the next step, check your cloud provider to confirm that the disk no longer exists.

  4. Restore your lost resources:

    velero restore create --from-backup nginx-backup
    
Getting Started

To help you get started, see the documentation.