0
点赞
收藏
分享

微信扫一扫

AWS Glacier数据恢复

数据archive 到 Glacier 之后如果单个或者少量文件恢复,可以直接在Console界面上操作

AWS Glacier数据恢复_数据恢复

AWS Glacier数据恢复_restore_02

但是对于大量文件需要恢复对情况,就必须用aws cli或者使用Batch Operations 来处理

AWS Glacier数据恢复_glacier_03

对于AWS CLI方式,这篇文章里面有探讨 https://blog.51cto.com/helpdesk/7029748

但是发现一个棘手的问题,在AWS CloudShell上运行相关的命令,完全没有问题,但是通过Ubuntu EC2的话,却报错,尝试debug也没有完全解决, 尤其是对于包含空格的文件名的处理,更加令人头疼,那为何不在CloudShell上跑就好了?因为CloudShell只能跑20分钟就会自动退出session,而且这是它的limitation,没法设置。后来尝试用S3 Batch Job的方式解决,具体如下。

1.- 使用命令导出需要恢复的文件列表

aws s3api list-objects-v2 --bucket test-data --prefix folder/a/ --query 'Contents[?StorageClass==`GLACIER`][Key]' --output text | sed 's/\t/\n/g' > galcier-restore.txt

2.- 创建csv文件,一栏放bucket name,一栏放key

AWS Glacier数据恢复_glacier_04

Example:bucket name: test-data, key: abc/B/C/D360090%286-22-2021+12-56-1%29-1.htm

AWS Glacier数据恢复_glacier_05

3.- 将这个csv文件上传到S3

4.- 创建job指向 csv文件

AWS Glacier数据恢复_数据恢复_06

操作选择 Restore

AWS Glacier数据恢复_restore_07

设置恢复需要保存的时长,这里不支持Console界面的快速恢复,只能选Standard

AWS Glacier数据恢复_glacier_08

设定完成报告的S3保存路径

AWS Glacier数据恢复_数据恢复_09

Permission建议根据这个提示创建一个新role

AWS Glacier数据恢复_数据恢复_10

创建好后,需要手动触发 Run Job

AWS Glacier数据恢复_glacier_11

完成后系统会报告结果

AWS Glacier数据恢复_glacier_12

举报

相关推荐

0 条评论