Hacker News new | ask | show | jobs
by tthisk 2561 days ago
In my opinion many of these issues with Kubernetes arise because it is not the right abstraction for application developers. You are forced to think about too many low level details to get a stable application running.

Many companies forget that they are incharge of getting way more intricate details of the application runtime right when they shift their application to Kubernetes.

In some of my recent experience I have seen a company shift an application from app engine to Kubernetes. However they forgot that appengine is using an optimized jvm to run your application. When they deployed to Kubernetes their app grinded to a halt. They forgot about all the observability that comes out of the box in app engine, thus resulting in an unobservable badly performing application.

Hopefully more domain specific runtimes build on top of Kubernetes can help application developers deploy to a kubernetes cluster in a sane way. I am putting some of my money on knative, however it is still quite hard to convince clients to invest in this area.

2 comments

Not sure what any of this means.

Kubernetes does not prevent you from using an optimized JVM to run your application. In fact it doesn't even involve itself at that level rather it focuses just on managing containers which can have anything inside them.

And Kubernetes actually has far more observability than most distributed applications since you can get plugins which trace/monitor every connection between containers as well as monitor the health of each container.

I think what you're after is a PaaS on top of Kubernetes ? Well there are many of those around as well.

Yes, you can get a bunch of pieces that need a team to evaluate and operate. You are saying the same thing and somehow making it a disagreement?
What do you mean by "observability"?
Generally, things that answer questions along the lines of:

* is my app running * how long for? * if there are associated jobs/worker processes, did they start/complete successfully and how long did they run for * what’s the state of the pod(s) + host instanced my application is running on. * are all the necessary sub components up and running and communicating properly (and are they staying up).

It’s not quite monitoring/logging, although they are related.