June 20, 2016 by Kenneth Fisher
The cloud can be expensive. I had this hammered home the other day by a simple mistake. I’m currently working with Microsoft’s Azure platform and using one of the free credit options. I get a free $25 a month for a year and fortunately for me this put a limit on my on spending of that $25. I’d been playing around a bit, created and connected to a SQL Database, then decided to create my first Azure server. I created a server from a template, with SQL Server 2014 Enterprise installed. I connected to it, made sure it was working, and went to bed for the night. A couple of days later I checked on my account and was surprised to discover that my remaining $18 had disappeared that first night. I should point out that the server I used was less than $14 a month, not a day. Now for a company $18 in 12 hours might not be that big a deal, but it was a real shocker for me. I checked and discovered that the Enterprise license cost was ~$1.5 an hour for the VM I was using. Given what I know of Enterprise costs this shouldn’t have surprised me. I certainly should have known better. But it was a mistake. And without that limit it could have very quickly become a very costly one.
This got me thinking about ways to reduce/minimize costs. These are some general ideas since from what I can tell cloud billing is as complex as the tax codes and at that I have limited experience.
- If you aren’t using your VM, shut it down. You can do this manually, or with a powershell script or even at the push of a button
- Start small. Only create the machines you need and keep them to a minimum.
- Starting small will lead to some bottle necks. Feel free to bounce up and down as you need. There are some restrictions (size etc) when you move downwards, so be careful. Again this can be done manually or with powershell. Let’s say you need to do a high volume load. Bump your service tier, then once you are done, bump it back down again.
- And my personal favorite : Don’t install enterprise when you only need standard.
Remember that the whole point of the Cloud is the ability to use only the resources you need when you need them. If your company is only open 8-5 then why are you paying for an active VM from 5 to 9? In fact I’ve talked to people who have put jobs in place to turn their VMs on and off on a schedule. Resource management has always been important, but with the flexibility the cloud gives us, it has become even more so.