Eclipse Che 的备份机制由 DevWorkspace Operator 根据集群配置自动创建,工作区停止时自动生成备份镜像。备份与恢复功能支持在同一集群恢复,也支持跨集群迁移。
备份机制
备份由 DevWorkspace Operator 根据集群配置自动创建,无需用户手工触发。工作区停止时自动生成备份镜像。
查看备份
在工作区列表页切换到 备份 视图,可查看默认注册表中的全部备份:
| 列 | 说明 |
|---|---|
| 工作区名称 | 带「活跃」/「已删除」徽章(已删除工作区仅剩备份) |
| 备份时间 | 相对时间,悬浮显示完整日期 |
| 大小 | 以 B / KB / MB / GB 格式化显示 |
| 状态 | 成功 / 失败 / 进行中 / 从未 / 不可用 |
| 操作 | 「从备份创建」入口(无备份镜像时提示「暂无备份镜像」) |
工具栏提供搜索框与 恢复 按钮。无备份时显示空状态「默认注册表中没有备份」。
工作区备份信息
在 工作区详情 的 备份 Tab 可查看单个工作区的备份状态、备份计划、上次备份时间与备份镜像地址。
从备份恢复
从备份恢复功能(路由 /restore-from-backup)可从备份镜像创建一个全新的工作区。
入口
- 工作区列表 → 备份 视图 → 点击 恢复(或 从备份恢复)按钮
- 备份列表某行 → 点击 从备份创建
恢复模式
页面提供两种恢复模式(通过「恢复模式」手风琴切换):
| 模式 | 说明 |
|---|---|
| 默认注册表 | 从当前集群默认注册表中的备份恢复工作区。仅当集群已配置备份 registry 时可用 |
| 外部注册表 | 从外部注册表的备份镜像恢复,支持跨集群迁移/恢复。镜像格式:registry-host/namespace/workspace-name:tag |
表单字段
| 字段 | 说明 |
|---|---|
| 选择备份 | 下拉选择要恢复的备份,显示工作区名称与 Active/Deleted 状态 |
| 备份镜像 URL | 外部注册表模式下的备份镜像地址,自动校验格式(registry-host/namespace/workspace-name:tag) |
| 工作区名称 | 必填,≤ 63 字符,仅允许小写字母、数字、连字符;与现有工作区重名报错,与已有备份重名时显示黄色警告(新工作区将与该备份关联) |
附加选项
| 选项 | 说明 |
|---|---|
| 资源限制 | 可设置内存限制(GiB)与 CPU 限制(核数),默认使用平台默认值 |
| 编辑器选择器 | 选择恢复后工作区使用的编辑器(使用默认 / 选择编辑器 / 使用编辑器定义) |
确认与恢复
点击 恢复工作区 后弹出 「确认从备份恢复」 弹窗,列出将创建的工作区名称、恢复模式与备份镜像,确认后:
- 系统基于备份镜像构建恢复用的 devfile(标记
RESTORE_WORKSPACE=true与RESTORE_SOURCE_IMAGE=<镜像URL>) - 创建 DevWorkspace 资源(初始为停止状态)
- 成功后在新标签页打开 IDE 加载器,开始启动恢复的工作区
从备份恢复会创建一个新的工作区(不同于原地还原),恢复过程中请勿删除原始备份,以免恢复失败。
跨集群迁移
利用 外部注册表 模式可实现跨集群迁移:
- 在源集群导出备份镜像(推送到目标集群可访问的外部镜像仓库)
- 在目标集群的 从备份恢复 页面选择 外部注册表
- 输入备份镜像 URL(
registry-host/namespace/workspace-name:tag),工作区名称可自动从镜像末尾检测 - 点击恢复,即可在目标集群得到一份完整的工作区副本
跨集群恢复要求目标集群已启用备份功能,且能访问源集群导出的备份镜像仓库。
FAQ
Q: 备份视图中没有看到任何备份?
原因: 备份由 DevWorkspace Operator 按集群配置自动创建,通常在工作区停止时生成。
解决方法: 确认平台已配置备份 registry;停止工作区后等待备份生成,再刷新备份视图。
Q: 恢复时提示「备份镜像 URL 无效」?
原因: 镜像 URL 格式不正确。
解决方法: 使用标准格式:registry-host/namespace/workspace-name:tag(如 registry.example.com/namespace/workspace:latest)。
Q: 恢复的工作区与原始工作区重名?
说明: 与现有工作区重名会报错;与已有备份重名时新工作区将与该备份关联(黄色警告但可继续)。
解决方法: 使用新的工作区名称,或先删除/重命名同名工作区。