Velero 集成
Testudo 复用 Velero 作为备份恢复执行引擎。项目不会重写 Velero 的底层备份能力,而是在其上增加 CRD 编排和状态机。
使用的 Velero 资源
BackupRestoreScheduleBackupStorageLocationPodVolumeBackupPodVolumeRestore
AppBackup 到 Backup
AppBackup 控制器负责根据项目内 spec 创建 Velero Backup,并把 Velero phase 转换为 AppBackup status。
AppRestore 到 Restore
AppRestore 控制器负责创建 Velero Restore,注入 namespace mapping、restore policy、resource modifiers,并观测 restore 和 PVR 状态。
常见排障点
- BSL 非 Available。
- Velero plugin 缺失或版本不兼容。
- 对象存储凭证错误。
- 源/目标集群 StorageClass 不匹配。
- PVR 失败导致 PVC 数据未恢复。
- Restore modifier 规则不合法。