There's much to consider when choosing a Kubernetes deployment model. In addition to the pros and cons of each option and how well they satisfy your priorities, you need to feel comfortable with the model based on your Kubernetes experience. Easy, right? Well, not if you've never deployed Kubernetes.
To help figure this out, here's what Gartner recommends at both the evaluation and production phases.
When you're evaluating Kubernetes, Gartner suggests public cloud container services, especially if your staff has never dealt with Kubernetes. This way, you won't spend a ridiculous amount of time learning and preparing to run Kubernetes. Plus, you won't have to break the bank with a big upfront investment. Instead you can start testing Kubernetes under a consumption-based pricing model.
Most public cloud container services are based on the "vanilla" (i.e., basic) Kubernetes open-source version. That makes it fairly easy for you to extend or switch to another deployment model later.
When you're ready to move into production, Gartner says if you can use a public cloud for your container platform, go with public cloud container services. This will make it easier to manage your container platform. Plus, you can take advantage of hyperscale public cloud services and their associated ecosystems.
If you have a hybrid or multicloud strategy, go with container management software in the production phase. This option makes it easy for you to integrate the management capabilities you'll need for your hybrid cloud or multicloud use cases. Plus, you'll get best practices for repeatable, reliable operations with container management software, and benefit from more comprehensive DevOps and microservices development experience.
Third-Party Managed and Hosted Services Are Another Option
If it feels too much of a burden to take on container management software, Gartner says managed services by third-party providers or hosted services are good alternatives. Both simplify operations, just in different ways.
Avoid Upstream Versions Unless Necessary
Gartner also cautions organizations to avoid upstream versions of Kubernetes. That's because you'll take on significant integration work to connect to third-party plug-ins needed to ensure Kubernetes is operationally sound for production. So, don't use those versions unless absolutely necessary (i.e., to address special requirements).
It's quite an undertaking integrating multiple open-source components and then maintaining your own system. In fact, Gartner says this option is only viable for organizations that can interact with and contribute to open-source projects.
Even then, Gartner recommends you avoid building your own Kubernetes system using upstream versions. The only exception is in large deployments where a large enterprise might be able to realize significant cost savings by customizing and optimizing the operation.