The Cranky Admin
Clouds and the Human Equation
Control of the infrastructure is the question.
A self-service infrastructure can be operations-focused or developer-focused. A private cloud that is merely a layer of orchestration and self-service on top of a classic IT infrastructure still provides a very different experience from the major public cloud providers' solutions.
In a classic IT environment, everything is designed by a datacenter architect. There are lots of Visio diagrams, calculations are made about workload oversubscription, and resources are generally centrally planned.
If the organization runs a lot of RAM-heavy workloads that aren't particularly CPU intensive, then the organization oversubscribes CPU resources. If the workloads are mostly number crunching and don't impact storage much, the balance might instead play out with less investment in storage and perhaps some heavy lifters like GPUs being deployed into the nodes.
This is easy when there's one hand on the tiller. When new workloads have to go through central IT, central IT can easily and efficiently plan what's needed. This is the biggest advantage classic IT has over cloud computing.
With cloud computing, central IT gives up direct control over things like resource oversubscription to the end users. Most private or hybrid cloud solutions ensure that tenants are assigned fixed resources. If you assign 50 vCPUs to a tenant, 50 physical CPU cores are dedicated to that tenant. They won't be used by other tenants if the first tenant doesn't make use of what's assigned.
This can lead to systemic inefficiency in clouds. People have a tendency to ask for more than they really need, which can lead to lower overall utilization of IT resources, especially in traditional operations-focused clouds. According to one hybrid cloud vendor I work with, north of 90 percent of tenants oversubscribe when configuring their initial virtual environments.
Taking the human out of the equation changes things.
Developers at the Helm
Once the cloud evolves past being simply a nice graphical interface for individuals or departments to light up a handful of VMs without having to deal with bureaucracy, real efficiencies can be found. Clouds can be used to request only the resources absolutely required, when they're needed. More importantly, they can be used to return resources to the central pool when finished.
Automating this process using scripts and APIs removes most of the problems caused by human nature. It also removes the need to request resources ahead of time that might be needed and focus only on what's needed at any given point in time. This is the developer-focused cloud.
Organizations building IT infrastructure for their own use will try to make that infrastructure efficient. The idea that tenants naturally request more resources than they actually use is bothersome because the organization is ultimately paying for any IT resources that sit idle.
Public clouds, on the other hand, are developer-focused clouds. They are inherently multitenant solutions. The assumptions behind such a cloud are different than they would be for any on-premises infrastructure.
The cloud provider's philosophy is that efficiency is inherent to the system because tenants have to pay for whatever resources they provision. If a public cloud provider's customer provisioned a bunch of resources and didn't use them, that's just fine by the cloud provider. They only care that they get paid.
With developers in charge, this can work. Scripts can call resources as needed and release them when done. There is no need to provision a static virtual environment with a fixed set of resources except in edge cases. The public cloud is all about burstable shared resources.
The People Problem
For those looking to push cloud solutions, be they public cloud or on prem, the biggest hurdle is going to be education. People like being in control. They like safety margins and buffers and squirreling away resources for later. Especially for those new to cloud, the idea that they can order up only that which they need and there will be more available later is odd, if not downright suspicious.
For those who have already adopted embraced the cloud, none of this is new. What is new is the number of products and services that will be launching this summer, aiming to help with the problem. Resource schedulers, workload analysers, even consulting services will all be making a splash at this year's tech conferences.
Cloud adoption is no longer in question. Virtually every organization has adopted it to some degree. There is money then in being the company which can help organizations adapt the cloud -- public, private and hybrid -- efficiently. If the people problem is holding you back from the public cloud, pay attention to VMworld 2017 and re:INVENT this year. Solutions will be forthcoming.
Trevor Pott is a full-time nerd from Edmonton, Alberta, Canada. He splits his time between systems administration, technology writing, and consulting. As a consultant he helps Silicon Valley startups better understand systems administrators and how to sell to them.