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.
During install, Velero requires that at least one plugin is added (with the
--plugins flag). Please see the documentation under Plugins
Velero is installed in the
velero namespace by default. However, you can install Velero in any namespace. See run in custom namespace for details.
velero install expects a credentials file for your
velero IAM account to be provided via the
If you are using an alternate identity mechanism, such as kube2iam/kiam on AWS, Workload Identity on GKE, etc., that does not require a credentials file, you can specify the
--no-secret flag instead of
velero install does not install Velero's restic integration. To enable it, specify the
If you've already run
velero install without the
--use-restic flag, you can run the same command again, including the
--use-restic flag, to add the restic integration to your existing install.
By default, the Velero deployment requests 500m CPU, 128Mi memory and sets a limit of 1000m CPU, 256Mi. Default requests and limits are not set for the restic pods as CPU/Memory usage can depend heavily on the size of volumes being backed up.
Customization of these resource requests and limits may be performed using the velero install CLI command.
Velero supports any number of backup storage locations and volume snapshot locations. For more details, see about locations.
velero install only supports configuring at most one backup storage location and one volume snapshot location.
To configure additional locations after running
velero install, use the
velero backup-location create and/or
velero snapshot-location create commands along with provider-specific configuration. Use the
--help flag on each of these commands for more details.
If you need to install Velero without a default backup storage location (without specifying
--no-default-backup-location flag is required for confirmation.
Velero supports using different providers for volume snapshots than for object storage -- for example, you can use AWS S3 for object storage, and Portworx for block volume snapshots.
velero install only supports configuring a single matching provider for both object storage and volume snapshots.
To use a different volume snapshot provider:
Install the Velero server components by following the instructions for your object storage provider
Add your volume snapshot provider's plugin to Velero (look in [your provider]'s documentation for the image name):
velero plugin add <registry/image:version>
Add a volume snapshot location for your provider, following [your provider]'s documentation for configuration:
velero snapshot-location create <NAME> \ --provider <PROVIDER-NAME> \ [--config <PROVIDER-CONFIG>]
velero install generates and applies a customized set of Kubernetes configuration (YAML) to your cluster.
To generate the YAML without applying it to your cluster, use the
--dry-run -o yaml flags.
This is useful for applying bespoke customizations, integrating with a GitOps workflow, etc.
If you are installing Velero in Kubernetes 1.13.x or earlier, you need to use
--validate=false option when applying the generated configuration to your cluster. See issue 2077 for more context.
velero install --help or see the Helm chart documentation for the full set of installation options.