Live data from Hacker News

Will Kubernetes Collapse Under the Weight of Its Complexity?

influxdata.com

191–200 of 213 posts

Re: Will Kubernetes Collapse Under the Weight of Its Complexity?

#191
post #165

Earlier quoted context omitted.

> And how bad the demand side is when it comes to picking the experts. You meant, there is a very strong demand ?

I mean big companies that hire "AWS consultants" are big, slow, dumb, incompetent blobs of IT. And yes, there's a demand for these specific skills, because big inefficient companies are willing to pay for just this, because their in house people are usually overworked or simply not allowed to do it themselves without an expert on site (or on call, or on skype). And of course AWS is a big jungle of buzzwords itself, w…

Yeah, thanks for clarification. As a technical person I find myself a bit confused as I don't know if I should follow some buzz and try to make money in the short term of go deep and go for the long term. Will it pay off ?

Of course I get more satisfaction in "feeling" a "deep" and "true" technical folk.

Re: Will Kubernetes Collapse Under the Weight of Its Complexity?

#192
post #168

Earlier quoted context omitted.

If we're talking about the actual installation of a distributed system, then installing a distributed database isn't "easy" either, and also requires knowing the concepts so you know what you're doing. Kubernetes is not going to be simpler or easier than the software that it's designed to run on top of itself, but it's not that hard anymore either. The installers work well, there are several distros with varying capa…

I think this is a totally flawed way of thinking. Most systems do not need a fully distributed database, for example, and as a result most don't need the flexibility. E.g. over years of using Etcd. I've come to the conclusion that none of the uses I've actually used it for were necessary, and so I've generally stopped using it. I'll use it again if I come across instances where consistency is sufficiently critical an…

This is far off the topic and I'm not sure what point you're making, or what you refer to as a way of thinking.

My main point in all of this is that concepts must be understood to run large distributed applications. If you don't have such an app, nothing applies. If you do, then you have a choice of tools to use, and one of them is Kubernetes which offers a great foundation and set of features. There are other tools like Nomad, Chef or your own code and scripts - it doesn't matter what you use as long as you understand what you're doing.

Re: Will Kubernetes Collapse Under the Weight of Its Complexity?

#193
This is my personal experience on the matter as a DevOps consultant who periodically interviews in the traditional manner (as opposed to getting gigs from people that already worked with me).

Despite having 15+ years of *nix experience, including internals, having a track record of building large scalable infra and knowing a few different programming languages, what happened to me was this: I was getting filtered out because I didn't have Docker and Kubernetes and even (at one point) Cloudformation and/or Terraform. No problem - I learned those things (minus Kubernetes, so far) quite quickly. Much more quickly than the grueling trial-by-fire years of Unix administration. I like to know how things work, not just how to use them.

So if you wonder and worry about the state of enterprise IT some days, look no further than hiring managers themselves, who will pick a 25 year-old who writes YAML for some abstraction-of-an-abstraction system that does infrastructure under the hood, infrastructure that people kind of don't really try very hard to understand. After all, it's disposable thanks to infrastructure-as-code, right?

How do I know this? Well, I've seen shop after shop that's suffered a spaghetti infrastructure, using all the latest and greatest, from AWS and Kubernetes and Docker and other abstraction layers above AWS. And what happens is that it gets so complex that no one knows what's really going on, and at the very least two common symptoms arise: people are terrified during releases and they take hours, with many people on a call together very late at night; they spend a fortune on extra instances (in the case of AWS) because they haven't properly worked out environment separations (they had trouble keeping them the same, or one of many other problems).

A talented dev manager I used to work with used to complain that they had trouble hiring people who knew Javascript well, but they had expert after expert of some fancy JS framework try to interview, unable to answer the fundamentals-types of questions. I think it's similar with enterprise infrastructure.

I don't know what to say. I hope things go full swing and people who know how things work under the hood can charge consulting dollars for fixing the fuckups. It's not enough to know YAML, you also need to have wisdom in maintaining complex infrastructure, understand the delicate balance between change and stability, and be able to troubleshoot when it goes wrong WITHOUT just 'rinsing and repeating' where you learn absolutely no lessons at all.

[edit:] One theory for all of this. Some of the big shops (Google, FB, Netflix, etc.) did it right, and now everyone is trying to copy the style of infrastructure management, except doesn't have the talent or wisdom to do it well.

Re: Will Kubernetes Collapse Under the Weight of Its Complexity?

#194
post #128

Exactly what I'm always saying. It's also nearly impossible in an Enterprise IT environment to get Kubernetes working on your laptop. Minikube and Docker Edge both seem to fail way too often. As a developer one wants to spin up a system to work on, then work on it, then push results to some repo. And this loop simply isn't possible (yet?). Also what the author didn't mention is that even the vanilla k8s stuff is alre…

It's probably a bad idea to run a whole cluster on your laptop anyways. I never understood that practice. Just set up a server/mini-cluster and use that for development to host your ancillary services like RabbitMQ or whatever else you need. Then run the app you're actually developing, and only that, on your laptop.

Re: Will Kubernetes Collapse Under the Weight of Its Complexity?

#195
post #182
post #156

Earlier quoted context omitted.

You can buy hosted k8s, one click, and your cluster is ready. https://cloud.google.com/kubernetes-engine/

But that’s expensive. Plugging in numbers for my $1000 synology, which runs a half dozen dockers, a vm, and is off-site backed up (for $120/yr), it tells me that I’ll pay $135/month to run comparable kubernetes at google. Even if you pretend my $75/month broadband connection is only used by the synology, and include power costs, the synology still wins by $10’s/month. (I included 3TB of storage for kubernetes, and 6T…

Yeah, it is. But that wasn't the question. MS Office SaaS or Adobe Creative Cloud is expensive too. AWS/GCloud is already quite pricey as it is, and every cloudified thing they roll out is just a money pump for people who don't know better.

But if you want to roll your own, then you can, it's FOSS after all. kubeadm works very well.

Comparing Synology with anything Google is silly, but useful. You can rent dedicated machines easily. Leaseweb is nice. And then you can build your infrastructure for cheaper.

Re: Will Kubernetes Collapse Under the Weight of Its Complexity?

#196
post #187
post #154

Earlier quoted context omitted.

> It's also nearly impossible in an Enterprise IT environment to get Kubernetes working on your laptop. huh? What does that mean? Maybe that means the environment is broken, not the software you want to use/work on. > For instance, why should a developer even know what an ingress is and that it might be something he needs? Then probably that dev shouldn't work with k8s. At all. If the dev wants/needs a hello world on…

> > It's also nearly impossible in an Enterprise IT environment to get Kubernetes working on your laptop. > huh? What does that mean? Maybe that means the environment is broken, not the software you want to use/work on. That is what the word "Enterprise IT" means. If you ever work in a company that makes more than a million USD per year, you will find an imperfect network in a nearly unknown state, with proxies and f…

... but ... but ... no one really cares about that. k8s is targeted at startups who will do the sales dance with the big Enterprises and they'll do a SaaS that's backed by k8s managed infra. (Or the Enterprise will use k8s on their Linux servers. Maybe hosted on VMware, maybe on HyperV, maybe in Azure maybe at AWS.)

k8s is a project, a lot of people find it useful. A lot of big corps have IT R&D groups (basically all Fortune 500 have), and they have their own test network. Or they test on their own rack, or on their own cloud, or on their own AWS account.

I think I don't really understand what your belief with regards to k8s is, but I'm interested, so could you give some details?

Re: Will Kubernetes Collapse Under the Weight of Its Complexity?

#197
post #165

Earlier quoted context omitted.

I mean big companies that hire "AWS consultants" are big, slow, dumb, incompetent blobs of IT. And yes, there's a demand for these specific skills, because big inefficient companies are willing to pay for just this, because their in house people are usually overworked or simply not allowed to do it themselves without an expert on site (or on call, or on skype). And of course AWS is a big jungle of buzzwords itself, w…

Yeah, thanks for clarification. As a technical person I find myself a bit confused as I don't know if I should follow some buzz and try to make money in the short term of go deep and go for the long term. Will it pay off ? Of course I get more satisfaction in "feeling" a "deep" and "true" technical folk.

> money in the short term [or] go deep and go for the long term

I think these are never contradictory, at least I think software jobs allow for the flexibility to keep working on high-yield things while learning something for depth on the side. (Or vice-versa, if you live off your side job, and do/learn something deeper/longterm.)

Especially with network, virtualization, security, distributed systems (DB, storage), etc. the ideas that are trendy now are spin-offs of older things. (Docker is basically LXC with a sane UI/UX, which is just chroot done better, a'la BSD jails, which is just Solaris zones, which is just IBM mainframe partition shit. Similarly everything on the network, like overlay networking, VXLAN, Geneve, OpenFlow, etc. are just natural layering abstractions and applied trade offs that were considered silly a decade ago, or were simply not needed a decade ago. Now that north-south traffic is dwarfed by east-west traffic in every system [this means that north is the client, south is your "DB", and east-west just means services in your system, and since people nowadays use a lot more complicated systems, the inter-component = intra-system communication is huge, compared to the few MBs sent to the client].)

Re: Will Kubernetes Collapse Under the Weight of Its Complexity?

#198

Microsoft Word is also incredibly complex software with decades of development and features, and yet it's just a word processor. Everyone uses a small subset of the actual functionality which is why the entire system can be complex and simple at the same time, depending on your needs. It's exactly the same with Kubernetes. It's just clustering software that ties multiple servers together to give you an PaaS-like work…

When things go wrong in Word, there's no need (or potential) to dig into the underlying code for analysis.

...Ok? I don't see the point though.

Re: Will Kubernetes Collapse Under the Weight of Its Complexity?

#199
post #79

This whole image, to me, represents a big problem with software engineering today: https://twitter.com/dankohn1/status/989956137603747840 The industry is full of engineers who are experts in weirdly named "technologies" (which are really just products and libraries) but have no idea how the actual technologies (e.g. TCP/IP, file systems, memory hierarchy etc.) work. I don't know what to think when I meet engineers wh…

As someone that has stared at a number of those projects, at this point I'm pretty excited that there are a number of different alternatives which tweak different knobs in the solution space of the problem. I think in the next few years you'll see a winnowing of choices in each category, and problem bundling of the top tier choices into an effective PaaS solution.

Kube is very clearly in the expansion phase of its lifecycle but I doubt it will stay this way over the long run.

Additionally, I think the fact that the overall categories are pretty well chosen is a sign of how decently understood the macro problems are and that there's a good reason to hope that you'll end in a place with 1-2 dominant players in each.

Re: Will Kubernetes Collapse Under the Weight of Its Complexity?

#200

Heroku / Cloud Foundry offer exactly what the author points towards: a very simple user interface for developers. InfluxDB will of course needs stateful applications so it's not a good use case for them. The Cloud Foundry community has started exploring a switch from their own container management system to K8s. If that becomes real, CF would "just" become a nice user interface on top of k8s. The right move imho.

The cloudfoundry-incubator/eirini project is where the CF+K8s scheduler work is going on.

Related to this, SUSE and IBM have already released distributions of CF that run on Kubernetes.

I'm biased (I work on one of these) but I really think this is the most expedient way to enable PaaS features on K8s.

Post reply on HN