使用heptio ark恢复k8s集群备份时出现问题

时间:2019-10-09 12:37:21

标签: kubernetes devops velero

我们正在尝试创建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。 我对此并不陌生,所以请问我是否需要提供更多信息。

1 个答案:

答案 0 :(得分:0)

  

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

为了查看在旧群集中进行的备份,我们必须将新群集中的ark时间表映射到相同的s3存储桶,这可以通过在ark yml文件中配置时间表来完成。然后,我们可以使用命令kubectl get crd检查自定义资源。 我们将获取所有自定义资源,检查方舟,它将类似于

  

backups.ark.heptio.com。

然后我们可以看到此crd中有哪些备份。使用kubectl get backups.ark.heptio.com -n <ark-namespace>。 它应该显示所有可用的备份。备份列表应该会出现。然后使用restore命令。

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的日志,它应该显示正在还原的内容。