AWS pricing for S3 object download using site-to-site VPN - amazon-web-services

I would like to understand the monthly cost of using a VPN site-to-site link to transport data from S3 to my on-premises host. I will use AWS Lambda to transfer around 12 TB of data each month from S3.
Using AWS calculator, I checked the S3 and VPC tabs and noticed that there is a "Data Transfer OUT" in both services.
For this use-case will I have to pay the "Data tranfer out" fees for each service?
Thanks

For this use-case will I have to pay the "Data tranfer out" fees for each service? Thanks
You can create a VPC S3 Endpoint to make the S3 service accessible for your Lambda function without counting outbound data.
I will use AWS Lambda to transfer around 12 TB of data each month from S3
You will still pay internet outbound from VPC.
If you plan to transfer the data to your on-premise destination, you may consider establish the (already mentioned) AWS Direct Connect service

Data Transfer Out is charged when data goes from AWS to the Internet. It is only charged once, at the exit point.
If data is going across an AWS Direct Connect link, then the Data Transfer price is lower.

Related

Does AWS S3 charge requests for EC2 transfer?

I understood from the pricing sheet that data transfer is free between EC2 and S3 in the same region, but will I still be charged for GET, PUT etc. requests?
You are correct -- there is no Data Transfer charge for traffic between Amazon EC2 instances and Amazon S3 within the same region. (The same goes for other services, too.)
However, these charges still apply:
Storage pricing
Request pricing

Pricing for using SQS within EC2

If messages are both sent and received from different EC2 instances in the same region, there will be no cost right?
In other words, messages are only billed if it's coming from or going to non-EC2 instances/systems?
See the Amazon SQS Pricing page for details of SQS pricing.
It is charged as:
Price per 1 Million Requests after Free Tier (Monthly)
Plus data transfer
A request includes SendMessage, ReceiveMessage, DeleteMessage, etc.
The Data Transfer charge within a Region is free. For example, if requests come from an Amazon EC2 instance in the same region as the Amazon SQS queue, there is no charge. The Data Transfer charge only applies for data going out of the cloud, eg to the Internet or to another Region.
As per the page:
Data transferred between Amazon SQS and Amazon EC2 within a single region is free of charge (that is, $0.00 per GB). Data transferred between Amazon SQS and Amazon EC2 in different regions is charged at Internet Data Transfer rates on both sides of the transfer.

AWS S3 pricing - data transfer in/out

I am planning to store objects in S3 standard storage, each object could be of 100MB in size so monthly it could go upto 1TB. I will use a single region to store these objects in S3.
I want to create a mobile app to store and fetch this objects using post/get apis.
And then show them in my app.
S3 uses different pricing sections, I understand storage and requests (post/get) pricing.
My question is around data transfer in/out pricing, in my case above will I be billed for data transfer in/out? if no why not?
Yes, you will be billed because you mobile app will connect from internet. Even connected from within AWS there are fees associated with your number of requests and data transferred (inside region or outside region).
You can use the AWS Calc to get an estimate for the cost associated: https://calculator.s3.amazonaws.com/index.html
All traffic FROM mobile phones to S3 or EC2 is free.
All traffic TO mobile phones from S3/CloudFront is billed according to a selected region. Take a look at https://aws.amazon.com/s3/pricing/.
Keep in mind that incoming traffic (to S3) is free only if you're NOT using S3 Transfer Acceleration.

Amazon S3 Bucket data transfer charges applicable while mounted in EC2 server?

I have created an S3 Bucket and mounted into one of my EC2 servers in the same region. Then I put data into the bucket using FTP account created for that EC2 instance. Finally, I access the data by Http request.
I'm not accessing S3 bucket directly from Internet, either for writing or accessing. All the data transferred through EC2 instance.
So, I assume per month charges as below, for fully used up 1TB S3 bucket (standard storage),
Storage Pricing - $0.0300*1024 = $30.72
Request Pricing - $0.005*10 = $0.05 (Assumed 10,000 request per month )
Data Transfer Pricing - Nill (Since the bucket is not being accessed directly)
Is that correct? or data transfer pricing is applicable?
Ref: Pricing Details
You do not pay for data transfer between S3 and EC2 in the same region, however you pay for Data Transfer OUT From Amazon EC2 To Internet or EC2 instance in a different availability zone in the same region.
See EC2 pricing for more details.
If you transfer 1TB of data OUT to Internet from AWS, either directly from S3 or through EC2 instance, you will pay the same price.
TIP:
If you are transferring big amount of data from S3 out to Internet, look into CloudFront. Data transfer EC2/S3/ELB -> CloudFront is free of charge and CloudFront has cheaper rates per Gb compared to downloading files directly from S3.
EDIT:
see #Michael - sqlbot's comment, this is often but not always true depending on S3 Bucket's region and CloudFront edge location serving the content.
TIP 2:
For really large amounts of data it might be worth setting up DirectConnect connection (private connection from your office / on-premise setup to AWS). Then Data Transfer becomes even cheaper per Gb, however you start paying hourly rate for your DirectConnect link. Do the math to calculate what's best for you.
If you are reading data from S3 to your EC2 instance, and the S3 bucket is in the same region as your EC2 instance, then there are no data transfer costs.
Broken down:
There is no “data transfer in” costs to your EC2 instance if the data is coming from an S3 bucket in the same region: EC2 Instance Pricing – Amazon Web Services (AWS)
There is no “data transfer out” costs from your S3 bucket if the data is going to an EC2 instance in the same region: Cloud Storage Pricing – Amazon Simple Storage Service (S3) – AWS
There is no "data tansfer out" costs from EC2 to S3.
More info:
https://www.quora.com/In-AWS-EC2-what-counts-towards-data-transfer-costs

Ensure free data transfer from S3 to EC2

Amazon's pricing documentation says
"Data Transfer OUT From Amazon S3 To Amazon EC2 in the Northern Virginia Region (is) $0.000 per GB"
Is there anything special I need to do to ensure that I don't get charged for transfers from S3 to EC2, assuming both are in the Northern Virginia Region? IE) Is executing a GET request from this EC2 instance to https://s3.amazonaws.com/{bucketName}/{resource} going to automatically get counted as 'free' without doing anything additional? Or is there a private IP address for S3 that I need to access in this scenario?
If the request comes from within the same region, you're likely to be redirected to the right endpoint and not going to be charged. If you want to be 100% sure, however, you can choose the correct endpoint yourself:
http://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region
This may be particularly useful if you use API and tools from 3rd parties, which sometimes use varying default endpoints, unless you override them explicitly.
As long as your S3 buckets are in the same region as your EC2 machines, your data xfers are free. If you always deal with the same region, then you do not have to worry about the data xfer cost.
Data Transfer OUT From Amazon S3 To
Amazon EC2 in the same region $0.000 per GB