Live data from Hacker News

Why is Kubernetes getting so popular?

stackoverflow.blog

171–180 of 681 posts

Re: Why is Kubernetes getting so popular?

#171

I thought it was pretty insane yesterday when I read a YC-backed recruiting company was using Kubernetes. Absolutely insane. It's become the new, hottest, techiest thing that every company has to have even when they don't need it.

Why is it insane? Was there something about this company's stack that could have avoided Kubernetes in favor of something else?

Re: Why is Kubernetes getting so popular?

#172
In this post it might only be an example, but I don't see anything, that necessitates the use of YAML. All of that could be put in a JSON file, which is far less complex.

YAML should not even be needed for Kubernetes. Configuration should be representable in a purely declarative way, instead of making the YAML mess, with all kinds of references and stuff. Perhaps the configuration specification needs to be re-worked. Many projects using YAML feel to me like a configuration trash can, where you just add more and more stuff, which you haven't thought about.

I once tried moving an already containerized system to Kubernetes for testing, how that would work. It was a nightmare. It was a few years ago, maybe 3 years ago. Documentation was plenty but really sucked. I could not find _any_ documentation of what can be put into that YAML configuration file, what the structure really is. I read tens of pages of documentation, none of it helped me to find, what I needed. Then even to set everything up, to get the Kubernetes running at all also took way too much time and 3 people to figure out and was badly documented. It took multiple hours on at least 2 days. Necessary steps, I still remember, not being listed on one single page in any kind of overview, but somewhere a required step was hidden on another documentation page, that was not even mentioned in the list of steps to take.

Finally having set things up, I had a web interface in front of me, where I was supposed to be able to configure pods or something. Only, that I could not configure everything I had in my already containerized system, via that web interface. It seems that this web interface was only meant for the most basic use cases, where one does not need to provide containers with much configuration. My only remaining option was to upload a YAML file, which was undocumented, as far as I could see back then. That's were I stopped. A horrible experience and I wish not to have it again.

There were also naming issues. There was something called "Helm". To me that sounds like an Emacs package. But OK I guess we have these naming issues everywhere in software development. Still bugs me though, as it feels like Google pushes down its naming of things into many people's minds and sooner or later, most people will associate Google things with names, which have previously meant different things.

There were 1 or 2 layers of abstraction in Kubernetes, which I found completely useless for my use-case and wished they were not there, but of course I had to deal with them, as the system is not flexible to allow me to only have layers I need. I just wanted to run my containers on multiple machines, balancing the load and automatically restarting on crashes, you know, all the nice things Erlang offers already for ages.

I feel like Kubernetes is the Erlang ecosystem for the poor or uneducated, who've never heard of other ways, with features poorly copied.

If I really needed to bring a system to multiple servers and scale and load balance, I'd rather look into something like Nomad. Seems much simpler and also offers load balancing over multiple machines and can run docker containers and normal applications as well, plus I was able to set it up in less than an hour or so, having to servers in the system.

Re: Why is Kubernetes getting so popular?

#173
post #101
post #99

Call me biased [1] but K8s will take over the world! Yes you get containers and micro-services and all that good stuff, but now with Anthos [2] its also the best way to achieve multi-cloud and hybrid architectures. What's not to like! 1. I work for GCP 2. https://cloud.google.com/anthos/gke

Is there any benefit of Anthos over deploying straight to GKE if you're already bought into GCP? We've had this debate several times recently and can't come up with a good answer.

Anthos let's you let Google run Kubernetes for you in any cloud and on prem.

The live VMWare migration to Anthos is also quite impressive too

Re: Why is Kubernetes getting so popular?

#174

As a manager i've heard in all my meetings about 'kubernetes', had a look at it and have always been questioning the cost to manage this. What is the cheapest way to setup a production kubernetes on a cloud provider?

Digital ocean has a managed kubernetes service that does not cost anything except the resources you use. The master node and management is free, you only pay the node pools and stuff like block storages (their version of EBS) or load balancers.

I have used DO for managed Kubernetes since it was available and I am very happy with it.

Re: Why is Kubernetes getting so popular?

#175

I get the feeling K8 is the modern PHP. Software that's easy to pick up and use without complete understanding and get something usable. Even if its not efficient and results in lots of technical debt. And like PHP, it will be criticised with the power of hind sight but will continue to be used and power vast swaths of the internet.

But languages are easy, there is the whole field of PL theory to draw from. If you're randomly throwing things together like Lerdorf was, there's a missed opportunity. But what is the universally regarded theory that k8s contradicts? I don't think there is one.

In fact, I'd say that k8s is unusually heavily stepped in high-brow theories from both engineering and AI space. Just not necessarily ones that enjoy hype right now.

The storage of apiserver essentially works as distributed Blackboard in a "Blackboard System", with every controller being an agent in such a system. Meanwhile the agents themselves approach their tasks from control theory areas - oft used comparison is with PID controllers.

Re: Why is Kubernetes getting so popular?

#176

The simple answer is that Kubernetes isn't really any of the things it's been described as. What it /is/, though, is an operating system for the Cloud. It's a set of universal abstraction layers that can sit on top of and work with any IaaS provider and allows you to build and deploy applications using infrastructure-as-code concepts through a standardized and approachable API. Most companies who were late on the Clo…

Yes, people ought to do a side by side comparison of a new user learning to K8S v AWS v GCP before claiming Kubernetes adds more complexity than it returns in benefits. Remember the first time you saw the AWS console? And the last time?

Hmm really? My experience is that, with k8s I end up learning all the complexities of k8s in addition to AWS.

Besides, personally I find AWS console much easier to understand. I don't get why people hate it.

Re: Why is Kubernetes getting so popular?

#177

The simple answer is that Kubernetes isn't really any of the things it's been described as. What it /is/, though, is an operating system for the Cloud. It's a set of universal abstraction layers that can sit on top of and work with any IaaS provider and allows you to build and deploy applications using infrastructure-as-code concepts through a standardized and approachable API. Most companies who were late on the Clo…

I think this is a good answer. I'll add that as soon as you need to do something slightly more complex, without something like k8s you aren't going to be happy with your life. With k8s, it's almost a 1 liner. For example, adding a load balancer or a network volume or nginx or an SSL cert or auto scaling or...or...or...

Re: Why is Kubernetes getting so popular?

#178

Earlier quoted context omitted.

Swarm is still supported and works. I have it running on my home server and love it. Kubernetes is fine, but setting it up kind of feels like I'm trying to earn a PhD thesis. Swarm is dog-simple to get working and I've really had no issues in the three years that I've been running it. The configs aren't as elaborate or as modular as Kubernetes, and that's a blessing as well as a curse; it's easy to set up and adminis…

> setting it up kind of feels like I'm trying to earn a PhD thesis. The kind of people who has to both set the cluster up and keep it up and also has to develop the application and deploy it and keep it up etc is not the target audience. K8s shines when the roles of managing the cluster and running workloads on it are separated. It defines a good contract between infrastructure and workload. It lets different people…

There are elements of our company that want to move to Kubernetes for no real reason other than it's Kubernetes. I can't wait to see the look on their faces when they realise we'll have to employ someone full-time to manage our stack.

Re: Why is Kubernetes getting so popular?

#179

Earlier quoted context omitted.

IaaS is not "the cloud". it was in 2008 when all we had was EC2 and RDS. Today Kubernetes is the antithesis of the cloud - Instead of consuming resources on demand you're launching VMs that need to run 24/7 and have specific roles and names like "master-1". Might as well rent bare-metal servers. It will cost you less.

Does cloud really mean "resources on demand"?

Jonathan Schwartz, last CEO of Sun Microsystems, in March 2006:

"Frankly, it’s been tough to convince the largest enterprises that a public grid represents an attractive future. Just as I’m sure George Westinghouse was confounded by the Chief Electricity Officers of the time that resisted buying power from a grid, rather than building their own internal utilities."

https://jonathanischwartz.wordpress.com/2006/03/20/the-netwo...

Re: Why is Kubernetes getting so popular?

#180

The simple answer is that Kubernetes isn't really any of the things it's been described as. What it /is/, though, is an operating system for the Cloud. It's a set of universal abstraction layers that can sit on top of and work with any IaaS provider and allows you to build and deploy applications using infrastructure-as-code concepts through a standardized and approachable API. Most companies who were late on the Clo…

IaaS is not "the cloud". it was in 2008 when all we had was EC2 and RDS. Today Kubernetes is the antithesis of the cloud - Instead of consuming resources on demand you're launching VMs that need to run 24/7 and have specific roles and names like "master-1". Might as well rent bare-metal servers. It will cost you less.

If that is your definition of "cloud" then most stuff running on AWS and other "cloud" providers isn't. I agree that Kubernetes and even containers aren't the end all. I think they are a stepping stone to true on demand where you have the abstraction of just sandboxed processes compiled to WASM or something run wherever.

But as of where we are now, it is a good abstraction to get there. It provides a lot of stuff like service discovery, auto-scaling and redundancy. Yes you do need to have instances to run K8s, but that is as of date the only abstraction that we have on all cloud providers, local virtualization, and bare metal. So yes it isn't true on demand "cloud" but in order to work like that you need to fit into your service provider's framework and accept limitations on container size, runtime, deal with warm up times occasionally.

Post reply on HN