18.3. 恢复 Data Grid 集群
从备份归档中恢复 Data Grid 集群状态。
先决条件
-
在源集群中创建备份 CR。 创建目标 Data Grid 集群 Data Grid 服务 pod。
注意如果您恢复了现有缓存,操作会覆盖缓存中的数据,但不会覆盖缓存配置。
例如,您要在源集群中备份一个名为
mycache的分布式缓存。然后,您会在作为复制缓存存在的目标集群上恢复mycache。在本例中,源集群中的数据会被恢复,mycache继续在目标集群中有一个复制的配置。确保没有到您要恢复的目标 Data Grid 集群的活动客户端连接。
从备份中恢复的缓存条目可能会覆盖较新的缓存条目。
例如,客户端执行cache.put(k=2)操作,然后恢复包含k=1的备份。
流程
-
使用
metadata.name字段命名RestoreCR。 -
指定用于
spec.backup字段的备份 CR。 使用
spec.cluster字段指定要恢复的 Data Grid 集群。apiVersion: infinispan.org/v2alpha1 kind: Restore metadata: name: my-restore spec: backup: my-backup cluster: target-cluster(可选)添加
spec.resources字段以只恢复特定资源。spec: ... resources: templates: - distributed-sync-prod - distributed-sync-dev caches: - cache-one - cache-two counters: - counter-name protoSchemas: - authors.proto - books.proto tasks: - wordStream.js应用您的
RestoreCR。oc apply -f my-restore.yaml
验证
检查
status.phase字段在RestoreCR 中状态为Succeeded,且 Data Grid 日志有以下以下信息:ISPN005045: Restore 'my-backup' complete
然后,您应该打开 Data Grid Console 或建立 CLI 连接,以验证数据和 Data Grid 资源是否按预期恢复。