我想备份我的 Amazon SageMaker 人工智能 Notebook 实例数据。
简短描述
SageMaker 人工智能 Notebook 实例使用 Amazon Elastic Block Store (Amazon EBS) 卷来存储数据。您可以将 EBS 卷挂载到 /home/ec2-user/SageMaker 目录中。当 Notebook 实例投入使用或可供启动时,您可以创建备份并将备份迁移到新的 Notebook。
**重要事项:**如果您在创建备份之前删除了 Notebook 实例,则连接到 Notebook 的 EBS 卷也会被删除。
解决方法
**注意:**如果您在运行 AWS 命令行界面 (AWS CLI) 命令时收到错误,请参阅 AWS CLI 错误故障排除。此外,请确保您使用的是最新版本的 AWS CLI。
要创建 Notebook 实例的备份,请使用 Notebook 终端或生命周期配置脚本。
使用 Notebook 终端创建备份
完成以下步骤:
- 创建 Amazon Simple Storage Service (Amazon S3) 存储桶。
- 在 S3 存储桶中为您的备份创建文件夹。
- 打开 SageMaker 人工智能控制台。
- 在导航窗格中,选择 Notebook 实例,然后选择您的 Notebook 实例。
- 在 Actions(操作)下,选择 Open Jupyter(打开 Jupyter)。
- 要打开 Notebook 实例终端,请选择 New(新建),然后选择 Terminal(终端)。
- 要将文件从 Notebook 实例复制到 S3 存储桶文件夹,请运行 cp AWS CLI 命令:
aws s3 cp --recursive /home/ec2-user/SageMaker/ s3://aws-s3-bucket/folder-name/
**注意:**将 s3://aws-s3-bucket 和 folder-name 替换为您的值。
- (可选)要将文件从 S3 存储桶复制到新的 Notebook 实例,请运行 cp AWS CLI 命令:
aws s3 cp --recursive s3://aws-s3-bucket/folder-name/ /home/ec2-user/SageMaker/
**注意:**将 s3://aws-s3-bucket 和 folder-name 替换为您的值。
使用生命周期配置脚本创建备份
完成以下步骤:
- 打开 SageMaker 人工智能控制台。
- 在导航窗格中,选择 Lifecycle configurations(生命周期配置)。
- 选择 Create configuration(创建配置)。对于 Name(名称),输入备份的名称,例如 ebs-backup。
- 在 Scripts(脚本)下,选择 Start notebook(启动 Notebook)选项卡,然后输入您的脚本。有关示例脚本,请参阅 GitHub 网站上的 amazon-sagemaker-notebook-instance-lifecycle-config-samples。
**注意:**将 Create notebook(创建 Notebook)选项卡留空。
- 选择 Create configuration(创建配置)。
- 导航到您的 Notebook 实例。
**注意:**只有当现有 Notebook 实例处于 Stopped(已停止)状态时,您才能将生命周期配置附加到该实例。
- 选择 Edit(编辑)。
- 选择 Additional configuration(其他配置)。
- 对于 Lifecycle configuration(生命周期配置),请选择您的配置。
- 选择 Update notebook instance(更新 Notebook 实例)。
- 在 Tags(标签)下,选择 Edit(编辑)。
- 为您的存储桶添加带有密钥值的标签,例如 sagemaker-ebs-backup-region-account_id。
注意:附加的执行角色必须允许执行 Amazon S3 同步的权限。
- 选择 Save(保存)。
- 要创建备份,请启动 Notebook 实例。
快照看起来与 /home/ec2-user/SageMaker/ 类似,您可以在 s3://ebs-backup-bucket/source-instance-name_snapshot-timestamp/ 中找到该快照。当您看到文件 /home/ec2-user/SageMaker/BACKUP_COMPLETE 时,备份就完成了。
**注意:**备份过程时间取决于卷中数据的总大小。