I was very excited when I found out Microsoft was doing a free Azure trial. One of the big deterrents for me to use Amazon ETC or Windows Azure is the cost. Despite being gainfully employed, I have the (bad?) habit of funding my ‘hobby’ development like I’m still a sixteen-year-old flipping burgers. Sixty dollar bar tab, no problem. Sixty dollar Azure bill for the month – that’s outrageous! To be fair, I do have a Dreamhost VPS that only costs me about twenty dollars a month (300 MB of ram on Linux).
I’ll preface the rest of this post by saying that all charges inured are from me basically ‘farting around’ with Azure (a possible alternate title for this blog). It’s a good indicator of what kind of charges one might incur if they just want to have one or two sites on Azure for development and testing.
Of course, you can determine roughly how much your hosting will cost using the Azure pricing calculator.
The first thing I did when I got my free trial, having done no research, was spin up a virtual machine. My train of thought was to treat Azure like any other server and just setup IIS and do a manual install of whatever sites I needed. In reality, it wasn’t necessary, but my VM stayed running and, as a result, ran up a tab. Lesson: don’t leave unnecessary Virtual Machines sitting around.
1 Extra-Small VM sitting idle for 14 days (61.50809 Computer Hours): $5.54
Looking at the pricing model, an extra small VM costs around $14.88 a month. Not too bad but you still have to pay for storage and either a Azure database or possibly a second VM running your database.
My second attempt was setting up an Azure Website which was covered in my first Azure post: Windows Azure: Can’t Say No to a Free Trial. Here is the great news about Azure websites:
Run up to 10 Web Sites per sub-region for free in a multi-tenant environment. Seamlessly upgrade to a paid Shared multi-tenant or Reserved instance model as your traffic grows.
The bad news is they are the most limited way to host but still great if you just want to play around with the platform and want some hosting. Keep in mind that database is not free so you’ll be paying if you want a data-driven site. I had trouble getting Nlog to write to the Azure table storage, so I ended up moving to Azure Cloud Services on my first ‘real’ project. In hindsight, I did find out what I was doing wrong, but haven’t bothered to switch back. One great thing about Azure websites is they are extremely easy and fast to deploy from Visual Studio. The main downsides are a CPU quota and the inability to set custom DNS records since you don’t have an actual IP. The cheapest real site you can do on Azure will run you about $10.00/month for a shared website.
Cloud services have been my bread and butter. I currently have one small instance running for my staging environment of a project I’m working on. This ended up costing around $45.00 for around three weeks which lines up to the calculators $57.76. I’ve since taken my web role down to extra-small, which should end up costing around $15.00 for the month. My small instance CPU maxed out at 1.56 % cpu usage, despite some of my unit test doing processor intensive image resizing. I’m looking forward to having to increase the size when my site racks up thousands of users but, for development, extra-small is more than enough.
Outside of hosting platform, database has been the only other real significant cost. The minimal 100MB database runs $5.00 / Month per database. If you go up to a 1GB database, the price goes up to $10.00 / Month – not too bad. Once again, don’t leave unused databases sitting around as you’ll still get charged.
Bandwidth and Storage
Since I’ve only been doing test development, I haven’t pushed these boundaries yet and the cost was negligible. If you’re using 48GB of bandwidth a month that will run you in the range of $5.00, it seems reasonable.
Cheapest Possible Site
So, if you’re like me and constantly playing around with new websites, what’s the cheapest you can get away with? Assuming you don’t want your domain to be ‘MyDomain.Azurewebsites.net’ by using the free hosting option, you’re looking at:
|12 GB Data||$0.84|
If $21.75 is a little expensive for you due to having a bunch of websites, you could host multiple sites from one vm. That would cost ~$15.00 / month + (numberofdbs * $5.00) + your bandwidth usage.
You can toy around on Azure for around $20.00 to $30.00 a month. I’m looking forward to taking a site live on Azure and with any luck I’ll have a reason to go above the bare minimum specs. Until then, as a 30-something who’s monthly Chipotle budget is over thirty dollars, the features of the platform are worth the cost.