Skip to main content

How to set up AWS CLI to Upload/Download Files - CENTOS 7

We used the AWS SDK to upload files using Java in the previous post and everything worked perfectly, but I needed to upload a database backup in .gz format with a size of 18GB,  and using the AWS SDK did not allow me to do it so that it just allows upload in a maximum put of 5GB,

so using AWS CLI allows us to upload until 160GB in just one put, and now let's see how we can use set it up in Centos 7 and use it:

Note: get ready yourself going to Identity and Access Management (IAM), creating a new user or using an existing one which has got access to the group AmazonS3FullAccess,
so once you've got an AWS Access Key ID with the AWS Access Key ID keep doing the process.


There a lot of ways to install it, let's do it like so:

curl "https://s3.amazonaws.com/aws-cli/awscli-bundle.zip" -o "awscli-bundle.zip"
unzip awscli-bundle.zip
cd awscli-bundle/
sudo ./install -i /usr/local/aws -b /usr/local/bin/aws

Check it with:

aws --version

aws-cli/1.16.283 Python/2.7.5 Linux/3.10.0-957.1.3.el7.x86_64 botocore/1.13.19

Now let's set aws-cli up to use your AWS credentials:


this is a list of some regions:


RegionName
ap-northeast-1Asia Pacific (Tokyo)
ap-northeast-2Asia Pacific (Seoul)
ap-south-1Asia Pacific (Mumbai)
ap-southeast-1Asia Pacific (Singapore)
ap-southeast-2Asia Pacific (Sydney)
ca-central-1Canada (Central)
eu-central-1EU Central (Frankfurt)
eu-west-1EU West (Ireland)
eu-west-2EU West (London)
sa-east-1South America (Sao Paulo)
us-east-1US East (Virginia)
us-east-2US East (Ohio)
us-west-1US West (N. California)
us-west-2US West (Oregon)

aws configure

AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE
AWS Access Key ID [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
Default region name [None]: us-east-1
Default output format [None]: json

Now let's check if it was set ip properly with:

aws sts get-caller-identity


{
    "Account": "903503371367",
    "UserId": "AKIAIOSFODNN7EXAMPLE",
    "Arn": "arn:aws:iam::903503371367:user/bucketname"
}



so after you run the command aws sts get-caller-identity and you get back the details which belong to your
account then you can use the aws cli like so

to copy from your EC2 instance to the S3 Bucket:
/usr/local/bin/aws s3 cp yourFilename s3://yourbucketname

to copy from your S3 Bucket instance to your instance:
/usr/local/bin/aws s3 cp s3://yourbucketname/fileName.txt /path/tofile



Comments

Popular posts from this blog

How to secure SpringBoot with SSL and Tomcat or Undertow

when we are going to take our applications to production mode, we must have an SSL certificate for the FrontEnd and   BackEnd too, in this case, our backend is a  SpringBoot which is using a tomcat embedded server. Terminology TLS vs SSL TLS is the successor to SSL. It is a protocol that ensures privacy between communicating applications. Unless otherwise stated, in this document consider TLS and SSL as interchangable. Certificate (cert) The public half of a public/private key pair with some additional metadata about who issued it etc. It may be freely given to anyone. Private Key A private key can verify that its corresponding certificate/public key was used to encrypt data. It is never given out publicly. Certificate Authority (CA) A company that issues digital certificates. For SSL/TLS certificates, there are a small number of providers (e.g. Symantec/Versign/Thawte, Comodo, GoDaddy, LetsEncrypt) whose certificates are included by most browsers and Op...

How to deploy a VueJS App using Nginx on Ubuntu

There are thousands of blogs and websites out there explaining how to do a hello world and how to start with VueJS, but in this little post, I’m just going to be explaining how to do deploy a VueJs app after you have run the command through the CLI npm run build . So when you run the command npm run build a dist folder is created and that folder’s got the essential .js files to run our app, when we want to run our app on an Nginx server by default the vue-router is not going to work well so that Nginx does not come ready to work by default with a VueJs app This is basically for a Linux Ubuntu distribution if you’ve got any other Linux distribution just pay attention where is going to be set the www/html folder and the Nginx settings so that this is useful for any Linux distribution  Install and configure nginx sudo apt install nginx Double check to make sure the nginx service is running with command service nginx status, then open your browser and enter ...

Uploading and Deleting Files with Amazon S3 and SpringBoot

Today I am going to be sharing about how to upload and delete files at AmazonS3 with SpringBoot , Amazon Simple Storage Service (S3)  is an object storage platform which helps you to store the files in form of objects, it allows us to store and retrieve any amount of data from anywhere.  Each file is stored in Amazon S3 (as an object) and is represented using a key. we are going to be using AWS Java SDK which supports various APIs related to Amazon S3 service for working with files stored in S3 bucket. so after going to  https://start.spring.io/  and create a new SpringBoot project with the Artifact as  AmazonS3  or as you prefer, open your pom.xml and let's add this dependency. AWS Java SDK supports several  APIs related to Amazon S3 service for working with files stored in S3 bucket.  <!-- https://mvnrepository.com/artifact/com.amazonaws/aws-java-sdk --> < dependency >     < groupId >...