More and more enterprises are moving towards cloud infrastructure over local data centers and the competition in the cloud space is at an all time high. The major players have gone as far as cutting the costs and providing unbelievable discounts to get their share of the space in the cloud market.
In this article, we're going to cover the cost of the cloud. We'll focus on AWS, one of the most popular cloud vendors at the moment. We'll also talk about the various AWS pricing schemes, free tier offers and options for reducing the overall costs by reserving capacity upfront.
AWS Pricing Scheme: How Is the Cost Determined?
AWS has about 10 times the capacity than its closest rival. Isn't that something? AWS offers tons of services - some for free and and some are paid - and the list is ever growing. If you're just starting out with AWS, it's easy to get lost in the pricing. There are three fundamental characteristics that have the greatest impact on price: compute, storage and outbound data transfer.
The cumulative outbound data transfer cost across all the AWS services are calculated and appears in your monthly statement as AWS Data Transfer Out. The data transfer rate varies per location and depends on the number of gigabytes transferred per month.
The compute characteristics are billed based on the number of clock hours of server time and the server configuration of that particular instance. For example, there are different types of EC2 instances that are meant for different workloads such as general purpose instances, compute instances, memory instances, storage instances and GPU instances. The cost per hour of GPU instances is high compared to that of general purpose instances.
The products with storage characteristics are billed based on the number of gigabytes of storage used. Amazon S3, EBS and EFS are examples of services that charge on a per Gigabyte basis. For instance, Amazon S3 pricing is currently $0.023 per GB/month for the standard tier.
Apart from this, AWS also offers a variety of free services. They include: Amazon VPC, Elastic Beanstalk, CloudFormation, IAM, Auto Scaling etc.
If you would like to check all the possible combinations of paid and free services, you can use one of several AWS calculators to predict the expenditure for a particular combination of resources.
The next thing to consider under Amazon pricing scheme is to better understand your usage patterns so that you can choose the best possible option to cut the costs. I've listed the possible options down below.
AWS Free Tier
There are several ways to optimize costs on AWS. One way is the Amazon free tier, which lets you experiment with AWS cloud infrastructure. Once you've registered to AWS, you can avail these offers to get practical experience with Amazon services. The free tier package comprises two types of offers on services: Introductory period offers and Non-expiring offers.
Introductory Period Offers
Introductory services are valid for a time-period of 12 months from the day you've signed up on AWS. The features of the introductory service are listed below:
750 hours of free Linux t2.micro instance that includes 1GB RAM and 1 vCPU.
You can either run 1 instance for 750 hours for one month or two instances for half a month each.
It offers 5GB of standard storage on S3
20,000 Get requests
2,000 Put requests
750 hours of free db.t2.micro instance
20 GB of DB storage either SSD or Provisioned IOPS
20GB of backups with RDS Magnetic storage
Ongoing Free Tier
Amazon offers a free tier that does not expire at the end of the 12 month free tier term. Instead, they are services available for free to all AWS customers. Some of the popular free-tier offers in this category include:
10 Amazon Cloudwatch custom metrics, 10 alarms, and 1,000,000 API requests
5 GB of Log Data Ingestion
5 GB of Log Data Archive
3 Dashboards with up to 50 metrics each per month
1,000,000 free requests per month
3.2 million seconds of computing time per month
There are more and you can read more about all the free tier offers on Amazon free tier page.
Free tier helps you experiment with the cloud for free for a twelve month time period. However, if you need more, you will need to shift to the next scheme available. Most of AWS services are on demand and you have to pay as you go. What this means is that you will be paying only for the resources that you actually use. For compute resources, you will be charged on a per hour basis for the active EC2 instances. For storage and data transfer resources, you will be charged on a per gigabyte basis. For storage and data transfer resources, you will have to pay less if you use more. The discounts are significant and go as high as 75%.
On demand service is a good option if you're planning to use that product for a couple of hours a day, a couple of days per week etc. However, if you're going to use a service on a continuous basis, you should consider investing in reserved capacity so that you can get discounted offers.
For certain services, you can reserve capacity in advance and get a discounted hourly rate that's as high as 75% compared to the on-demand equivalent price. You can either reserve for a one-year term or a three-year term. RIs come with three payment options that include:
You can get higher discount rates by paying more upfront. While billing, Amazon automatically calculates the discounted rate depending on number of instances/storage that you've reserved and deducts that from your monthly statement.
If you're new to cloud, this is a good time to actually try and experiment with various cloud services and infrastructures. The cloud market is experiencing an intense competition between the top players and as a result, the consumers are benefited with good offers and discounts. In this post, we just explored what Amazon offers in their pricing. We discussed various pricing schemes and the popular offers such as the 12 month free tier scheme, and discounts that go as high as 75%. If you have any thoughts about reducing the cloud costs further, please let us know in the comments.