Most CIOs and IT leaders are well-familiar with the recurring mandate “do more with less.” It’s a reality in many organizations, one that tends to ebb and flow with a variety of other factors, such as macroeconomic conditions.
Sometimes, “do more with less” might be more accurately phrased “do more with the same” – as in the same budget, the same number of people, and so forth. This proves especially common in more challenging times. Suffice it to say, “more challenging times” understates the current moment brought on by the COVID-19 pandemic.
How can we use technology to “do more with the same?” Kubernetes has an automation role to play.
While such a mandate applies widely, IT often feels a particular type of pressure here: How can we use technology to fulfill on the “do more” promise, without breaking the bank? (IT veterans are also likely familiar with the more presumptuous version of this question, which frames it more as a statement: “We can just use technology for that, right? Let’s get IT on it.”)
We’re witnessing a new wave of the “do more with the same or less” right now. Many organizations are accelerating digital transformation initiatives, for example, not mothballing them. But they’re not necessarily getting tons of extra resources to do so, so they’re again asking: “How can technology help?”
Automation is one major priority for some IT leaders, including in areas like CI/CD pipelines and robotic process automation (RPA). With that in mind, we’re looking at a key enterprise IT topic – Kubernetes – in this light. Can it help you save money and/or balance your budget? The “TLDR” answer: Under the right conditions, yes. Most experts agree there are some up-front costs, including in the form of learning and navigating some of the platform’s more complex features. But once you’re up and running, there are various budget-friendly benefits with container orchestration.
[ Kubernetes 101: An introduction to containers, Kubernetes, and OpenShift: Watch the on-demand Kubernetes 101 webinar.]
“Kubernetes can definitely save budget,” says Niraj Tolia, CEO at Kasten. “We have discovered groups self-funding new initiatives from the savings obtained from moving VM-based deployments to Kubernetes.”
Kubernetes can give IT teams time back
The name of the game here is (again) automation: It underpins many of the potential ways in which organizations can achieve budget goals by using Kubernetes to manage containerized applications and the infrastructure they run on.
“Kubernetes provides a platform for efficiently managing and scaling applications in a dynamic and fully automated way,” says Wei Lien Dang, co-founder and chief strategy officer at StackRox. “This saves costs, not just in terms of greater resource optimization, but also time, allowing development, operations, and security to do more with their time rather than managing infrastructure.”
When people refer to Kubernetes as an orchestration platform, that’s partly a way of saying: “It automates lots of things.” (Check out this primer “What is orchestration?” for more on the nuances between the separate-but-related concepts of automation and orchestration.)
“Automation also can lead to more repeatability and consistency. So fewer middle-of-the-night pager calls.”
Gordon Haff, Technology Evangelist with Red Hat adds that “Automation often gets talked about in terms of increased efficiency – taking less time to do a set of tasks. But that’s really just part of it. It also can lead to more repeatability and consistency. So fewer middle-of-the-night pager calls. Less downtime. Happier users and customers. Automation isn’t just about doing things faster. It also forces you to have documented processes if you didn’t have them before.” As any IT veteran knows, messes and surprises cost – in multiple ways.
4 ways Kubernetes automation can lead to budget savings
With that in mind, let’s look at four overlapping examples of areas where Kubernetes can lead to budget savings over time.
1. More efficient infrastructure management
“Scale” and “scalability” are oft-used (or overused, depending on your perspective) terms when discussing containers. There’s a reason for that: The very nature of containers (and especially containerized microservices) means that an enterprise can suddenly be running hundreds or thousands or – well, you get the idea – daily in production. At first blush, that might sound like a hiring spree – not to mention the potential for new infrastructure – will be necessary to make it all work. Kubernetes can help address both issues.
“Pooling resources together in Kubernetes clusters is a way to increase density and utilization across machines.”
“Focusing on the infrastructure side of the budget, pooling resources together in Kubernetes clusters is a way to increase density and utilization across machines,” says Ravi Lachhman, evangelist at Harness.
We’ll touch on resource utilization – and its optimization – in a moment. But first, let’s consider the reality that you need people to keep the machines operating smoothly. With Kubernetes, Lachhman sees a shift from traditional infrastructure engineering to a platform engineering approach – which reflects that a relatively small team may be able to manage a seemingly limitless infrastructure with containerization and orchestration.
“The infrastructure engineering burden – how many servers or VMs that an engineer can manage – will increase dramatically with containers,” Lachhman says. “Instead of managing hundreds of VMs, an engineer can potentially manage thousands, if not ten-thousands of containers.”
Kubernetes is the tool that enables that engineer to do so efficiently, whereas previously this may have been a classic “we need to throw more people at this” problem. (In fact, some of the skepticism around the term “scalability” in IT contexts is that it too often has meant relentlessly overworking teams or requiring a constant stream of new hires – not exactly a budget-friendly strategy – to keep things up and running.)
[ Read also: OpenShift and Kubernetes: What’s the difference? ]
2. Improved resource utilization
When it comes to IT budgets specifically, one of the most common sources of wasted spending comes from inefficient resource utilization. If you ignore resource utilization, you’re almost inevitably going to be spending money on stuff that goes unused.
“Containerization typically allows for more efficient resource utilization since many different types of workloads can spin up faster and run on a single machine using a shared operating system,” says Dang from StackRox.
That’s the first in a trifecta of potential financial savings from using Kubernetes, according to Dang, particularly as hybrid cloud and/or multi-cloud environments grow. The next two:
Kubernetes and containerization in general offer greater “density, uniformity, and agility.”
“Kubernetes [also] enables granular control over resource sharing by allowing resource requests and limits to be set,” Dang says. “[Finally], Kubernetes is also a driver for greater cloud adoption, which can allow organizations to achieve more efficient usage of compute resources and therefore, budget optimization.”
Lachhman notes that Kubernetes and containerization in general offer greater “density, uniformity, and agility” – all of which create opportunities for more optimal resource utilization – which typically means reduced costs.
“There is no argument that containers can have a greater density than virtual machines for workloads,” Lachhman says. “Kubernetes as a resource manager can help place workloads on available capacity inside of the Kubernetes cluster, driving up utilization.”
Let’s look at two more ways Kubernetes can help save IT budget: