备份与恢复
只有同时保留 PostgreSQL 数据以及用于解释这些数据的 Secret 和配置,才能恢复本地部署的 AISIX Cloud。只有数据库备份而没有匹配的主密钥,已加密的凭据将无法读取;只有配置文件而没有匹配的数据库,也无法重建组织、资源或现有网关所信任的证书颁发机构。
应将数据库、加密密钥、部署配置和软件版本视为同一个恢复集。请保留每项资产的匹配副本,把整个恢复集作为 Secret 保护,并在依赖它执行升级回滚或灾难恢复之前演练恢复流程。
选择恢复范围
| 目标 | 必须保护的内容 |
|---|---|
| 恢复完整的本地部署控制面 | 备份完整的 PostgreSQL 状态,以及匹配的 Secret、部署配置和软件版本。 |
| 回滚升级 | 在升级前立即创建恢复集。在启动旧版控制面之前先恢复数据库。 |
| 移动或复现单个组织 | 使用组织备份与恢复。组织备份包不能替代完整部署备份。 |
| 控制面暂时中断时让网关继续提供服务 | 配置离线韧性。网关快照缓存是连续性机制,不是控制面备份。 |
保护恢复集
使用以下资产构建恢复集,并将其存储和保留在部署故障域之外。
PostgreSQL 状态
控制面数据库包含组织、环境、用户、模型、策略、加密凭据、投射到网关的配置、审计和用量数据,以及根证书颁发机构与网关证书账本。请备份整个数据库,不要只选择个别应用表。
使用 PostgreSQL 感知的备份方式,或与 PostgreSQL 协调一致的存储快照。不要把正在运行的数据库卷当作普通文件复制。备份必须同时保留 public、auth schema,以及 dp-manager 创建的 Kine 表。
对于外部数据库,请把连接角色、所有权和所需权限纳入数据库恢复计划。即使单库 dump 包含引用 cp_api_app 的授权,它也不会保留集群全局角色。请选择一种恢复策略:
- 保留带有
NOSUPERUSER NOBYPASSRLS NOINHERIT NOLOGIN属性的cp_api_app,并恢复依赖该角色的所有权和权限语句; - 省略这些语句,让
cp-api在启动时重新创建角色和授权。
两种角色契约请参阅外部数据库。AISIX 不提供数据库备份命令,也不会替代数据库平台负责的备份工具和保留策略。