Infrastructure-as-a-Service pricing: Keeping IaaS costs out of the clouds

Staples once ran an ad campaign focusing on a so-called "Easy Button," a physical device people could press to magically solve complex problems. It started as a joke, but soon transformed into a cultural icon and an actual toy Staples sold millions of.

The phrase “easy button” even became shorthand for any product that makes complex tasks simpler. And when you think about standing up IT services quickly, some have suggested that Infrastructure-as-a-Service (IaaS) comes pretty close to being an IT “easy button.”

Let’s look at some of the reasons why Infrastructure-as-a service is easy:

  • You can stand up virtual machines in the cloud quickly.
  • Your service provider takes care of hardware maintenance and many security tasks.
  • You can add resources to virtual machines (VMs) simply with just a few mouse clicks.
  • You pay for what you use with no capital investment in hardware.

With IaaS, your money buys nearly instant access to on-demand servers and their compute, storage, and networking resources. And when you need more memory or more virtual servers, you just open your wallet and they can quickly be yours… for a price. (If you haven’t guessed by now, that level of convenience isn’t always cheap.)

In fact, IaaS cloud computing is a big, profitable business for IaaS providers. In the first quarter of 2016, Amazon Web Services alone pulled in £1.82 billion in revenue, growing 64 per cent year-over-year. And the Microsoft division that includes their Azure IaaS offerings routinely posts billions of pounds in revenue every quarter too.

So how does a cloud vendor make money?

If buying new hardware and software licenses is similar to purchasing a home, then using IaaS can be like renting a property on a month-to-month or sometimes longer basis. Like a renter, you can leave when your contract ends, and owner is responsible for maintaining the infrastructure and fixing any problem that arise with it. You don't own the hardware assets outright, but you do retain a lot of flexibility.

And how much does Infrastructure-as-a-Service cost? As of early 2016, you could expect to pay anywhere from about £10 to £920 per month for Microsoft Azure instances. That huge price variability is based on several factors:

  • Number and type of processor cores in the IaaS instance
  • RAM you have access to
  • Amount of storage and speed of disks you get
  • Access to advanced features like load balancing or auto-scaling
  • How long the instances are actually in use

The last part is key. You don't pay for VMs that aren’t running. In many cases, this makes IaaS cost-effective compared to traditional servers, where you could be saddled with the upfront cost of a new server that’s underutilised.

But IaaS isn't always cheap. Like help desk tickets during an unplanned outage, the costs can pile up. Recent studies found that AWS costs could be higher than on-premises servers for certain organisations depending on scale and how intensively the servers are utilised.

To keep costs under control on IaaS, there are a few tricks of the trade that can help you keep monthly costs down to earth.

1) Turn off idle or underutilised instances.

You want to make sure that you're not just leaving an unused server running for no reason. Your IaaS provider only charges you for actual usage, so a powered-off instance is one that isn't racking up charges.

It happens, though: Maybe you spun it up for a project and the project was finished but the instance was mistakenly left on. It's like accidentally leaving on the lights in your house when you’re away. You can spot these underutilised machines though using network monitoring tools as your eyes and ears in the field.

2) Size appropriately and pick the instance type that's right for you.

Instances come in many types and sizes. Some are optimised for compute, others for storage, and then there are tiers with varying degrees of performance.

Don't go too big (or too pricey) if you don't have to. You might overprovision and end up paying for resources you won't actually use. For example, you don’t want to pay for a super-powerful instance if it’s just going to sit at 30 per cent CPU utilisation forever. It’s best to scale down to a cheaper option and do a price comparison so you can find the best fit for you.

3) Keep an eye out for memory leaks and extraneous services.

Because you’re literally paying for everything you use, you want to run as efficiently as possible when using IaaS. Therefore, wasted resources are your wallet’s enemy. You don’t want to run unneeded background services and you want applications that run efficiently and free of pesky resource-hogging issues such as memory leaks that could bog things down.

In general, you need to keep an eye on your IaaS instances, just like you would with on-premises servers and VMs. Basic tools like the dashboard on the billing page in AWS, as well as more advanced tools for cloud management and network monitoring can help you get a handle on your IaaS cloud usage and keep costs down.

Peter Tsai is an IT Analyst at Spiceworks.

Image Credit: Maksim Kabakou/Shutterstock