Skip to content

Commit 6be7a80

Browse files
committed
update design doc: cluster_backup_and_restore.md
1 parent eae5cc5 commit 6be7a80

File tree

1 file changed

+10
-4
lines changed

1 file changed

+10
-4
lines changed

doc/design/zh/cluster_backup_and_restore.md

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@
22

33
目前只支持备份到 ceph 对象存储及本地 pvc 中。
44

5-
备份开始时使用 redis-cli 同步 Master 的 RDB到本地后再使用 [Rclone](https://rclone.org/) 将 RDB 文件传输到对象存储或者 pvc 中。
5+
备份开始时使用 redis-cli 同步 Master 的 RDB到本地后再使用 [Rclone](https://rclone.org/)
6+
RDB 文件传输到对象存储或者 pvc 中,恢复时先使用 Rclone 从之前备份的位置同步备份到本地后,再启动 Redis
7+
服务。备份恢复的工具类镜像中预置了 redis-cli 和 Rclone,参见 [Dockerfile](hack/docker/redis-tools/Dockerfile)
68

79
## 备份
810

@@ -18,11 +20,15 @@ redis/default/redis-cluster-test/20191101083020/backup-1
1820
redis/default/redis-cluster-test/20191101083020/backup-2
1921
```
2022

21-
每个master节点备份的快照和节点元数据信息会存储在上述路径,用户可以到相应的bucket中查看
23+
每个master节点备份的快照和节点元数据信息会存储在上述路径,用户可以到相应的 bucket 中查看
2224

2325
## 从备份恢复
2426

2527
从备份恢复和创建步骤不同,分为两阶段,第一阶段同步数据,从快照启动 Master 节点;第二阶段启动 Slave 节点。
2628

27-
1. 根据备份信息,创建与备份集群切片数相同的 Statefulset,设置 Replicas 为 1,只启动 master 节点,注入 init container,init container 的作用是拉取对象存储上的快照数据。
28-
2. 第1步完成之后,增加每个分片的副本数调大 Statefulset 的 Replicas,拉起 Slave 节点,等待所有 Pod 节点状态变为 Runing 之后,设置每个 Statefulset 的 Slave 节点 replicate Master 节点,加入集群。
29+
1. 设置`DistributedRedisCluster.Status.Restore.Phase=Running`,根据备份信息,创建与备份集群切片数相同的 Statefulset,
30+
设置 Replicas 为 1,只启动 master 节点,注入 init container,init container 的作用是拉取对象存储上的快照数据。
31+
2. 等待第1步同步数据完成,master 启动完成后,设置`DistributedRedisCluster.Status.Restore.Phase=Restart`,移除
32+
init container 后等待节点重启。
33+
3. 第2步完成之后,增加每个分片的副本数调大 Statefulset 的 Replicas,拉起 Slave 节点,设置`DistributedRedisCluster.Status.Restore.Phase=Succeeded`
34+
等待所有 Pod 节点状态变为 Runing 之后,设置每个 Statefulset 的 Slave 节点 replicate Master 节点,加入集群。

0 commit comments

Comments
 (0)