Can The AWS CLI Copy From S3 To EC2?

雨燕双飞 提交于 2021-01-29 10:58:37

问题


I'm familiar with running the AWS CLI command to copy from a folder to S3 or from one S3 bucket to another S3 bucket:

aws s3 cp ./someFile.txt s3://bucket/someFile.txt

aws s3 cp s3://bucketSource/someFile.txt s3://bucketDestination/someFile.txt

But is it possible to copy files from S3 to an EC2-Instance when you're not on the EC2-Instance? Something like:

aws s3 cp s3://bucket/folder/ ec2-user@1.2.3.4:8080/some/folder/

I'm trying to run this from Jenkins which is why I can't simply run the command on the EC2 like this:

aws s3 cp s3://bucket/folder/ ./my/destination/folder/on/the/ec2

Update:

I don't think this is possible so I'm going to look into using https://docs.aws.amazon.com/cli/latest/reference/ssm/send-command.html


回答1:


No.

The AWS CLI calls the AWS API. The APIs for Amazon S3 do not have the ability to interact with the operating system on an Amazon EC2 instance.

Your idea of using AWS Systems Manager is a good idea. You can send the command to the instance itself, and the instance can then upload/download objects to Amazon S3.




回答2:


Since you have SSH access, you could also just run

ssh ec2-user@1.2.3.4:8080 "aws s3 cp s3://bucket/folder/ ./my/destination/folder/on/the/ec2"

... to run the command on the EC2 instance directly.

It's not as efficient as using send-command (because ssh will necessarily pipe the output of that command to your local terminal) but, if you're not transferring millions of files, the tradeoff in simplicity may be acceptable for you.




回答3:


Using AWS System Manager send command :
#Copying file from S3 bucket to EC2 instance :
$Instance_Id='i-0123456xxx'
aws ssm send-command --document-name "AWS-RunShellScript" --document-version "\$DEFAULT" --targets "Key=instanceids,Values='$Instance_Id'" --parameters '{"commands":["aws s3 cp s3://s3-bucket/output-path/file-name /dirName/ "]}' --timeout-seconds 600 --max-concurrency "50" --max-errors "0" --region REGION_NAME


来源:https://stackoverflow.com/questions/51527847/can-the-aws-cli-copy-from-s3-to-ec2

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!