How do I estimate my cloud costs?

For a user new to cloud, what is the best way to estimate cloud costs for the purposes of putting together a project budget?

Is there anything different that should be done when the budget is to be used for an NSF solicitation that is “CloudBank-eligible”?

One approach is to search on “AWS EC2 cost” to get a list of virtual machine types and associated cost per hour. From there you can extrapolate the most basic use case: Renting a computer ‘on demand’ style from a cloud provider. Notice this puts a learning curve onus on you because you will need to understand the horsepower of the various virtual machines in relation to your computing needs.

A more comprehensive approach is to identify a cost calculator for a cloud vendor (search here on ‘cost calculator’) and fill that out. Try and minimize your cost by imagining that you will be stopping resources when they are not in use. You might use a virtual machine 40 hours per week rather than leaving it on all week: 168 hours will cost 4 times as much as 40.

A useful tip: When you fill out a cost estimate form for a particular cloud, you can generate a stable URL that points to your results; so you can reference it or return to it later.

Another approach to cost estimation is to secure a working cloud account backed by some research credits. Then try building and operating some research infrastructure on the cloud and see how your spend goes. This has the advantage of catching costs that do not necessarily show up in the cost calculator.

Finally in our experience the two items beyond basic virtual machine cost that will impact your budget are block storage (think ‘disk drives mounted on my virtual machine’) and object storage (think ‘unlimited storage warehouse’). So it will be a good idea to learn how to cost those two services as well.