As containerization continues to explode, the need for a container orchestration and management platform has exploded with it. Kubernetes has become that de facto leader for orchestration and management.
At Platform9, we have observed that, as our customers enter the Kubernetes space, their primary inclination is to start doing the implementation by themselves. They want to be “hands on” and figure out how they can solve the problems that arise by themselves.
Top 3 Implementation Considerations for DIY Kubernetes
Along the DIY path, after they run into a number of challenges, they reach out and discuss a Managed Kubernetes solution with Platform9. From our experience, here are three main factors that need to be considered before attempting a DIY Kubernetes implementation:
- Deployment Time: To put up a production grade, highly available cluster, it can take 3 to 5 weeks and consume considerable resource time…time that could be focused on doing other things. It can be difficult for large scale enterprises to deploy Kubernetes across a diverse infrastructure base when situated in various geographical locations and operating both on the public clouds and/or on-premise infrastructure environments.
You need to configure a complex blend of components, services, plugins and add-ons to deliver a production ready deployment. There is a steep learning curve – often requiring specific developer expertise that you may not have in-house – to figure out the nuances needed for your enterprise’s specific installation. This can be an expensive and time-consuming effort for your enterprise.
- Ongoing Monitoring: Once the deployment is up and running, how do you monitor it? What are the things you’re looking for? How do you even know what you are looking for? You can surf the Internet and see what other people have encountered in the Kubernetes space; this takes a lot of time and potentially requires numerous unique search queries to find the specific information you are seeking. Issues related to log collection, workload monitoring, SSL termination, certificate management, and network isolation are a few of the features that need regular oversight to successfully run enterprise-ready Kubernetes in a large-scale organization. Ongoing, around the clock supervision is key.
- Troubleshooting: Once monitoring is in place, typically the last thing people ask is “Great, I found a problem. How do I solve it”? There’s no guaranteed run book out there that says when you see problem A, do step B. Again, you have to spend a significant amount of time surfing the web for solutions. When a problem occurs, IT personnel need immediate notification; they will then be responsible for researching the cause and correcting it as soon as possible. This can be challenging and take a lot of IT personnel time…while they simultaneously balance the maintenance and running of critical applications.
It is also important to install the latest upgrades and bug fixes on a timely basis. Kubernetes and its open source elements continue to evolve at a fast pace. Additional problems can occur in the production environment if a patch or upgrade is missed.
What are the real costs for DIY Kubernetes?
There are several critical elements that must be addressed in order to achieve, and sustain, production-ready HA clusters. Each of these steps has a real financial impact in terms of your staff’s labor time for both initial implementation and ongoing maintenance. An example is shown below.
|Key Features for Establishing Production-Ready Kubernetes||Initial Costs (number of work months to implement)||Recurring Costs (number of FTEs required)||Comments|
|Provisioning||3||0.75||Standing up of clusters needs to be carried out using config mgmt tool like Puppet, Chef|
Cluster stand up will need to be carried out for each supported environment
|Monitoring||3||0.25||Monitoring capabilities for Kubernetes infrastructure needs to be built to check for downtime|
Processes need to be put in so that output from monitoring activities can be understood and acted upon by support staff
|Upgrading||1||0.75||Custom scripts have to be written for carrying out upgrades for production clusters without incurring downtime |
Upgrade schedules need to be planned carefully to keep pace with Kubernetes versioning while ensuring roll out of security features appropriately
|Security||2||0.25||Authentication and Authorization needs to be carried out by integrating with identity management systems (e.g., Okta)|
Role based access control needs to be implemented
|HA and Healing||2||0.25||Both hardware systems and Kubernetes clusters need to be highly available|
Faulty HW/ VMs need to be replaced without incurring downtime
|Load Balancing||3||0.25||Application level load balancing needs to be established (one-time cost to implement) |
Recurring costs for enhancement and maintenance will need to be taken into account
|Heterogenous Environment Support||4||0.25||Integration with multiple infrastructure including Bare Metal, VMware/KVM and public clouds needs to be supported|
|Cost Summary||1-Year Cost of DIY||2-Year Cost of DIY||3-Year Cost of DIY|
Platform9 Removes Operational Complexity with PMK
Our customers tell us they choose Platform9 Managed Kubernetes (PMK) because we distill away much of the operational complexity:
- Deployment times go from 3 to 5 weeks to a matter of hours
- 24/7 monitoring and troubleshooting support is provided
- Upgrades and fixes are handled across all enterprise infrastructure environments.
This allows their developers to focus on what they do best – building and running applications. Plus, it allows developers to focus on the ability to scale rather than keeping their eyes on a single individual cluster.
If you have already started down the do-it-yourself path with Kubernetes and are facing difficulties, Platform9 can help. We’ve assisted numerous customers in transitioning from a DIY implementation to a Platform9 Managed Kubernetes environment.
Platform9 also wrote an eBook that tells a very short story of what may have been your Kubernetes journey (so far) and its challenges. It concludes with a happy ending — for all its complexity, with a little help, deploying and maintaining Kubernetes for your microservices applications can be a quick and painless process.
The eBook story includes:
- Hello, Kubernetes! Getting started …
- Waking up to a brand-new ecosystem of apps and skills
- Hiring and retaining k8s Ops talent
- Quickly transition from DIY to getting-it-done
- … and much more!
Download the eBook here: https://platform9.com/resource/diy-kubernetes-harder-than-you-thought/
Hear Jeremy Brooks, Director, Customer Success, on “Managed Kubernetes vs DIY: Top 3 Considerations Before You Choose.”
- [Video] KubeVirt – Beyond Containers: Coming full circle back to VMs! - September 12, 2019
- The unforgiving cycle of cloud infrastructure costs (and the CAP theorem that drives them) - April 23, 2019
- Transitioning from managing VMs to orchestrating containers - November 28, 2018