Amazon EBS High Usage Costs - amazon-web-services

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?

Related

inflated pricing using ec2 on aws. data transfer

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

Is there a limit on the number of EBS Snapshots we can archive?

Recently, AWS started offering archival of the EBS snapshots. Here is their press release: https://aws.amazon.com/blogs/aws/new-amazon-ebs-snapshots-archive/
I started archiving snapshots which send them to S3 Glacier and them it seems like I am hitting a limit as I am getting the following message:
Max number of archived snapshots per volume reached
Anyone know what the limit is on the number of archives I can do?
According to documentation there is an adjustable limit of 25 archived snapshots per volume.
You can request to increase this value.
Reference:
Amazon Elastic Block Store endpoints and quotas

Cloudwatch log store costing vs S3 costing

I have an ec2 instance which is running apache application.
I have to store my apache log somewhere. For this, I have used two approaches:
Cloudwatch Agent to push logs to cloudwatch
CronJob to push log file to s3
I have used both of the methods. Both methods suit fine for me. But, here I am little worried about the costing.
Which of these will have minimum cost?
S3 Pricing is basically is based upon three factors:
The amount of storage.
The amount of data transferred every month.
The number of requests made monthly.
The cost for data transfer between S3 and AWS resources within the same region is zero.
According to Cloudwatch pricing for logs :
All log types. There is no Data Transfer IN charge for any of CloudWatch.Data Transfer OUT from CloudWatch Logs is priced.
Pricing details for Cloudwatch logs:
Collect (Data Ingestion) :$0.50/GB
Store (Archival) :$0.03/GB
Analyze (Logs Insights queries) :$0.005/GB of data scanned
Refer CloudWatch pricing for more details.
Similarly, according to AWS, S3 pricing differs region wise.
e.g For N.Virginia :
S3 Standard Storage
First 50 TB / Month :$0.023 per GB
Next 450 TB / Month :$0.022 per GB
Over 500 TB / Month :$0.021 per GB
Refer S3 pricing for more details.
Hence, we can conclude that sending logs to S3 will be more cost effective than sending them to CloudWatch.
They both have similar storage costs, but CloudWatch Logs has an additional ingest charge.
Therefore, it would be lower cost to send straight to Amazon S3.
See: Amazon CloudWatch Pricing – Amazon Web Services (AWS)

AWS Bandwidth data transfer out beyond the global free tier dramatically increased

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.

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.