Quiero mover todos mis datos del Bucket1 de la cuenta A al Bucket2 de la cuenta B
Para esto:
Descargué AWS CLI para Windows.
Credenciales de IAM ingresadas usando el comando aws configure (estas credenciales son de la cuenta B )
Ejecute el comando para sincronizar depósitos: aws s3 sync s3://Bucket1 s3://Bucket2
Recibí el siguiente error:
error fatal: se produjo un error (InvalidRequest) al llamar a la operación ListObject: está intentando operar en un depósito en una región que requiere Signature Version 4. Puede solucionar este problema proporcionando explícitamente la ubicación correcta de la región con el argumento --region , la variable de entorno AWS_DEFAULT_REGION o la variable de región en el archivo de configuración de la CLI de AWS. Puede obtener la ubicación del depósito ejecutando "aws s3api get-bucket-location --bucket BUCKET".
¿Cómo abordar este error?
aws --version aws-cli/1.11.61 Python/2.7.9 windows/8 botocore/1.5.24Mi URL de S3 era como: https://console.aws.amazon.com/s3/home?region=us-east-1 , así que supuse que us-east-1 era mi región, ¡pero en realidad no lo era!
Usé el comando AWS para encontrar la región de Bucket2 y me dijo una región diferente.
Luego usé este comando aws s3 sync s3://Bucket1 s3://Bucket2 --region Asia Pacific (Mumbai) ¡y todo funcionó bien!
Busque la región correcta del cubo (ver imagen adjunta).
Pruebe el siguiente comando especificando la región correcta:
aws s3 ls --region us-west-2S3 es global, no deje que eso lo engañe.