Траблшутинг резервного копирования
-
- Логи и описание бэкапа
- Почему бэкап может быть недоступен в интерфейсе
- Типичные ошибки и ситуации
- Error checking repository for stale locks
- error checking if volume is a hostPath volume
- pod volume backup failed: getting pod trivy-system/scan-vulnerabilityreport-*
- SignatureDoesNotMatch при velero backup logs
- Бэкап завис в фазе InProgress после сбоя
- Восстановление Service типа LoadBalancer
- Admission webhooks блокируют создание ресурсов при restore
- Kopia: конфликт владельца репозитория (maintenance must be run by designated user)
- Ошибки при восстановлении в форме
- Проверка состояния
На этой странице
-
- Логи и описание бэкапа
- Почему бэкап может быть недоступен в интерфейсе
- Типичные ошибки и ситуации
- Error checking repository for stale locks
- error checking if volume is a hostPath volume
- pod volume backup failed: getting pod trivy-system/scan-vulnerabilityreport-*
- SignatureDoesNotMatch при velero backup logs
- Бэкап завис в фазе InProgress после сбоя
- Восстановление Service типа LoadBalancer
- Admission webhooks блокируют создание ресурсов при restore
- Kopia: конфликт владельца репозитория (maintenance must be run by designated user)
- Ошибки при восстановлении в форме
- Проверка состояния
Логи и описание бэкапа
Список бэкапов
kubectl get backup -n velero
События и ошибки по бэкапу
kubectl describe backup <имя-бэкапа> -n velero
Логи сервера Velero
kubectl logs -n velero deployment/velero --tail=500
Логи job бэкапа (если создаётся Job)
kubectl logs -n velero job/<имя-job> -f
Для бэкапов, упавших на ранней стадии, файл лога может отсутствовать — ориентируйтесь на kubectl describe backup и логи deployment/velero (Troubleshooting (v1.17)).
Restore
Описание restore (kubectl)
kubectl describe restore <имя> -n velero
Описание restore (Velero CLI)
velero restore describe <имя>
Лог restore (Velero CLI)
velero restore logs <имя>
Сбор отладочного архива
Справка по команде velero debug
velero debug --help
Команда velero debug формирует архив с версиями, логами сервера и плагинов и ресурсами, которыми управляет Velero (Troubleshooting (v1.17)).
Повышение уровня логирования
В манифесте Deployment velero в неймспейсе velero для контейнера сервера добавляют аргументы --log-level и debug (Troubleshooting (v1.17)).
Почему бэкап может быть недоступен в интерфейсе
| Причина | Что проверить |
|---|---|
Нет BackupStorageLocation |
Подключение S3, kubectl get backupstoragelocation -n velero |
| Ошибка доступа к S3 | URL, порт, TLS, учётные данные, сеть с узлов кластера до хранилища |
| Неверные ключи | Поля доступа в секрете/объекте хранилища; для MinIO — access key / secret key |
| Другой скоуп | Бэкапы привязаны к контексту (кластер / неймспейс) |
| Синхронизация | Интервал backupSyncPeriod; при необходимости перезапуск компонентов Velero |
| Ручное удаление в бакете | Не удалять каталоги restic/kopia без согласованного удаления BackupRepository |
| Сервис выключен | Сервисы и репозитории → Установленные сервисы → shturval-backup, режим Авто |
Типичные ошибки и ситуации
Error checking repository for stale locks
Данные в объектном хранилище (каталоги restic/kopia) удалены или повреждены, а объекты BackupRepository в кластере остались. Либо удалять данные вместе с BackupRepository, либо не трогать данные в бакете вручную.
error checking if volume is a hostPath volume
Velero не включает в file system backup тома hostPath. Сообщение не останавливает остальной бэкап. Чтобы убрать предупреждение, исключите тома аннотацией на поде:
backup.velero.io/backup-volumes-excludes: name1,name2,name3
pod volume backup failed: getting pod trivy-system/scan-vulnerabilityreport-*
Поды сканера Trivy часто короткоживущие; к моменту копирования тома под уже мог исчезнуть. Обычно это ожидаемо и не означает полный отказ бэкапа.
SignatureDoesNotMatch при velero backup logs
Загрузка артефактов идёт по временным подписанным URL. У части S3-совместимых хранилищ возможны отклонения от API AWS. Проверьте версию подписи (Signature V4), тип учётной записи (Troubleshooting (v1.17)).
Бэкап завис в фазе InProgress после сбоя
Прерванные бэкапы Velero не продолжает. Бэкап в InProgress без данных в хранилище можно удалить (Troubleshooting (v1.17)):
Удаление записи Backup в Kubernetes
kubectl delete backup <имя> -n velero
Восстановление Service типа LoadBalancer
После restore у Service новый UID → у облачного балансировщика может смениться имя. Обновите DNS CNAME или используйте spec.loadBalancerIP, если провайдер поддерживает (Troubleshooting (v1.17), документация Kubernetes).
Admission webhooks блокируют создание ресурсов при restore
Webhook может отклонить или изменить объект. Варианты: временно отключить webhook, использовать restore item action plugin (Troubleshooting (v1.17)).
Kopia: конфликт владельца репозитория (maintenance must be run by designated user)
При ручной работе с репозиторием Kopia нужно соблюдать пользователя/хост по умолчанию для репозитория Velero; при конфликте — выставить владельца maintenance через CLI Kopia (Troubleshooting (v1.17)).
Ошибки при восстановлении в форме
- PV, занятые работающими подами, не восстанавливаются.
- Конфликт имён: политика Обновить или удаление конфликтующего ресурса до нового
Restore.
Проверка состояния
Список BackupStorageLocation
kubectl get backupstoragelocation -n velero
Список BackupRepository
kubectl get backuprepository -n velero
События в неймспейсе velero
kubectl get events -n velero --sort-by='.lastTimestamp' | tail -20
Учётные данные для BackupStorageLocation и связанных секретов — шаги в Troubleshooting (v1.17).