Amazon S3 バケットを 1 つの AWS アカウントから別のアカウントに移行することは簡単です...あなたがそれを試すまで データの 4–5 terabytes このような場合、通常の方法は、 or cross-account replication — feel like mailing every single file via carrier pigeon. They are fine for gigabytes, but you’ll be waiting days (and paying more than you’d like) for terabytes. それらはギガバイトで大丈夫ですが、あなたはテラバイトのために待つ日々を過ごします。 aws s3 cp それがどこ 入って来たので、私の場合は、 「正常な」方法よりも、完全に自動化され、安全です。 AWS DataSync 10× faster なぜ大規模な移行のためのDataSync? AWS DataSync は、データの大量移動のために構築されており、テラバイトからペタバイトまで考えます。 AWS サービス間(またはオンプレムから AWS への)間で直接データを移行します。 移転を並行し、それらをより速くします。 メタデータ、オブジェクトタグ、および ACL を自動的に処理します。 段階的に実行できますので、最小限のダウンタイムでカットオーバーを行うことができます。 あなたが動いているとき AWS アカウント間では、これらの利点が重要です。 4–5 TB ステップ1:バケツの準備 2 バケツが必要です: オリジナルの AWS アカウント(データの 5 TB を保持するアカウント)のソース バケット。 ターゲット AWS アカウントのターゲットバケット 両方とも必須: 始める前に存在する。 最大速度と低コストを望むなら、同じ AWS リージョンにいること。 バージョニングはオプション(DataSync はレプリケーションのようにそれを必要としません)。 STEP 2: IAM 役割と許可 DataSync には、ソースから読み込み、アカウントを介して目的地に書き込みする許可が必要です. This is where IAM roles and bucket policies come into. (ターゲットアカウントの DataSync 役割とログインしたユーザーがオブジェクトを読み、リストすることを許可します) Source Bucket Policy { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::DIST_ACCOUNT_ID:role/datasync-role", "arn:aws:iam::DIST_ACCOUNT_ID:user/distention_account_logged_in_user" ] }, "Action": [ "s3:GetBucketLocation", "s3:ListBucket", "s3:ListBucketMultipartUploads" ], "Resource": "arn:aws:s3:::source_bucket" }, { "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::DIST_ACCOUNT_ID:role/datasync-role", "arn:aws:iam::DIST_ACCOUNT_ID:user/distention_account_logged_in_user" ] }, "Action": [ "s3:AbortMultipartUpload", "s3:DeleteObject", "s3:GetObject", "s3:ListMultipartUploadParts", "s3:PutObjectTagging", "s3:GetObjectTagging", "s3:PutObject" ], "Resource": "arn:aws:s3:::source_bucket/*" } ] } (これは、DataSync がソースバケットにアクセスするために使用する役割です。 Destination Account Role Policy { "Version": "2012-10-17", "Statement": [ { "Action": [ "s3:GetBucketLocation", "s3:ListBucket", "s3:ListBucketMultipartUploads" ], "Effect": "Allow", "Resource": "arn:aws:s3:::source_bucket" }, { "Action": [ "s3:AbortMultipartUpload", "s3:DeleteObject", "s3:GetObject", "s3:ListMultipartUploadParts", "s3:PutObject", "s3:GetObjectTagging", "s3:ListBucket", "s3:PutObjectTagging" ], "Effect": "Allow", "Resource": "arn:aws:s3:::source_bucket/*" } ] } (DataSync 役割とターゲット アカウントのユーザーがデータを書き込むことを許可します。 Destination Bucket Policy { "Version": "2008-10-17", "Statement": [ { "Sid": "DataSyncCreateS3LocationAndTaskAccess", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::DIST_ACCOUNT_ID:role/datasync-role", "arn:aws:iam::DIST_ACCOUNT_ID:user/distention_account_logged_in_user" ] }, "Action": [ "s3:GetBucketLocation", "s3:ListBucket", "s3:ListBucketMultipartUploads", "s3:AbortMultipartUpload", "s3:DeleteObject", "s3:GetObject", "s3:ListMultipartUploadParts", "s3:PutObject", "s3:GetObjectTagging", "s3:PutObjectTagging" ], "Resource": [ "arn:aws:s3:::dist_bucket", "arn:aws:s3:::dist_bucket/*" ] } ] } Step 3: DataSync Locations を作成する 私たちは2つの「場所」を必要とします - 一つはソースバケットのために、もう一つは目的地のために。 AWS CLI for source bucket の例: aws datasync create-location-s3 \ --s3-bucket-arn arn:aws:s3:::s3-source-01 \ --s3-storage-class STANDARD \ --s3-config BucketAccessRoleArn="arn:aws:iam::1234567890:role/datasync-role" \ --region us-east-1 ターゲットバケットのために、独自のバケットARNで繰り返します。 ステップ 4: DataSync タスクを作成する 両方の場所を作成すると、ソースロケーションからターゲットロケーションにオブジェクトをコピーする DataSync タスクを設定します。 あなたは: メタデータのコピーを有効にします(タイムスタンプ、タグを保存します)。 最終カットまで増加同期を実行します。 コンソールを使用して、転送速度と完了を監視します。 STEP 5: Run and Monitor the Transfer(転送の実行と監視) のために , you are not finishing in minutes, but you will still see a huge improvement over traditional methods. In my migration, the speed difference was dramatic — hours instead of days. 私の移行では、スピードの違いは劇的でした。 4–5 TB Pro Tips for Large Transfers(大規模な移転のためのプロ ヒント) 同じ地域はより安く、より速く、地域間の送迎は請求額を2倍にすることができる。 Incremental runs are your friend — run DataSync multiple times before final cutover so you only copy changes on the last run. 最終的に実行する前に、DataSyncを複数回実行して、最後の実行時に変更をコピーするだけです。 IAM を緊密に保つ - あなたはアカウント間のアクセスを開いています; 移行後にそれを削除します。 移行をタグにし、AWS Cost Explorer で移行コストを追跡できます。 最終思考 移住 AWS アカウントの間で選択することを意味する。 または DataSync は、この方程式を変更します — giving you 手動スクリプトやダウンタイムなし。 5 TB of S3 data ゆっくりとフリー・イッシュ 速くて高価 fast, secure, repeatable migrations 水を運ぶバケツから高圧パイプラインのインストールにアップグレードするように考えてください。