Hacker News new | ask | show | jobs
by interlocutor 2332 days ago
> kubernetes is complex and maybe not for all of us

Couldn't disagree more. Kubernetes is extremely easy. I work mostly in frontend, and despise devops. Or used to. Until Kubernetes came along I had no way of easily creating a load-balanced scalable service.

First learn Docker. This is independent of Kubernetes. Docker is awesome in and of itself. In Azure you can deploy web sites as docker images and there are tremendous advantages to that over traditional deployment. Once you have learned Docker you are ready to learn Kubernetes.

If your app consists of multiple microservices then you have more than one docker container. This is where Kubernetes is helpful. Kubernetes has built-in DNS, so your microservices can contact each other using DNS names.

Learn how to deploy containers as Kubernetes ReplicaSets. Then learn how to add a Kubernetes Service on top of it, then learn how to add Ingress. None of this is hard.

Kubernetes is a pleasure to use, because of commands such as "kubectl exec" to log into the container, "kubectl log" to see the log without logging into the container, "kubectl cp" to copy files in and out, "kubectl port-forward" to make a service appear to be running on your devbox and so on.

2 comments

I would not say Kubernetes is extremely easy. Running kubectl commands is easy. Setting up and building a cluster from scratch is not easy. You may have had an easier time, but I wouldn't label the whole process as easy.
You don't have to set up your own cluster if you use Azure or Google cloud. AWS charges for cluster management, but Azure and Google don't.
That means it isn't easy though. If you are piggybacking on someone else doing 90% of the work then you can only call their service including it easy, not the tech itself.
So compared to docker-compose (which is strangely straightforward, but missing some pieces you'd want for scalable deployments) Kubernetes is more complicated. Or at least getting up to speed takes a fair bit longer.