← Back to context

Comment by playorizaya

6 days ago

Considering what kubernetes actually is - there's a fantastic use case if you really did port it to the browser. So when someone says they did it, I kinda expect that they literally ported that containerization logic to JavaScript.

That would mean I could run an image of an OS like Linux in browser JavaScript. It's a wild thing, but that's what porting literally means! And what I expected with that title.

Think of like a PlayStation emulator... the game itself does not need to be ported - just as if you really made a k8s port you would not really need to reinvent Linux in JS, only be able to run it

A PSX emulator can be said to have been ported (e.g. Tomb Raider has been ported to the browser even though it relies on underlying C++) because it ultimately runs fully 1:1 in a web page. It's a port as far as I'm concerned.

But a k8s port that doesn't do what k8s does isn't a port IMO

But Kubernetes isn't postgres or ruby or containers. It's the orchestration service. Your comparison doesn't make sense.

  • It’s like saying you ported PlayStation to the browser but no games work.

    It would be the most pointless emulator ever.

    And it wouldn’t qualify as being ported IMO

    • Separately from any details of this post, I think you misunderstand what kubernetes is. To me, that's something worth reading and thinking about.

      You seem to think it's like a virtual machine, and it lets you run containers anywhere regardless of operating system or host machine. This is not correct. You can't run containers using k8s directly on a Mac, for example, because there is no Linux kernel to run the container. You need a VM first, then you can run k8s inside of that VM. Kubernetes does not let you magically run a container with ARM binaries on an x86 machine either. You would need additional tools to run binaries for another architecture.

      You're totally right that in practice, you usually don't need to think about the host OS when you're using k8s. It is nice to not worry about what packages it has installed, etc. But it is not a tool that allows you to run an arbitrary container anywhere.

      1 reply →

Sorry to be blunt but from the messages you have written in this threads it is pretty clear you don't know well enough what you are talking about.A real working Kubernetes cluster has many layers of abstractions and the lower ones are outside Kubernetes completely (i.e. containerd or the Linux kernel itself).

  • Save the insults. Make points.

    mAnY lAyERs aside if it doesn’t actually do anything you have not ported anything.

    It has to WORK to be a port.

    See the PlayStation emulator example - same thing. The game itself is not ported but it still runs. That’s the point!

    • > Make points. mAnY lAyERs aside if it doesn’t actually do anything you have not ported anything.

      You might consider reflecting on this long thread which seems to be solely about your personal definition of the word "port", and arguing with others that the definition should be what you say.

      Particularly because you're now stooping to insulting other HN posters over one technical definition of one word.

      3 replies →

    • It is porting, and I quote the post

      > A partial port of Kubernetes’ “kubelet” binary, enough to run pods and probe them.

      > Ports of several Kubernetes “controllers”: pod scheduler, namespace controller, kube-proxy, deployment controller, and a few more.

      plus a re-implementation of the CNI and a container runtime.

      1 reply →