• Amazon AWS costs have improved 55-100% since 2009

    I previously wrote an article in 2009 about how much you might expect to pay for hosting your server/services using Amazon AWS EC2 and S3. The conclusion was that it would cost you approximately $920/year up to over $10K/year depending on the instance type you chose to run to host your server on Amazon.

    Over the course of time the cost of hosting on Amazon Web Services has come down dramatically and their service offerings have increased 5 fold from what they had. Let’s take a look at what you will pay now versus 2009 for the comparable setups. For the sake of simplicity I am going to use current 4th generation on demand pricing but there are a few cases where it might be cheaper to use 3rd generation over 4th. There are very few good reasons to still be using first generation servers though. It should also be pointed out that Amazon also launched spot instances which are an even cheaper way to run an ec2 instance albeit not necessarily as reliable.

    Let’s start with the savings in transfer costs. Previously, in February 2009, data transfer in and out of EC2 instances and S3 was the following:
    Data Transfer In: $0.10 per GB
    Data Transfer Out: First 10 TB per Month $0.17 per GB

    The first MAJOR change, and it happened pretty quickly after my last post, was AWS cut the cost of data transfers in to free, which made total sense IMO.

    This is the current costs now:
    Data Transfer In: $0 per GB (100% savings over 2009)
    Data Transfer Out: First 1GB FREE, then first 10TB per month $0.09 per GB (47% savings versus 2009).

    S3 also now offers different storage classes versus just the one type in 2009, so for storage pricing we are going to use standard which is $0.023/GB. The previous cost of S3 storage was $0.15/GB stored so that is almost an 85% decrease in costs.

    Going back to my scenario from 2009 of using S3 as a simple file backup service for 100GB of data with growth of 10GB/month and 1GB/month out:

    100GB stored + 10GB/month in + 1GB/month out = $16.17/month

    This came out to over $200/yr when you accounted for the growth.

    Now the price is:

    100GB stored + 10GB/month in + 1GB/month out = $2.30/month

    That is a savings of 86%. S3 also has the ability to reduce this cost further if the data you want is infrequently accessed to just $0.40/month using glacier.

    Storage costs was one of my biggest gripes with AWS and they have certainly come a very long way since then. Instead of costing $2700 to store 1.5TB per year you are looking at about $415 now on S3. That still seems high since $60 will buy you a 2TB hard drive, BUT you will still need at least 2 of them in a RAID, a power source, some sort of container/device for them and something to monitor/maintain them and you want them OFFSITE (most important of all).
    While there are lots of options in the backup space if you are looking for a DIY solution on Amazon (or for storing your ec2 instance backups), this is what you can expect to pay. Again, if you choose to store your files using glacier, your yearly cost will drop to about $72.

    Moving onto EC2 instances, we will build off my previous scenario of:
    EC2 Instance Hours (744) + 10GB IN + 10GB OUT
    This equates to 1 month of continuous instance usage. In my previous I used the following instance classes:
    m1.small ($920-$1100/year)
    c1.xlarge ($7000-$10000/year)

    We are going to use the following instance types this time around:

    There is something important to note here. Amazon went from using instance stores to EBS backed instances. We started using EBS right away as we did not like the ephemeral storage provided by the instance store, so I will be including the EBS price in this new scenario. I will make the EBS size the same as the instance store size from the previous post to try to keep things relative but they will be based on magnetic storage (which is close to the instance store performance). Amazon added different classes of drives so that is also something you will want to take into consideration when planning out your systems.

    So to run a basic LAMP stack (or Windows Server) on Amazon this is what costs you are looking at:

    For the t2.small with 160GB HD – $24.84/month for Linux or $31.43/month for Windows.
    For the t2.medium with 350GB HD – $51.91/month for Linux or $65.08/month for Windows.
    For the m4.large with 850GB HD – $121.56/month for Linux or $191.10/month for Windows.
    For the c4.xlarge with 1690GB HD – $230.17/month for Linux or $364.86/month for Windows.
    For the m4.xlarge with 1690GB HD – $241.88/month for Linux or $380.23/month for Windows.

    Without giving the final totals, you should be able to quickly see that the costs are dramatically lower now.
    So for the cheapest scenario you are looking at $292.47-$370/year (linux-windows/year), while for the most expensive scenario, it will be $2847.94-4476.90/year. This is a 55-68% savings over their 2009 pricing.

    While in 2009 I found the pricing to be rather expensive to what you could put together on a rack, it is now incredibly competitive to move to the cloud for almost the same cost but with half the headaches and a much lower management and administrative cost overall. I should also point out that this is a WORST CASE SCENARIO pricing scheme. What I have priced out can be reduced significantly further if you were you purchase a dedicated or reserved instance!

    For example you can outright purchase the m4.xlarge server for a single year for $1082 for a linux server which is 62% less than the on demand price and a whooping 85% less than the 2009 pricing. The 3 year purchase makes it even cheaper. Add to the fact that you can AMORTIZE this price over the year (or 3 years), and it becomes a win for the accounting department as well as the IT department.

    So what is the cheapest cost for a dedicated web and database server on Amazon AWS to run a LAMP stack? To price that out we will use a t2.micro RDS mysql server ($202 over 3 years or $5.61/month) for the DB and a t2.nano server for web ($92 over 3 years or 1.92/month). That equals $7.52/month to run a dedicated database and web server, that if tuned correctly and using good caching and/or a CDN can easily service a wordpress blog with several thousand visitors per month. However, due to the limited CPU, concurrency could be an issue if you are too demanding of the CPU.

    It is a race to the bottom for pricing and Amazon Web Services is the Walmart of the cloud business. Fact of the matter is if you are a small or medium business and not looking at moving into the cloud now, you really should be and we can make it happen. Send an email to admin-at-computerplumber.com or leave a comment below.


    Leave a reply