0

我们正在尝试拥有一个 k8s 集群的副本。我们已经在 s3 中进行了集群备份,这是由 ark 在集群内运行(作为计划)完成的。我正在尝试手动将数据恢复到新集群,我在 vm 中有 tar.gz 文件,但我不知道如何恢复它,文档和其他博客告诉使用ark restore create --from-backup <backup-name>. 我不确定我必须提供什么作为备份名称,我提取了备份文件并拥有资源目录,如 velero 文档中所述。我尝试了任何我能想到的名字。但是得到了An error occurred: backups.ark.heptio.com "<strings that I am trying as backup_name>" not found。我是新手,所以请询问我是否需要提供更多信息。

4

1 回答 1

0

我们将 ark 创建的备份存储在 s3 中,该备份在 ark 的 yml 文件中配置。

为了查看旧集群中的备份,我们必须将新集群中的 ark schedular 映射到同一个 s3 存储桶,这可以通过在 ark yml 文件中配置 schedular 来完成。然后我们可以使用命令检查自定义资源kubectl get crd。我们将获得所有的自定义资源,检查 ark,它会是这样的

backups.ark.heptio.com。

然后我们就可以看到这个crd中有哪些备份了。使用kubectl get backups.ark.heptio.com -n <ark-namespace>. 它应该显示所有可用的备份。应该有一个备份列表。然后使用恢复命令。

ark restore create --from-backup <name of the backup that you want to restore, we got it in the previous step> -n <namespace-where-ark-running>. It should start restoring the backup. You can check the restore status using `ark restore describe --from-backup <name of the backup that you want to restore, we got it in the previous step> -n <namespace-where-ark-running>`.

此外,我们可以检查集群内运行的 ark pod 的日志,它应该显示正在恢复的内容。

于 2019-10-11T11:05:22.100 回答