跳到主要内容

FAQ

Testudo 和 Velero 是什么关系?

Testudo 复用 Velero 的备份恢复能力,但不会让用户直接编排多个 Velero BackupRestoreSchedule。用户声明 DisasterInstanceDataSyncResourceSyncDisasterOperation 等 CRD,由 operator 创建和观测 Velero 资源。

容灾切换会自动切 DNS 或全局流量吗?

不会。Testudo 负责 Kubernetes 应用级容灾编排,不替代 DNS、网关、Ingress、GSLB 或业务流量治理。切换完成后,应按业务 runbook 切换外部流量。

实例进入 Active 是失败吗?

不是。Failover 成功后实例通常进入 Active,当前控制台展示为 未保护。这表示应用已经在目标集群运行,但新的反向保护还没有建立。确认目标集群接管业务后,应执行 反向保护

为什么最终同步会超时?

最终同步耗时取决于数据量、对象存储吞吐、Velero 状态和网络。若 FinalSync 超过操作超时时间,operator 会记录失败原因并按能力执行补偿。生产切换前应根据数据量设置合理超时,或在 runbook 允许时使用最近一次成功同步点切换。

目标集群需要提前安装应用吗?

通常不需要完整安装应用,但需要准备运行依赖,例如 StorageClass、IngressClass、镜像拉取 Secret、必要 CRD、网络策略和对象存储访问能力。ResourceSync 会恢复应用资源为 standby 形态。

可以只做备份恢复,不做容灾吗?

可以。AppBackupAppRestore 可以用于应用备份和恢复教程路径,不一定需要创建 DisasterInstance

支持哪些 Kubernetes 和 Velero 版本?

当前代码依赖 Kubernetes v0.34.x 客户端和 Velero v1.17.0 Go module。实际支持范围以 兼容性矩阵 和发布测试结果为准。

安装后控制台打不开怎么办?

先检查:

kubectl -n disaster-system get pods,svc
curl -I http://<NodeIP>:30087
kubectl -n disaster-system port-forward svc/disaster-web 8087:80

更多步骤见 安装排错

API 调用为什么返回 401?

生产环境业务接口需要 JWT。先通过 /login 获取 token,再用 Authorization: Bearer <accessToken> 调用 API。详见 API 认证

如何报告安全问题?

请通过 GitHub Security Advisories 报告,不要在公开 issue 中披露疑似漏洞。详见 安全概览