应用快照与版本
应用快照用于保存应用在某一时刻的版本状态,记录组件编排、配置、依赖关系和版本信息,便于后续查看差异、回滚、导出或发布。
它首先是一项应用内的版本管理能力,因此更适合放在应用运维场景中理解和使用。用户可以先为当前应用创 建快照,形成版本记录;后续如果需要离线导出或分发到内部组件库,再基于某个快照继续执行导出或发布操作。
版本说明
应用快照与版本功能从 Rainbond v6.7.0 开始支持。v6.7.0 以前的版本仍以原有应用模板相关操作为主,不提供当前文档中的快照页面与操作流程。
应用快照不等于虚拟机快照
应用快照和虚拟机、磁盘层面的快照不是同一个概念。
应用快照保存的是应用层的元数据,例如:
- 应用包含的组件
- 组件之间的依赖关系
- 配置、编排和版本说明
- 某次版本对应的变更记录
它不保存以下内容:
- 虚拟机磁盘块数据
- 操作系统运行状态
- 容器内存状态
- 数据库中的实际业务数据
- PVC 中已经写入的运行时数据
因此,应用快照适合做版本管理和回滚,不适合替代数据库备份、存储快照或灾备方案。
快照、导出、发布、回滚的关系
应用快照延续了原有应用模板的底层版本能力,但用户操作路径更清晰了。
- 创建快照:保存当前应用版本状态
- 导出:直接基于某个快照导出,不需要先走发布流程
- 发布:将某个快照发布到内部组件库,供其他团队安装
- 回滚:将当前应用恢复到某个历史快照对应的状态
换句话说,快照是版本基础,发布是分发动作,内部组件库中的模板是发布后的交付形态。
| 动作 | 是否必须 | 作用 |
|---|---|---|
| 创建快照 | 是 | 保存当前应用版本状态 |
| 导出 | 否 | 直接导出某个快照对应的版本内容 |
| 发布 | 否 | 发布到内部组件库,供其他团队安装 |
| 同步镜像 | 视发布流程而定 | 属于发布到组件库过程中的动作之一 |
| 回滚 | 否 | 恢复到某个历史快照状态 |
什么时候创建快照
建议在以下场景创建快照:
- 应用完成一轮功能开发或配置调整后
- 即将进行升级、改造或结构性变更前
- 需要保留一个可回滚的稳定版本时
- 准备导出或发布到内部组件库前