As we saw in part one of this series, controlling Cloud costs is a massive problem for companies -but the way to do so isn’t obvious, and in part two we looked at why just “hoping” programmers will respect the budget isn’t realistic.
In this final installment of the series, we explore how to stop Cloud infrastructure overspend before it happens, by using automatic quota allocations and delegating resources in a lifelike, real-time project environment, to enforce company-wide accountability, while accurately forecasting and controlling Cloud infrastructure spend.The pitfall of flexibility, overspend.
Have you heard the one about the French engineer setting up a MapReduce in a San Francisco pre-prod environment who confused a comma and a period (which have the opposite signification in French than in English) in his parameters, launching 2,000 machines instead of 2, and costing his boss $50k with this little typo in a line of code. That’s the terrifying beauty of Cloud infrastructure: it’s easy, open and if the credit card is valid, you can have anything you want!
Expensive flexibility with a glitch
Cloud infrastructure is expensive, no big surprise there, hey that’s the price you pay for the flexibility that’s allowing companies to remain competitive on the digitally disrupted landscape (just think of NetFlix launching in 130 countries in one day last year, made possible in large part thanks to Cloud infrastructure). Being expensive is not the issue, the problem is, despite these incredible technological advances, a relatively simple aspect remains strangely unadvanced: the control of the procurement process, or lack thereof.
Where’s the procurement mechanism?
Iaas is different to other services, like, for example, unified communication where there is a fixed cost: you buy 10 seats, you pay for 10 seats and you get what you pay for. With IaaS there is no controlled procurement mechanism. In the past, companies always built procurement mechanisms to control expense and process, if you have a team of 10 programmers to build something and then you need an additional three engineers, you have to make a request to your boss for the additional resources, then you’ll probably have to renegotiate the deadline. It’s a mechanism that keeps people and resources under control.
Too much freedom
But with IaaS as soon as you have the amazon AWS keys you just enter them, and exactly like a real amazon account, if your credit card is valid, you can buy whatever you want. It’s like an open bar or an all-you-can-eat buffet, the consequences being very strange, very high invoices.
In more technical terms, OneKloud is based on predictive analysis, it’s the next-generation of Cloud control, following from the the simple reporting tools currently on the market --they are great at generating pie-charts based on the bill, but after the money has already been spent.
We set-up projects exactly like they are created in a company, with a team, an objective and deadline, run by a project owner and with a budget forecast by the CFO. By using predictive analysis, OneKloud analyses what engineers are doing, starting to do and just about to do. It correlates this information with data on historical trends and past patterns to act as a proxy, to checks if the requests made by engineers in real-time fit into a project-based budget-mechanism, within the context of the specific project.
Thanks to a smart user and project dedicated access keys allocation mechanism, we make sure the right machines are allocated to the right project and match with the requests that are coming through. Approving those within the budget, rejecting those that don’t, and asking for next-level authorisation if it’s a maybe, -because we love accountability- this way before the manager conveys a budget blow out to their superior they will have a chance to balance Cloud infrastructure usage between the different projects they manage, exactly like if he or she were managing any other resource. Basically we’ve just cloned normal behaviour and added lots of smart things behind the scenes to make life smoother, control procurement and prevent Cloud infrastructure overspend.
And, so far so good, product owners, project managers, team leaders, VP of engineering or CTO along with financial controllers and executives love it. Developers face no change in their current process, habits or environment so they’re happy to, especially as it means they can get on with what they do best and let OneKloud take care of the rest.