Error "pod volume backup failed: running Restic backup, stderr=Fatal: Please specify repository location" while performing velero backups.
search cancel

Error "pod volume backup failed: running Restic backup, stderr=Fatal: Please specify repository location" while performing velero backups.

book

Article ID: 439041

calendar_today

Updated On:

Products

VMware Tanzu Kubernetes Grid Management

Issue/Introduction

  • Velero backup failure with error "pod volume backup failed: running Restic backup, stderr=Fatal: Please specify repository location"
  • Command used to back-up

 

#velero backup create manual-xxxx-xxx-xxx-xxx-xxx-cluster-backup-03 --include-namespaces="xxx-xxx-xxxx,xxx-xxxxxx" --include-cluster-scoped-resources="*" --resource-policies-configmap=resource-policy --snapshot-volumes=false --default-volumes-to-fs-backup=false --wait

 

time="2026-04-02T17:24:40Z" level=info msg="No node-agent configMap is specified" logSource="pkg/cmd/cli/nodeagent/server.go:516"
time="2026-04-02T17:37:26Z" level=info msg="Founding existing repo" backupLocation=default logSource="pkg/repository/ensurer.go:86" repositoryType=kopia volumeNamespace=fps-xxxxxx
time="2026-04-02T17:37:26Z" level=info msg="Opening backup repo" backup=velero/xxx-xxx-xxx-xxx-xxxx-xxx-backup-final-run-01 controller=podvolumebackup logSource="pkg/uploader/provider/kopia.go:78" podvolumebackup=velero/tkg-xxx-xxx-xxx-xxx-xxx-backup-final-run-01-xxxx repoUID=xxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx
time="2026-04-02T21:27:49Z" level=error msg="pod volume backup failed: running Restic backup, stderr=Fatal: Please specify repository location (-r or --repository-file)\n: exit status 1" backup=velero/tkg-xxxx-syd-prod-year-end-backup-final-run logSource="pkg/podvolume/backupper.go:382"

Environment

  • VMware Tanzu Kubernetes Grid Management 2.x
  • Velero version 1.15.x

Cause

  • The issue is caused by a conflict between two different versions of the backup software installed on the same cluster.
  • To prevent recurrence, it is recommended to enforce strict namespace management to ensure only one version of the backup utility exists on a cluster.

Resolution

Perform a comprehensive environmental cleanup to remove conflicting versions and reinstalling the software 

1.Check if there are multiple velero instances installed in the same cluster.

 #kubectl get po -A | grep velero

backup    velero-xxxxxxxxxx-xxxxx    0/1       CrashLoopBackOf
velero    velero-xxxxxxxxxx-xxxxx    01-Jan    Running

2. If you notice the velero instance installed under both namespaces 'backup' and 'velero',uninstall the one installed in the namespace `backup`

         #kubectl delete ns -n backup

3. Uninstall the Velero installed in the namespace `velero`:

    #velero uninstall -n velero

4. Verify the velero-installed CRDs(Custom Resource Definition) are all deleted. The following command's output must be empty, indicating all Velero-installed CRDs have been removed.

#kubectl get crd | grep velero 

5. If there are still some CRDs left after running the uninstall CLI, delete them manually.

       #kubectl delete crd <left-velero-crd-name>

6. Post that reinstall Velero into the velero namespace, using the command appropriate for their specific requirements.

        #velero install 

7. Re-run the backup using the command by modifying the parameter under "--default-volumes-to-fs-backup=xxxx" to "true" instead of "false".

#velero backup create manual-xxxx-xxx-xxx-xxx-xxx-cluster-backup-xx --include-namespaces="xxx-xxx-xxxx,xxx-xxxxxx" --include-cluster-scoped-resources="*" --resource-policies-configmap=resource-policy --snapshot-volumes=false --default-volumes-to-fs-backup=true--wait

 

 

Additional Information

Velero doesn't recommend using fs-backup to back up volume data, however recommends using CSI snapshot data mover.