[英]AWS S3 data transfer using AWS CLI
我正在嘗試使用AWS CLI將25 TB的s3中存儲的數據從一個AWS賬戶轉移到另一個AWS賬戶中的另一個s3存儲桶(兩個賬戶在不同地區),有人可以建議我使用哪個EC2實例更好地處理數據使用CLI進行傳輸,主要是完成傳輸需要多少時間。
復制文件
復制是容易的部分! 使用AWS命令行界面(CLI) :
aws s3 sync s3://source-bucket s3://destination-bucket
數據將直接在存儲桶之間傳輸- 不會下載和上傳數據。 因此,無論您使用多大的EC2實例大小都沒關系-您甚至可以從自己的計算機上運行命令,並且速度會一樣快。 CLI將向每個要復制的文件發送必要的復制命令到S3。
使用sync
命令的好處是,如果出現問題,可以恢復副本,因為它僅復制自上次同步以來丟失或更新的文件。
權限
什么,你需要考慮的是如何允許訪問復制文件。 假設您有:
您應從有權寫入存儲桶B的帳戶B中的用戶(“用戶B”)運行sync
命令。
您還需要向存儲桶A添加一個存儲桶策略,該策略專門允許用戶B進行訪問。該策略如下所示:
{
"Id": "Policy1",
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ReadOnlyAccess",
"Action": [
"s3:GetObject",
"s3:ListBucket"
],
"Effect": "Allow",
"Resource": "arn:aws:s3:::my-bucket/*",
"Principal": {
"AWS": [
"arn:aws:iam::123456789012:user/user-b"
]
}
}
]
}
arn
值為用戶B的ARN。
定時
如果存儲桶位於同一區域,則傳輸會更快。 但是,我不知道轉移需要多長時間。 25TB實際上是很多數據! (您是否曾經嘗試在計算機上復制1TB數據?速度很慢!)
令人高興的是,您可以多次使用aws s3 sync
命令。 假設您需要在周末進行轉移。 您可以在一周中運行該命令,然后在周末再次運行它。 僅復制已添加/更改的文件,因此最終復制窗口將很小。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.