AWS Tier Limit Alert - amazon-web-services

recently I recive this email with an alert from AWS EC2 instance (its an free tier elegible with T2.Micro). I really do not understand this alert since no content that has been uploaded to the server weighs more than several megabytes. Thanks for your help!
The email alert from AWS:
enter image description here

This alert is about Elastic Block Storage. This means it is related to the sum of provisioned disk capacity multiplied by the running time of your instances/volumes. To get more details how it is calculated, see here: https://aws.amazon.com/ebs/pricing/
30GB-Mo under free tier means: You could provision a drive with 30GB and let it run continuously for an entire month.
The warning indicates, that the sum of all provisioned storage of your instances and volumes is higher than 30GB.
Note: The actual data uploaded and/or how much is free, is irrelevant. So for example a micro instance with default settings counts 8GB towards your limit and it does not matter that the fresh Linux without any data is only a couple hundred megabyte.

i asked this in support, this is the answer
When calculating the charges for EBS volume storage, your charges
depend on the size of the volume you've provisioned and the length of
time the volume is provisioned in a month.
1) where that usage comes from? The most important thing to keep in
mind is that you are not billed for actual usage-- instead, you're
billed for the provisioned size of the volume. For example, if you
create a 1 TB volume and only use 1 GB of it in a month, you will be
billed for the full 1 TB.
To take another example, if you had a 31 GB volume that was only
active for 24 hours in the month of December (a 31 day month,
comprised of 744 hours), you'd only be billed for 1 GB-month. If you
had a 1 GB volume active for 744 hours in December, you'd be billed
the same amount.
2) how can i see it? If you'd like to look at a more in-depth report
of your EBS usage, you can download a usage report here:
https://console.aws.amazon.com/billing/home#/reports
The usage reports can be used to help figure out billing for EBS. Make
sure to change the usage value given in the report into GB-months,
since the data is presented in byte-hours. You can convert the data
into GB-months by dividing the figure presented in byte-hours by
1024^3, then divide this figure by the number of hours in the month.
You can also find information on EBS charges here
https://amzn.to/2BqeGlY
3) the 30GB EBS free tier is for each EBS instance or is the sum of
all the EBS that i could create? The EBS free tier limit is calculated
for the total number of volumes provisioned in your account and not
per instance. For example, if you simultaneously run a Windows
instance and a Linux instance with an attached EBS storage of 30GB
volume each, it will intuitively exceed your Free Tier limits, as the
total of the volumes would be 60GB.

Related

What exactly is the unit "GB-month" in AWS terminology?

Amazon EBS volumes are billed by the gigabyte-month (GB-month). With Amazon Elastic Block Store (EBS), you pay only for what you provision. Volume storage for all EBS volume types is charged by the amount of GB you provision per month until you release the storage.
There is so much confusion in these statements, and I wonder how exactly EBS is billed and what exactly is meant by the unit "GB-Month"? I could see this unit is also associated with Amazon Aurora storage pricing.
Links:-
https://aws.amazon.com/ebs/pricing/
https://aws.amazon.com/rds/aurora/pricing/
A GB-Month is 1GB of storage for 1 month.
100GB stored for 1 month = 100 GB-Months
100GB stored for half a month = 50 GB-Months
It's similar to the electricity concept of Kilowatt-Hours (1kWh = 1kW for 1 hour).

Amazon Web services: Why my used elastic compute cloud storage is at 8.35 GB out of 30 GB?

So I am running a nodejs discord bot on AWS EC2 (free tier). I would want to stay in free range as much as possible. In the billing section I came across my usage and found that I am using 8.35 gb.
There are 2 instances linked to my account out of which only 1 is running (I used other one to host an AI app which is in stop state). Both instances are allocated 30 gb separately. I ran df -h in both instances, one reported 2.8 gb occupied and other reported 2gb occupied. So the quick question is why is it 8.35 gb when it should be around 5gb?
Attached a screenshot of bills section.
Please help. What is it that I am missing?
I assume you are referring to Amazon EBS Volumes, for which the AWS Free Tier provides 30GB per month for the first 12 months of your account.
This can be one 30GB volume for an entire month, or 2x15GB volumes for one month, or 1x900GB volume for one day (900* 1/30 = 30). Hence the term "GB-month", which means "Gigbytes for a month".
The fact that you are 8/30 for the allocation means that your account has consumed 8GB-month our of the free 30GB-month.
Don't panic too much -- the cost is only 10c/GB-month, so a 30GB volume for an entire month would cost $3.
Please note that Amazon EBS Volumes are charged based on provisioned storage. So, as soon as you create the volume, the space has been allocated and your account will be charged for it, even if nothing has yet been stored in the volume.
If you wish to minimise costs, then minimise the size of each volume and minimise the number of volumes. The purpose of the Free Tier is to provide a trial of AWS services -- it is not intended to be enough to run your on-going applications.
You are probably looking in the wrong place. When you say "I am using 8.35 gb" I assume you are talking about EBS storage, right? What you see in AWS billing, it is provisioned storage (that is, what you allocated when you launched the instance). It doesn't matter how much you are using - that's what df -h shows you inside the box. Also, it doesn't matter whether the instance is running or stopped - you are still incurring charges for EBS (if it is beyond free tier).
By the way, 8.3GB is what is usually allocated for each Linux instance; so having 8.3GB for two looks suspiciously small
UPDATE: It's not 8 GB that you see - it is 8GB-Mo. So, if you provisioned 30GB, then on the 8th of the month you will see 8GB-Mo (I think AWS updates every 4 hours). Therefore, by the end of the month you will have approximately 30GB-Mo, which is the limit for free tier.

Do I incur charges when downloading on an EC2 instance?

I use AWS free tier to spin up t2.micro boxes and use it to practice Docker since the download speed is vastly great when pulling large images in mere seconds.
I am assuming download is free and upload -pushing images for example- is chargeable although not sure the exact amount.
How much are the costs here?
You incur upload costs when you exceed more than 1 GB upload per month. Please see: https://aws.amazon.com/ec2/pricing/on-demand/#Data_Transfer
Note that I'm providing a link here rather than providing values because the costs may differ from Region to Region, and from year to year.
For more information on the Free tier limits have a play with: https://aws.amazon.com/free/
Also, remember that it is 750 hours of t2.micro or t3.micro a month. You could spend all these 750 hours with 1 instance and that would take 750 hours. If however you decided to run 750 instances then you would use up your whole months 750 hours in 1 hour.
Lastly remember your EBS limit is 30 GiB. If you launched 4 Ubuntu instances with 4 root volumes of 8 GiB then you would be exceeding your free tier limit by 2 GiB.
Data Transfer IN To Amazon EC2 From Internet: No charge
Data Transfer OUT From Amazon EC2 To Internet is charged at 9c/GB (in US regions).
Also: "As part of AWS’s Free Usage tier, new AWS customers will receive free 15 GB of data transfer out each month aggregated across all AWS services for one year except in the AWS GovCloud region."

How many EC2 instances can be created for free tier account

I am using AWS free tier to create EC2 instances(OS: Linux). Its' root volumes must be greater than snapshot size. As far as I know, it should be bigger than 8 GB for Linux EC2. But I only have 30 GB EBS free volumes size.
Does it mean I can create 3 Linux EC2(8+8+8 < 30 GB) maximally?
Is there any way to get around the limit size of 8GB? For example, I would like to create 5GB EC2(Linux), So I can create 6 EC2 instances(30GB / 5GB = 6) with Linux.
ADD Volumes pic:
You may create as many EC2 as you want, AWS will charge you by the time you keep them running.
If you check this link, you'll see that AWS calculates the EBS pricing considering the time you keep it running:
For example, let's say that you provision a 2000 GB volume for 12 hours (43,200 seconds) in a 30 day month. In a region that charges $0.10 per GB-month, you would be charged $3.33 for the volume ($0.10 per GB-month * 2000 GB * 43,200 seconds / (86,400 seconds/day * 30 day-month)).
Besides EBS, you must consider EC2 hours too. If you run X EC2 instances which support Free Tier by H hours, you won't be charged if X*Y < 750 in a month period. For instance, if you have 3 instances, the maximum time you should run them is 750 / 3 = 250 hours in a month.
About the EBS size, I've never tried to decrease EBS size, but you may find some articles that explain how to to that: link 1 and link 2.
You can calculate the prices using AWS Calculator.
To apply free tier, don't forget to enable the option on top FREE USAGE TIER: New Customers get free usage tier for first 12 month

Amazon Elastic Block Store and EC2 drive

I am fairly new with AWS(just have a free AWS EC2 instance to test out AWS stuff) so the question might sound silly.
Today I got a mail that my Amazon Elastic Block Storeage has reached 85% usage on my free AWS account which is about 25 GB of the allocated 30 GB.
From what I read today, Amazon EBS is a persistent store used for EC2 instances.
However I can see in my EC2 instance that df -h just show 2 GB usage and available disk as 28 GB as this is just my practice instance.
Am I missing some important piece of information here?
EBS devices are block devices.
This means the service does not know how much data you actually store on them -- it only knows how much storage space you allocated. So, the results of df -h don't matter. The actual size of the volume is all that matters -- that's the basis for billing. The rest of the space (that space you aren't current using) is still storing something, even it if's just 0's, but the service is unaware of what you've stored. (Other storage services like S3 and EFS bill for actual data stored, because they are not block storage services.)
Now, the free tier allows 30 gigabyte-months of EBS volume usage. You can use more than that, but this is the limit that's provided for free. You'll be billed for any more than this.
A gigabyte-month means 1 gigabyte of block storage space, allocated for 1 month, regardless of how you use it.
Also, 2 gigabytes of allocated storage for 15 days is 1 GB-month.
Also, 10 gigabytes of allocated storage for 3 days is 1 GB-month.
...etc.
The free tier, then, would allow you to have a 30 GB volume for 30 days, or a 60 GB volume for 15 days, or even a 900 GB volume... but you could have it for only 1 day. But to avoid continuing charges, such a volume must be deleted -- not just the files on the volume.
The warning message was correct. If you have a 30 GB volume in place for 26 days, then you have used 26 GB-months of storage, which is 86.7% of the free tier limit of 30 GB-months.
For anyone stumbling upon this in 2021:
Free Trial provides 750 Hrs of Amazon EC2 Linux t2.micro and 750 Hrs of Amazon EC2 Windows t2.micro per month. However, both of them will add in to the free 30GB EBS pool. So make sure the memories allotted to both the VMs sum up to 30 GB or less.
There are limits on the type and number of resources you can allocate for each account.
It sounds like in your case, you are allowed to create a total of 30GB of EBS volumes. Once you allocate an EBS volume, in your case 25GB, it counts against that limit, even if it isn't used.
There is a section in the EC2 console (near the top) called "Limits" that will show you what your limits are, and what you are using.
Most limits can be extended with a simple support ticket.