环境要求
部署前需要准备一个管理集群、至少两个业务集群、对象存储和可用的镜像仓库。
Kubernetes 集群
- 管理集群:运行
disaster-operator、disaster-server、CRD 和平台配置。 - 源集群:当前承载业务工作负载。
- 目标集群:接收同步资源和数据,故障时承载业务。
源集群和目标集群可以与管理集群相同,但生产环境建议独立部署。
Velero
Operator 会创建和观测 Velero Backup、Restore、Schedule、BackupStorageLocation 等资源。每个需要参与容灾的业务集群都应具备可工作的 Velero 组件和插件。
对象存储
需要一个 S3 兼容对象存储,例如 MinIO、AWS S3 或其他兼容实现。对象存储需要同时被源集群和目标集群访问。
网络与权限
- 管理集群能够访问 Kubernetes API。
- Operator 能够访问注册的远端集群。
- 业务集群能够访问对象存储 endpoint。
- 远端集群访问凭证应具备创建/读取/更新/删除 Velero 资源和被保护命名空间资源的权限。
客户端工具
推荐准备:
kubectlhelm或 Kustomize- 可访问对象存储的命令行工具
- 能调用 REST API 的工具,例如
curl