This is the documentation for the latest development version of Velero. Both code and docs may be unstable, and these docs are not guaranteed to be up to date or correct. See the latest version.

Edit this page

Upgrading to Velero 1.0

Prerequisites

Instructions

Part 1 - Rewrite Legacy Metadata

Overview

You need to replace legacy metadata in object storage with updated versions for any backups that were originally taken with a version prior to v0.11 (i.e. when the project was named Ark). While Velero v0.11 is backwards-compatible with these legacy files, Velero v1.0 is not.

If you’re sure that you do not have any backups that were originally created prior to v0.11 (with Ark), you can proceed directly to Part 2.

We’ve added a CLI command to Velero v0.11.1, velero migrate-backups, to help you with this. This command will:

*backups created prior to v0.10 stored snapshot metadata in the status.volumeBackups field, but it has subsequently been replaced with the <backup-name>-volumesnapshots.json.gz file.

Instructions

  1. Download the v0.11.1 release tarball tarball for your client platform.

  2. Extract the tarball:
     tar -xvf <RELEASE-TARBALL-NAME>.tar.gz -C /dir/to/extract/to 
    
  3. Move the velero binary from the Velero directory to somewhere in your PATH.

  4. Scale down your existing Velero deployment:
     kubectl -n velero scale deployment/velero --replicas 0
    
  5. List all of your backup storage locations:
     velero backup-location get
    
  6. For each backup storage location that you want to use with Velero 1.0, replace any legacy pre-v0.11 backup metadata with the equivalent current formats:
     # - BACKUP_LOCATION_NAME is the name of a backup location from the previous step, whose
     #   backup metadata will be updated in object storage
     # - SNAPSHOT_LOCATION_NAME is the name of the volume snapshot location that Velero should
     #   record volume snapshots as existing in (this is only relevant if you have backups that
     #   were originally taken with a pre-v0.10 Velero/Ark.)
     velero migrate-backups \
         --backup-location <BACKUP_LOCATION_NAME> \
         --snapshot-location <SNAPSHOT_LOCATION_NAME>
    
  7. Scale up your deployment:
     kubectl -n velero scale deployment/velero --replicas 1
    

Part 2 - Upgrade Components to Velero 1.0

Overview

Instructions

  1. Download the v1.0 release tarball tarball for your client platform.

  2. Extract the tarball:
     tar -xvf <RELEASE-TARBALL-NAME>.tar.gz -C /dir/to/extract/to 
    
  3. Move the velero binary from the Velero directory to somewhere in your PATH, replacing any existing pre-1.0 velero binaries.

  4. Update the image for the Velero deployment and daemon set (if applicable):
     kubectl -n velero set image deployment/velero velero=gcr.io/heptio-images/velero:v1.0.0
     kubectl -n velero set image daemonset/restic  restic=gcr.io/heptio-images/velero:v1.0.0