We have recently seen some criticism about the wider Kubernetes dev-tools market using messaging such as "Kubernetes is complex" and how its trite and misleading...
Well, we tend to disagree, but not just because Portainer is likely one the very tools being criticising for harping on about the complexity of Kubernetes... but because Kubernetes IS complex, at least for many (if not most) people that are being made to use it.
Let me give my perspective.
- Kubernetes is not "follow your nose" it IS hard for someone nett-new to the technology; it takes time and patience to learn. How long? well that depends on the person, it could be 6 weeks, it could be 6 months".. how much do they need to learn? well that depends too, it could be very little, or it could be an extreme amount as the person needs to be a Swiss-army-knife inside their org, supporting everything.
- Don't forget, if you decide to embrace Kubernetes, there is also the need to learn all of the ancillary tools required to support the platform (Prometheus, Alert Manager, Graphana, Logging Systems, CICD tooling, container registries, service-meshes etc etc)... without these you are flying blind.
- If you don't have the luxury of time to get up to speed on all of this (your boss is telling you that they just bought this new core business application, which so happens to run on Kubernetes, can you get it into prod right now) then what do you do? Do you contract an external expert to do it? Do you do your very best and hope its done properly and securely, do you go hire a new member into your team with prior experience (if you can afford one), or do you say "sorry boss, i need a few months to learn the tech first"... either way, its not good
- What about when you outgrow doing simple stateless deployments of apps on a single cluster (likely using Helm), and enter the realm of managing multiple clusters, external authentication, RBAC roles, deploying stateful containers with persistent storage, load balancers, ingresses, quotas etc.. can you only embrace these more advanced technologies at the speed you and your team can learn them, or do you want to embrace them at a pace that makes sense for your organisation ? Ideally the latter, right?
- And what about when you want to mature into GitOps/DevOps paradigms, are you ready for that new learning curve? that takes Kubernetes to another level altogether..
This is where products like Portainer come into play.. the job of Portainer is to get your team up and running on this new technology NOW, with the skills they have NOW, and without exposing the organization to undue risk, or being forced to use expensive consultants or hiring new expert staff.
Portainer is not meant to STOP you learning, its there to bootstrap your knowledge and simplify your onboarding into this technology, until such a point as you master it sufficiently to start using native tools (and Portainer supports native tooling proxying through it, so your users can choose to either stay using Portainer's UI or transition to native tooling, or use a mix of both).
This is the value of products like Portainer, to take away the shock of the new tech, to help newbies get started quicker, with a lower barrier to adoption, and to help them learn good practices through embedded controls. At least, this is the ethos behind Portainer.
Is Portainer there yet with Kubernetes, no we are not, we are still building out our vision of simplicity, but we have now cemented our foundations for what's to come.. expect to see major innovations from us in the coming months.