What does "overprovisioning" mean?
It means assigning more resources than what is needed to an application or service. The most common situation where this happens is when a new service or application is being launched. The initial focus tends to be on protecting from outages or poor performance in an effort to build customer trust rather than optimize cost. Activities aimed at reducing initial risk, such as overprovisioning, are given two thumbs up. Although accepting “any” cost may be an exaggeration, justifying higher costs is more relaxed than under normal circumstances. This tends to lead to allocating more IT resources than necessary, just to be on the safe side.
Overprovisioned VMware and Kubernetes resources
Some platforms, like VMware and Kubernetes clusters, provide mechanisms for dynamic allocation and distribution of workloads and resources. These self-managing capabilities can be very useful, but they also reduce the predictability of the environment. Contrary to the intention, that reduced control and predictability often causes operations teams to add an extra safety cushion to the configuration which increases the overprovisioning. It’s simple and convenient to operate with some extra margin while you figure out the demand patterns and behavior of an application. But it’s equally simple to reduce excessive resources once it’s stabilized.
Why is overprovisioning an insufficient strategy?
A reasonable amount of overprovisioning may be a passable strategy in the early days of a new initiative. Paying a premium to avoid a rocky start may seem like an acceptable trade off, especially if you don’t know exactly what to expect in terms of demand for the new service. You avoid surprises and everybody’s happy.
But soon enough when the bills come due, “any cost” often ends up being pretty expensive. The higher cost for running the service will be recognized, and you will be asked to justify it. Rather than waiting for that to happen, you should start optimizing the cost of running your services as soon as they become operational.
How do you reclaim waste?
The best way to avoid waste and save cost is to make it a continuously repeated process. The circumstance under which your services are running will change over time (case in point being the “grace period” allowed for new services discussed above). Occasionally taking a stab at eliminating waste will not suffice. You should build an automated cost optimization process that can be continuously repeated. It needs to cover all parts of your operational environment, correctly identify inefficiencies, and provide safe recommendations on how to remediate.
How do you prevent future waste?
There are certain proactive measures you can take to reduce the amount of waste that is happening. Policies and guidelines around how resources are provisioned, allocation and distribution of cost based on activity, etc. can reduce the amount of waste. But it’s important to realize that no proactive measures will completely eliminate waste. They should always be combined with a reactive right-sizing process.
By reclaiming current waste and implementing a continuous process, you can make sure you’re taking advantage of every cost optimization opportunity. You’ll be able to control IT cost and still deliver top-notch services to the business and your customers.