如果EFS已经被恢复过一次,使用boto3客户端恢复EFS将无法工作。

0

【以下的问题经过翻译处理】 你好,

我一直在使用EFS备份和恢复,并使用Python boto3客户端执行所有操作。我遇到了一个非常棘手的情况,这里EFS的恢复不起作用。以下是步骤(所有操作都是使用Python boto3客户端执行的,除非明确说明)

  • 我创建了一个EFS备份。然后使用恢复点ARN通过调用start_restore_job()将它恢复回同一文件系统。这创建了一个成功完成的还原作业,并在文件系统上创建了一个单独的还原目录。
  • 然后我从文件系统中删除了已恢复的目录。
  • 然后再次使用相同的恢复点ARN调用start_restore_job(),并将其恢复到相同的文件系统。我期望它创建一个其他的还原作业,但它失败了,错误消息为“An error occurred (InvalidParameterValueException) when calling StartRestoreJob operation: Restore job xyz already finished”。xyz是在第一步创建的相同还原作业。看起来,如果一个还原作业已经成功完成,则不会创建一个新的还原作业。
  • 然后,我从控制台运行还原操作,它如预期地创建了一个新的还原作业。

我不确定这是否是boto3客户端或API本身的bug,但是应该允许我为同一恢复点ARN运行多个还原操作。

profile picture
专家
已提问 7 个月前23 查看次数
1 回答
0

【以下的回答经过翻译处理】 转自Aram Koukia的评论:

您提供了IdempotencyToken吗? 如果您想启动一个新的还原作业,则在进行API调用时需要提供一个新的IdempotencyToken。

StartRestoreJob API文档: https://docs.aws.amazon.com/aws-backup/latest/devguide/API_StartRestoreJob.html

https://docs.aws.amazon.com/aws-backup/latest/devguide/API_StartRestoreJob.html#API_StartRestoreJob_RequestSyntax

profile picture
专家
已回答 7 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则