Why Kubernetes is our modern-day COBOL(techrepublic.com) |
Why Kubernetes is our modern-day COBOL(techrepublic.com) |
It’s a bit early to say anything. If anything the death of k8s will be sparked by all those who fail to implement it the right way like we all did with AWS.
I first got into AWS very early on and one of its early official selling points was ephemerality yet most of us treat everything as pets, EC2 has affectively become just a vanilla hosting/managed provider with an API on top.
K8s isn’t difficult or complex, it’s just different and once you get it you get it. What ruins it is things like not following its intended paradigm, breaking the isomorphism and determinism of the containers… insisting things ansible, chef, salt, et la.. are still required. Grabbing a shell into container to debug something non app related, effectively breaking the ephemeral nature. The only thing you’ve effectively done is added additional complexity without hacking off any of the stuff that should be dead
Before k8s goes out I think no-code and then by extension no-infra will become a lot more ubiquitous, and if anything no-code will consolidate off a good chunk of our industry
Even engineers working on kubernetes agree that it is a very complex framework. It consists of many different layers and introduces a large amount of (unique to kubernetes) concepts and also requires extensive knowledge of docker...
I've found Kubernetes is very well structured, and allows you to ignore just about anything you aren't actively in need of using. I'm sure it gets incredibly complex if you really need all of its power, but based on what my team have done so far with it? I doubt there are many people who are actually going there.
Okay so we're building something that has been mentioned as being "too simple" for Kubernetes and "you could run that on App Service" (we're on Azure hosting), but having looked into that option... Kubernetes is easier. It's pretty open about what it's doing, there's loads of knowledge out there to draw on, and it does what you tell it to. Sure there are Kubernetes concepts you have to learn, but like I said above you don't need to learn all of them at once, and it's pretty easy to get started with deployments and replicas and services.
Kubernetes is a fantastic example, in my opinion, of a product designed to solve a set of very complex problems which actually solves those problems in a decent way rather than just changing them into different, equally complex problems, which just about everything I've used in the past seems to.
Turtles, all the way down.