备份与恢复存储状态
可用备份是一组相互一致的数据、元数据、配置与身份,兼容的部署能够重新打开它们。只复制 CommitLog 目录不构成完整集群备份。本文给出隔离 LocalFile 教程的停机复制流程,并说明其他部署还需保留的状态。
盘点恢复集合
| 状态 | 需要包含并识别的内容 |
|---|---|
| 消息主数据 | 所有配置的可写/只读 CommitLog 路径、分段布局及相关持久格式元数据 |
| 本地派生状态 | ConsumeQueue、键索引、检查点、恢复游标与后端元数据 |
| Broker 元数据 | 主题、队列映射、订阅组、消费偏移量、顺序/过滤状态,以及配置的 Broker 身份/epoch 路径 |
| 定时、事务、重试、POP | 所选模式的权威记录、检查点、元数据与业务核对要求 |
| RocksDB / 分层状态 | 与主日志一致的数据库、次级文件及元数据;次级路径不会自动成为独立备份 |
| NameServer | 持久化 KV/配置文件;实时路由由 Broker 重新注册 |
| Controller | 各记录身份对应的持久化 Raft 日志、状态、快照与成员关系;Controller 数据不包含消息正文 |
| 部署与安全 | 有效配置、兼容二进制/feature、身份与卷映射、ACL/认证快照、证书与凭据恢复访问 |
| 应用 | 业务幂等/事务状态,以及解释恢复消息所需的客户端本地偏移量 |
以有效路径为准,不依赖默认目录名。Broker 的 [broker].storePathRootDir 与 [store].storePathRootDir 可以不同,本地教程就使用不同目录。包含外部挂载及所有多路径根目录。备份含有凭据时,应具备与原文件相同的访问限制。