Transfer Data Between Amazon S Buckets Across AWS Accounts with AWS DataSync

Listen to this Post

AWS DataSync is a powerful managed service for transferring data between Amazon S3 buckets across different AWS accounts. It offers more features and better performance compared to S3 Cross-Account Replication, though at an additional cost based on data transfer volume.

You Should Know:

  1. Setting Up AWS DataSync for S3 Cross-Account Transfer
    To transfer data between S3 buckets in different AWS accounts using AWS DataSync, follow these steps:

Step 1: Configure IAM Roles

Ensure both AWS accounts have the necessary IAM permissions:

aws iam create-role --role-name DataSyncS3AccessRole --assume-role-policy-document file://trust-policy.json

Example `trust-policy.json`:

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "datasync.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}

#### **Step 2: Create a DataSync Task**

Use the AWS CLI to set up a DataSync task:

aws datasync create-task \
--source-location-arn arn:aws:s3:::source-bucket \
--destination-location-arn arn:aws:s3:::destination-bucket \
--cloud-watch-log-group-arn arn:aws:logs:us-east-1:123456789012:log-group:/aws/datasync \
--name "S3CrossAccountTransfer" \
--options "VerifyMode=POINT_IN_TIME_CONSISTENT, OverwriteMode=ALWAYS"

#### **Step 3: Monitor the Transfer**

Check the status of your DataSync task:

aws datasync describe-task-execution --task-execution-arn <execution-arn>

### **2. Key AWS DataSync Commands**

  • List DataSync Tasks:
    aws datasync list-tasks
    
  • Start a Task Manually:
    aws datasync start-task-execution --task-arn <task-arn>
    
  • Delete a DataSync Task:
    aws datasync delete-task --task-arn <task-arn>
    

### **3. Performance Optimization**

  • Adjust Bandwidth Limits:
    aws datasync update-agent --agent-arn <agent-arn> --bandwidth-limit "100M"
    
  • Enable Task Logging:
    aws datasync update-task --task-arn <task-arn> --options "LogLevel=TRANSFER"
    

### **4. Comparing DataSync vs S3 Batch Operations**

  • DataSync: Best for automated, recurring transfers with integrity checks.
  • S3 Batch Operations: Better for one-time bulk operations.

## **What Undercode Say:**

AWS DataSync is a robust solution for cross-account S3 transfers, offering speed, reliability, and advanced features. For large-scale migrations, consider combining it with AWS Snow Family for physical data transfer. Always monitor transfer logs and optimize bandwidth for cost efficiency.

## **Expected Output:**

Task ARN: arn:aws:datasync:us-east-1:123456789012:task/task-0EXAMPLE8 
Status: SUCCESS 
Transferred: 50 GB 

Reference: Transfer Data Between Amazon S3 Buckets Across AWS Accounts with AWS DataSync

References:

Reported By: Darryl Ruggles – Hackers Feeds
Extra Hub: Undercode MoN
Basic Verification: Pass ✅

Join Our Cyber World:

💬 Whatsapp | 💬 TelegramFeatured Image