Live data from Hacker News

Ask HN: If Kubernetes is the solution, why are there so many DevOps jobs?

news.ycombinator.com

51–60 of 433 posts

Re: Ask HN: If Kubernetes is the solution, why are there so many DevOps jobs?

#51
Kubernetes is, amongst other things, a technical solution to the billing problem. Composable resources with unit costs permit organizations to charge profitably for such resources. There are also some advantages for organizations who need to purchase such resources, giving some clarity to the process.

Re: Ask HN: If Kubernetes is the solution, why are there so many DevOps jobs?

#52
post #38

Kubernetes is a Google scale solution. Lots of teams said “hey if Google does it then it must be good!”…but forgot that they didn’t have the scale. It caught on so much that for whatever reason it’s now the horrendous default. I’ve worked on at least 3 consulting projects that incorporated K8s and it slowed everything down and took way too much time, and we got nothing in return - because those projects only needed s…

Asking as someone who has only tipped his toes into devops lately and is looking to learn K8, what is considered a reasonable "lightweight" alternative to Kubernetes these days?

If you are on AWS you should check out ECS Fargate (serverless). It is really really good. Probably one of their more polished products.

If you want to stay on the Kubernetes route check out k3s. Super easy to setup and usable for small production workloads

Re: Ask HN: If Kubernetes is the solution, why are there so many DevOps jobs?

#54
When compared to a Linode VPS box that you provision and setup with Ansible yes, it's much more work (and much more cryptic at that) but also Kubernetes covers for a lot of failure scenarios that a simple Linux box would not be able to cope with while adding many other benefits.

The question is: do _you_ need this added complexity? That humble VPS can scale _a lot_ too.

Re: Ask HN: If Kubernetes is the solution, why are there so many DevOps jobs?

#55
post #39
post #26

Earlier quoted context omitted.

> Have you ever tried setting up a Kubernetes cluster and deploying apps in it? Kubernetes doesn't save work This is wrong, deploying on Kubernetes is easy and quick for most apps, you have one docker image one deployment spec and that's it. https://kubernetes.io/docs/concepts/workloads/controllers/de...

Still need to maintain the cluster though, and boy does it require some fun maintenance. Kubernetes is more than just a distributed docker image scheduler, you also need to install and maintain basic dependencies like the pod networking implementation (a whole virtual IP space!!), DNS, loadbalancing, persistent volumes, monitoring, etc etc. Maybe your cloud provider sets it all up for you, but you're not going to esc…

  > the pod networking implementation (a whole virtual IP space!!)
That part, at least, can be made simple: https://john-millikin.com/stateless-kubernetes-overlay-netwo...

  > DNS, loadbalancing, persistent volumes, monitoring, etc etc
None of that is part of Kubernetes, and you'll need it (or not) regardless of how you choose to handle process scheduling.

There's a sort of common idea that a "Kubernetes cluster" is an entire self-contained PaaS, and that (for example) monitoring in Kubernetes is somehow fundamentally different from what came before. It's easy to fall into the trap of creating an internal clone of Heroku, but Kubernetes itself doesn't require you to do so and it can be a lot faster to just run Nagios (etc).

Re: Ask HN: If Kubernetes is the solution, why are there so many DevOps jobs?

#56

The premise of your question is invalid. Have you ever tried setting up a Kubernetes cluster and deploying apps in it? Kubernetes doesn't save work, it adds work. In return, you get a lot of benefits, but it wasn't designed to reduce human work, nor was it designed to eliminate devops jobs. It was designed for scalability and availability more than anything. Most people using Kubernetes should be using something simp…

I mean, obviously it was designed to reduce human work. A tool that adds work wouldn't be very useful, would it?

I think the selling point here is getting k8s' benefits using other tools would result in more work than k8s

Re: Ask HN: If Kubernetes is the solution, why are there so many DevOps jobs?

#57
Kubernetes can really help bringing more scalability.

All you need is to rewrite your application (think microservices), reduce cold latency (get rid of anything VM based such as Java, or rewrite in Spring or Quarkus), use asynchronous RPC, and decouple compute and storage.

Then you need an elastic platform, for instance Kubernetes, with all the glue around such as Istio, and Prometheus, and Fluentd, and Grafana, Jaeger, Harbor, Jenkins, maybe Vault and Spinnaker.

Then you can finally have your production finely elastic, which 90% of companies do not need. Microservices are less performant, costlier, and harder to develop than n-tiers applications and monoliths, and way harder to debug. They're just better at handling surges and fast scaling.

If what you want is:

- automated, predictable deployments

- stateless, declarative workloads

- something easy to scale

Then Docker Compose and Terraform is all you need.

If you also need orchestration and containers are your goal, then first try Docker Swarm. If you need to orchestrate various loads and containers are a mean and not a goal, then try Nomad.

Finally, if you will need most resources Kubernetes has to offer (kubectl api-resources), then yes, opt for it. Few companies actually have a need for the whole package, yet they have to support its full operational cost.

Most companies just pile up layers, then add yet a few more (Java VMs on top of containers on top of an orchestrator on top of x86 VMs on top of(...)), and barely notice the miserable efficiency of the whole stack. Well it's using Kubernetes, it's now "modernized".

Re: Ask HN: If Kubernetes is the solution, why are there so many DevOps jobs?

#58

The premise of your question is invalid. Have you ever tried setting up a Kubernetes cluster and deploying apps in it? Kubernetes doesn't save work, it adds work. In return, you get a lot of benefits, but it wasn't designed to reduce human work, nor was it designed to eliminate devops jobs. It was designed for scalability and availability more than anything. Most people using Kubernetes should be using something simp…

I mean, obviously it was designed to reduce human work. A tool that adds work wouldn't be very useful, would it?

It reduces work, but imposes a high setup and operating cost. Once you get to the right scale then all the economics look correct. Large teams and organizations and absorb that cost more easily than many who are attempting to use k8s. Of course, being open source, anyone can try k8s, but the mileage is going to vary.

Re: Ask HN: If Kubernetes is the solution, why are there so many DevOps jobs?

#59

The premise of your question is invalid. Have you ever tried setting up a Kubernetes cluster and deploying apps in it? Kubernetes doesn't save work, it adds work. In return, you get a lot of benefits, but it wasn't designed to reduce human work, nor was it designed to eliminate devops jobs. It was designed for scalability and availability more than anything. Most people using Kubernetes should be using something simp…

I mean, obviously it was designed to reduce human work. A tool that adds work wouldn't be very useful, would it?

> A tool that adds work wouldn't be very useful, would it?

Sure could, if it provides benefits that outweight the additional work. Insurance companies will happily pay a couple more IT-specialists if it reduces the amount of cases they have to cover by an arbitrary percentage. Tools very much can serve other purposes than reducing the friction of human attention.

If you can containerize your infra and thereby mitigate threat vectors that may put your entire enterprise at risk if exploited, that's a good business call to make, even if the cost of your IT-department gets inflated by some margin.

Re: Ask HN: If Kubernetes is the solution, why are there so many DevOps jobs?

#60
Kubernetes is raw material, like concrete and lumber. It needs to be massaged/crafted/assembled into something that fits the use case. A 'devops' engineer would leverage Kube to build a system, the same way a builder/contractor would leverage raw materials, subcontractors, off the shelf components, etc to build a home or office.
Post reply on HN