I'm new to AWS. I launched a EC2 instance and some S3 buckets in April.
The cost of AWS in April and May are normal, but the cost of AWS in June are doubly increased.
I went to the Bills Page to check and I found that the data transfer is abnormal.
Here are the pictures about the cost in May and June:
I didn't change anything except the ssh setting of EC2's (myip -> anywhere).
Can anyone tell me where should I check my setting first?
I assume you are referring to:
Data Transfer in May: 48 GB for $4.36
Data Transfer in June: 319 GB for $28.71
Data Transfer is charged for outbound traffic to the Internet. The AWS Free Usage Tier provides an initial 15GB at no charge. Thereafter, the charge depends upon your Region. It appears that you are in the USA, where the rate is $0.09/GB.
There has been no price increase on AWS. In fact, AWS just announced their 62nd price reduction. Rather, the cause of the increased charge is the fact that your account consumed more data transfer in June (319 GB) than in May (45 GB).
Data transfer would include users on the Internet accessing your web servers, any downloads from AWS (eg from Amazon S3) and everything else causing data to go from AWS to the Internet.
If you think this is too high, you should examine the services you are running and, in particular, make sure you are not serving large content from Amazon S3.
Related
I have an EC2 service in AWS, in which the only thing I do is upload a .txt file 4 times a day, which all my clients, when using my software, use the last txt I uploaded, it can be updated by all as many times as they want in the day.
Lately with the EC2 service I am being surprised by the cost of ec2 $0.090 per GB - first 10 TB / month data transfer.....
I wanted to know if there is another option to continue using an AWS service where I can host these txt, my clients can consume it and not pay as much as I am doing (more than 200 dollars per month)
DISCLAIMER I AM FROM ARGENTINA
ok the first thing that you have to know is that all the data uploaded is free, BUT if you expose your instance through AWS Load Balancer you will be charged for connections and data processing, the data transfer fees in AWS is basically a head ache IMO.
My suggestion -> AWS S3
If your txt files can be publicly accessible or you can modify your app to create S3 pre-signed URLs to make the files privates but accessible from your customer side, put those files in AWS S3, basically you will pay exactly the same data transfer fee but you will save on Ec2 instance capacity and EBS is a little bit more expensive than S3, additionally you don't need to care about HA or backups.
I think you don't need Cloudfront at the very beginning
AWS S3 has a standard public bucket and folder (Asia Pacific region) which hosts ~30 GB of images/media. On another hand, the website and app access these images by using a direct S3 object URL. Unknowingly we run into high data transfer cost and its significantly unproportionate:
Amazon Simple Storage Service: USD 30
AWS Data Transfer: USD 110
I have also read that if EC2 and S3 is in the same region cost will be significantly lower, but problem is S3 objects are accessible from anywhere in the world from client machine directly and no EC2 is involved in between.
Can someone please suggest how can data transfer costs be reduced?
The Data Transfer charge is directly related to the amount of information that goes from AWS to the Internet. Depending on your region, it is typically charged at 9c/GB.
If you are concerned about the Data Transfer charge, there are a few things you could do:
Activate Amazon S3 Server Access Logging, which will create a log file for each web request. You can then see how many requests are coming and possibly detect strange access behaviour (eg bots, search engines, abuse).
You could try reducing the size of files that are typically accessed, such as making images smaller. Take a look at the Access Logs and determine which objects are being accessed the most, and are therefore causing the most costs.
Use less large files on your website (eg videos). Again, look at the Access Logs to determine where the data is being used.
A cost of $110 suggests about 1.2TB of data being transferred.
I have a SpringBoot application running on an Amazon EC2 instance that uses Amazon EBS disk storage. The application receives JSON data as HTTP and stores it into an Amazon RDS (MySQL) database.
In total, the application received data from 600 processes. Each process sent JSON for approximately 0.1mb, so ~60mb of data were sent in total.
However, my EBS charges were ~$36 of USE2-EBS:VolumeUsage.gp2 which is priced at $0.1/GB. If I look at my billing summary, I find:
$0.10 per GB-month of General Purpose SSD (gp2) provisioned storage - US East (Ohio)1,048.230 GB-Mo$104.82
This is cumulative throughout the month where I ran my processes several other times, but I am really struggling to understand how I am generating this much data given that the size of the JSON I sent over HTTP is far inferior.
Any advice on how I could get further insight into this?
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.
I am trying out Amazon S3 for my file uploads and would like to store different buckets for development, test and production environments. In amazon documentation it was mentioned the following statement
As part of the AWS Free Usage Tier,
you can get started with Amazon S3 for
free. Upon sign-up, new AWS customers
receive 5 GB of Amazon S3 storage,
20,000 Get Requests, 2,000 Put
Requests, 15GB of data transfer in,
and 15GB of data transfer out each
month for one year.
Is there any limitation about the number of buckets. I mean if I have three buckets and If I use within the overall storage limit, will I be charged.
Each account in AWS is limited to 100 buckets -- even if you are paying the normal usage rates.
Buckets are not billable items in S3.
If the limit of 100 is not enough you can create virtual folders in your buckets and structure your environment that way.