5 Questions to Ask When Evaluating Container Tools
July 21, 2020
As the number of container tools on the market increases, so does the confusion about what’s right for your organization. There is even a wide variety of container tools, from low level container engines to larger scale orchestration solutions. Today, we’ll focus on choosing the right container orchestration platform. Luckily, it doesn’t have to be difficult if you know the right questions to ask about your team, infrastructure, broader container management strategy, and future plans for growth.
In the post we’ll cover five of the most impactful questions leaders should consider when evaluating container tools. But first, let’s recap what container orchestration is and why it’s valuable.
What is Container Orchestration?
Container orchestration, explained succinctly, is the encapsulation of all the separate elements that go into deploying and managing containers. When executed correctly, container orchestration allows for easy coordination and management of all your containerized applications, a huge benefit to application life cycles for an enterprise or other large environment. A well-thought out container orchestration strategy brings a myriad of other benefits, including improved governance, enhanced deployment processes, and more.
Question 1: What is Your Cloud Strategy?
It’s challenging to make an informed decision about container strategy without a definitive cloud and container virtualization strategy. In this 2019 article, Gartner cites a quote from VP Analyst Michael Warrilow stating, “most organizations adopt a multi-cloud strategy out of a desire to avoid vendor lock-in or to take advantage of best-of-breed solutions” and that they “expect that most large organizations will continue to willfully pursue this approach.” While a multi-cloud approach may make the most sense for your organization as well, it comes with its own complications.
According to this 2019 ZDNet article, a multi-cloud strategy adds management complexity, especially if executed in an ad hoc manner rather than from the ground up. In either case, container tools can drive down this complexity by simplifying the number of manual tasks developers need to perform. A solution that makes opinionated decisions across cloud providers further simplifies a multi-cloud strategy as users are able to work proficiently in different environments—even ones they’re less familiar with—via the container tool.
It’s also helpful to think about virtualization more generally. While virtual machines have many of their own benefits, virtualized architecture looks and operates similarly to a hardware system. In container virtualization, the container and host share an OS kernel, allowing for increased efficiency for memory, CPU, and storage. Simply put, a physical host has the ability to run a much larger number of containers on top of it than it does VMs.
Read Containers vs. VMs: What's the Difference & When to Use Them for a full comparison of these two technologies.
Question 2: How Might Container Tools Impact Your Staffing and Talent Strategy?
For many corporations, attracting and retaining tech talent in today’s market can be incredibly challenging. This InformationWeek article cites the technology sector’s turnover rate at 13.2%—the highest employee turnover of any business sector—and states that ⅓ of tech workers plan to leave their current role within a year. A separate InformationWeek article quotes Matt Leighton, Director of Recruiting for tech staffing agency Mondo, saying “If you [as the employee] are not staying cutting edge, then you’re not doing yourself a favor.”
What does this have to do with containers? Engineers don’t want to feel stagnant, and equipping yours with modern technologies goes a long way in both keeping them happy and truly setting them (and, in turn, your organization) up for success. The ability to demonstrate true automation and continued learning in your environment often makes a huge difference in hiring and talent retention. A user-friendly container tool that facilitates learning for your developers can help them do their job more easily and feel more fulfilled in their role.
Question 3: What is Your Team’s Level of Expertise With Containers?
While containers, as a concept, are not new, their adoption has spiked in the last several years. A late 2018 article from The New Stack shared that container usage jumped from 22 percent in early 2016 to 38 percent in late 2018.
Download Free Report: Cloud Container Adoption in the Enterprise
A commissioned study by Forrester Consulting, on behalf of Capital One.
However, just because organizations are jumping onto the container bandwagon doesn’t mean their teams are prepared. According to a 2018 study from IBM, 62% of developers say that a lack of adequate container expertise in their organization is their biggest concern when it comes to container adoption.
Organizations may hesitate to adopt containers for fear of a steep learning curve for current tech teams and the inherent challenges in hiring talent with strong container experience. However, a click-and-play tool that facilitates simple container orchestration can alleviate some of the pain that comes with configuring, provisioning, and scaling container resources for application development.
That way, developers can get back to what they do best: shipping code.
For reference, read: What is a Container? Definition, Benefits, and Use Cases.
Question 4: Are Your Organization’s Cloud Resources Over-Provisioned?
Increased productivity is one of the most compelling reasons to adopt containers, since most organizations tend to be over-provisioned when it comes to their cloud resources. Many applications are draining cloud resources when they don’t need to be, while others face forced downtime when they need these resources the most.
A container tool with load balancing capabilities can prevent these problems before they begin. The platform should be able to scale resources down on underutilized apps, and scale them up on applications facing peak demand. Just as you wouldn’t leave the lights in every room of your house when you’re only using one room, your organization shouldn’t need to allocate cloud resources to every application equally.
Question 5: What Are Your Application Development Speed and Scaling Requirements?
Scale and speed are two more key container capabilities to evaluate. If your team needs to quickly spin up infrastructure for new applications and scale to meet the demands of new and existing apps, choose an orchestration platform that will allow your team to set up new instances quickly.
You may also want to consider a platform that scales automatically, minimizing human intervention. As we referenced earlier, automation will drastically simplify your team’s workload when there are containers deployed across multiple cloud environments. Additionally, an orchestration tool that enables declarative infrastructure will inherently allow your developers to specify and drive toward the infrastructure that they want.
What Container Tool is Right for You?
Container tools like Docker and Kubernetes are frequently top of mind when it comes to container orchestration. However, there are many others to consider if you’re looking into solutions for your organization.
Example Container Tools
- Amazon EKS
- Microsoft AKS
- Google GKE
- RedHat OpenShift
- Agile Stacks
There’s a lot to consider when evaluating container tools. And if you’re searching for an enterprise container solution, it can be even more complicated to find the right mix of features that allow you to scale appropriately and accommodate your unique efficiency challenges.
At Capital One, we created our own solution for these very reasons. Critical Stack is a simple, secure container orchestration platform built to balance what developers want with the needs of an enterprise. By combining improved governance and application security with easier Kubernetes container orchestration and an intuitive UI, it helps companies (like us!) transition to containers quickly, safely, and effectively. If you’re new to containers, trying to solve resource gaps, or have a need for speed and automatic scaling, Critical Stack may be the right container tool for your use case.