AWS General Purpose SSD Charges after reservation of ec2 instances - amazon-web-services

Please let me aware about the charges of ssd while all ec2 instances is reserved, then why $0.10 per GB-month is deducting?
I have reserved c4.2xlarge and m4.xlarge instances but still charges are continuous deducted from bill the heavy charge only for this below:
$0.10 per GB-month of General Purpose SSD (gp2) provisioned storage - US East (Northern Virginia)
For the saving of cost what can i do more? like above things are not happening.

It appears that your situation is:
You have purchase Reserved Instances for a c4.2xlarge and a m4.xlarge instance
You are seeing charges for Amazon Elastic Block Store (EBS) SSD storage
This is normal behaviour.
A Reserved Instance is a pre-payment (either monthly or annual) for Amazon EC2 capacity. When running an EC2 instance that matches the Reserved Instances, there is no hourly charge because the Reserved Instance has pre-paid for that usage.
However, the cost of Amazon EBS is not included with a Reserved Instance. The cost of an EBS volume is additional to your Amazon EC2 costs. This applies for all types of EC2 instances, whether or not they are being charged as Reserved Instances and whether they are Running or Stopped.
Some options to further save money:
Only create EBS disk volumes as large as necessary. You always pay for the full size of the volume, so unused space still costs money. You can always modify the volume to make it bigger in future.
Turn off instances when they are not required, at least for any instances not covered by your Reserved Instance purchases
If you are running additional instances, consider using Spot Pricing (but instances might be terminated if the spot price rises higher than your bid price)

Related

How do I modify an AWS EC2 purchased reserved instance from t2.small to t2.micro

I have an AWS EC2 instance, initial configuration was a t2.small in which I purchased a t2.small reserved instance. after running the instance for 12 months, I have down scaled due to a reduction in my server requirement to a t2.micro. How do I modify the t2.small purchased reserved instance to a t2.micro.
I notice that the scaled down instance is still being billed as a t2.small instance.
"I notice that the scaled down instance is still being billed as a
t2.small instance."
No, that's not how reservations work. You reserved a t2.small, and you are being charged for a t2.small, whether you use one or not. You are also now being charged for a t2.micro. Reservations are not tied to a specific instance, they are simply a reservation of a specific amount of compute power.
You can convert or exchange your instance reservation, depending on which type of reservation you created. However you would only be able to convert a t2.small into two t2.micro reservations. You are still going to be paying the same either way. You made a commitment to pay for a certain amount of compute usage on AWS, in order to obtain a pricing discount, now they are going to make you honor that commitment.
If you have a standard reservation you may be able to sell it to another AWS customer. Otherwise it would probably be cheaper for you to continue using a t2.small instance until your reservation expires.

EC2 Reserved Instance Billing in Accounts with Dynamic Capacity

I have a fresh AWS account with Reserved Capacity of 15 EC2 instances of the same instance type in the same region primarily intended for EMR.
If I spawn a EMR cluster with 10 instances for 15 days and scale it up to 20 instances for the remaining 15 days, will I get charged $0?
If not, how will the final bill for EC2 for the month be calculated?
The reason why I am confused is that based on my understanding EC2 charges based on capacity consumed (in instance hours) and not on actual instances allocated. Since I'm reserving 15 instances worth of capacity, I would expect it to cost me a total of $0 since my overall monthly average consumption is worth 15 instances.
The Reserved EC2 Pricing documentation and most of the AWS price-calculation related material on the internet don't mention the use-case of dynamic scaling of instances in accounts with reserved capacity.
Reserved instances are applied to running instances in real time, not averaged over any longer period of time. They are baseline, not average.
For example, if you own three Reserved Instances with the same instance attributes and region (or Availability Zone if applicable), the billing system checks each hour to see how many total instances you have running that match those parameters. If it is three or less, you will be charged the Reserved Instance rate for each matching instance running that hour. If more than three are running, you will be charged the On-Demand rate for the additional instances.
https://aws.amazon.com/ec2/pricing/reserved-instances/buyer/
At any instant in time when you lack enough reserved capacity to cover your running workload, you're billed for the excess.

Charges for "traffic" in EC2 instance?

Is there any changes for "traffic" when using basic version of EC2 instance, by basic I mean:
750 hours per month of Linux, RHEL, or SLES t2.micro instance usage
Traffic: If we setup a server and there are some hits on my server then is there any charge for this setup. I am not using ELB, just EC2 instance with a server on it.
The full pricing for On-Demand Amazon EC2 instances can be found at: https://aws.amazon.com/ec2/pricing/on-demand/
The AWS Free Usage Tier gives 750 hours per month of a t2.micro instance. This means you could run one instance for a full month, or two instances for half a month. Simply stop the instance(s) to stop the charges.
You can have this free usage tier for a Linux AND a Windows instance.
However, please note that there are additional charges that also apply:
Data Transfer: This is charged for data leaving the AWS Region going to the Internet. The free usage tier includes "15 GB of bandwidth out aggregated across all AWS services" in the first 12 months. The EC2 pricing page also says that the first 1 GB/month is free, but I'm not sure if they overlap.
EBS Volume storage: Elastic Block Store (EBS) runs the disks attached to your instance. The free usage tier includes "30 GB of Amazon Elastic Block Storage in any combination of General Purpose (SSD) or Magnetic, plus 2 million I/Os (with EBS Magnetic) and 1 GB of snapshot storage", so you will be charged if your disk storage exceeds this (which is likely if you run both a Windows and a Linux instance). This storage charge continues to apply when an instance is Stopped, but not when an instance is Terminated.
Bottom line: Stop or turn off things when you don't need them. You can also activate a billing alert to warn you when you have been charged some actual money.
Yes, there are varying charges for traffic into and out of your EC2 instance.
in very rough numbers, if you budgeted $0.01 per GB of traffic, you would come in under that, but the complete breakdown is here:
https://aws.amazon.com/ec2/pricing/on-demand/

aws ec2 instance volumes, does this charge even if the ec2 instance in shut down

I have two ec2 instances running in aws which are currently stopped (I am using the free tier just to experiment with Azure). I noticed that even though the instances are in the stopped state I seem to be incurring a charge for (this is all I have)
S3 - Puts (This contained the sample applications which I uploaded to test)
EBS - Volumes
Is this the case? or am I missing something here.
It depends on how big the EC2 instances and their storage are.
Stopped instances themselves don't cost any further money, but EBS storage, S3 and other moving parts like ELB's will still cause charges.
You get 30GB of EBS storage free per month in the free tier, so if the total of the EBS in use is more than that, you pay.
https://aws.amazon.com/free/ nicely describes the limits of the free tier.
For further cost calculations, check out https://calculator.s3.amazonaws.com/index.html

Cost of storing AMI

I understand Amazon will charge per GB provisioned EBS storage. If I create AMI of my instance, does this mean my EBS volume will be duplicated, and hence incur additional cost?
Is there other cost charge in creating and storing an AMI (Amazon Machine Image)?
You are only charged for the storage of the bits that make up your AMI, there are no charges for creating an AMI.
EBS-backed AMIs are made up of snapshots of the EBS volumes that form the AMI. You will pay storage fees for those snapshots according to the rates listed here. Your EBS volumes are not "duplicated" until the instance is launched, at which point a volume is created from the stored snapshots and you'll pay regular EBS volume fees and EBS snapshot billing.
S3-backed AMIs have their information stored in S3 and you will pay storage fees for the data being stored in S3 according to the S3 pricing, whether the instance is running or not.
In this case, you will pay for the size of the storage used, instead of the storage provisioned. Snapshots will not store any empty blocks.
In short, yes, you will incur additional charges, but at a less rate, namely, EBS snapshot storage rate. Provisioned EBS is the 'live' HD that will be charged at $0.10 per GB per month if using standard SSD (gp2, USA east pricing for 2022 used throughout). And if you provisioned 50 GB, you will be fully charged for that 50 GB, even if you are only using 5% of it. The charges will incur even if you forget to attach to an EC2 instance. $5 per month in this case.
When you create an AMI, AWS will create a snapshot in the background. This snapshot is viewable under EBS Snapshots and will not be deletable as long as that AMI is in existence. You will get an error if you try to delete this snapshot. Snapshots cost less than 'provisioned' EBS at $0.05 per GB per month, and since snapshots ignore empty blocks, it will be shrunk to used size, so if you are only using 5% of 50GB, the snapshot should only be around 2.5 GB. $0.13 per month in this case. No other charges.
If you are creating a lot of these, it can get expensive very quickly, so some people save these AMIs into S3, which is cheaper than EBS snapshots. This is somewhat advanced and as far as I know, it can only be done via AWS CLI, and not in the console. You use a command called aws ec2 create-store-image-task and you have to specify the destination bucket name, and make sure permissions for S3, EBS and EC2 will all allow it. More detail at the official AWS documentation. This would reduce the cost to about $0.023 per GB per month. There are other changes relating to this method, i.e. EBS Direct API, but it is not much and you can look it up in the documentations.
Recently in November 2021, AWS released archived function for EBS snapshots, which allows you to archive your snapshots for a minimum of 90 days for $0.0125. You do have to pay $0.03 per GB for restoring the data. However, this is designed for EBS backups (e.g. daily backups using snapshots) and you cannot archive an EBS snapshot that is associated with an AMI. You will get an error: Failed to archive snapshot... snap-xyz is in use by ami-123.
Below is an excerpt of an actual AWS bill that will explain it in a visual sense.