Live data from Hacker News

Talos: OS for Kubernetes

talos-systems.com

41–50 of 79 posts

Re: Talos: OS for Kubernetes

#41
post #3

Security wise sounds a bit light. I like the idea but I'd be more comfortable with a more security-first approach instead of "we are infra people" as we know how that usually ends. I'll be following the project closely as I think the idea is good.

I think you might be pleasantly surprised about our approach to security. Security is very machine a priority and built into the OS.

That's great! Keen to see your threat model and architecture.

Re: Talos: OS for Kubernetes

#42

Hey folks, Talos creator here. Happy to answer any questions you guys may have. Sounds like some confusion about exactly what Talos is. A lot of good feedback here that we will take and improve our documentation. Talos is a Linux distribution built specifically for Kubernetes. The short version is that we have stripped out absolutely everything that is not required to make a machine a Kubernetes node, including SSH a…

One thing which I would need to switch from CoreOS to Talos is GPU drivers. My current setup uses the NVIDIA driver containers:

https://hub.docker.com/r/nvidia/driver

I build slightly customized images using a process derived from the one in the NVIDIA repo:

https://gitlab.com/nvidia/container-images/driver/blob/maste... https://gitlab.com/nvidia/container-images/driver/blob/maste...

The automation here is predicated on CoreOS distributing matching { kernel, headers, toolchain } artifacts for each release, and in particular how specific OS releases get promoted from the alpha -> beta -> stable channels without modification. This lets me build new drivers automatically for each alpha release, validate the drivers on the beta channel, and have no surprises on the stable channel. Does Talos intend to do something similar?

Re: Talos: OS for Kubernetes

#43

Hey folks, Talos creator here. Happy to answer any questions you guys may have. Sounds like some confusion about exactly what Talos is. A lot of good feedback here that we will take and improve our documentation. Talos is a Linux distribution built specifically for Kubernetes. The short version is that we have stripped out absolutely everything that is not required to make a machine a Kubernetes node, including SSH a…

Generally seems like a great offering! I see immutable, but also upgradable? Is that via in-place upgrades or do upgrades require a reboot? Example: severe bug or vulnerability in kubelet or containerd/docker. Can I use the API to roll out a fix to existing nodes such that running workloads have no disruption?

The whole point of Kubernetes is that you don't think this way. Replacing a node is not an impactful event if you're using K8S correctly.

Re: Talos: OS for Kubernetes

#44

So this is more like terraform, just automatic. This is basically an implementation of the cluster API sig (which is also being promoted by VMWARE).

We indeed integrate with CAPI, but the OS itself is not a CAPI implementation. We have a CAPI provider that works hand-in-hand with the OS.

Yes, I read the code.

I am not sure that you want to call it an OS per se, since kubernetes itself is the OS (manage memory, schedule processes, etc).

So there is no default CAPI provider?

Re: Talos: OS for Kubernetes

#45

Hey folks, Talos creator here. Happy to answer any questions you guys may have. Sounds like some confusion about exactly what Talos is. A lot of good feedback here that we will take and improve our documentation. Talos is a Linux distribution built specifically for Kubernetes. The short version is that we have stripped out absolutely everything that is not required to make a machine a Kubernetes node, including SSH a…

One thing which I would need to switch from CoreOS to Talos is GPU drivers. My current setup uses the NVIDIA driver containers: https://hub.docker.com/r/nvidia/driver I build slightly customized images using a process derived from the one in the NVIDIA repo: https://gitlab.com/nvidia/container-images/driver/blob/maste... https://gitlab.com/nvidia/container-images/driver/blob/maste... The automation here is predicated…

Yes we do. I personally am working on the channel based approach for our 0.3 release that we just started developing. I would love it if you could make a meeting some time soon to chat some more. User feedback will be really help.

Since Talos is built entirely in containers and we control the entire toolchain, I believe you could achieve the same with Talos.

Re: Talos: OS for Kubernetes

#46

Hey folks, Talos creator here. Happy to answer any questions you guys may have. Sounds like some confusion about exactly what Talos is. A lot of good feedback here that we will take and improve our documentation. Talos is a Linux distribution built specifically for Kubernetes. The short version is that we have stripped out absolutely everything that is not required to make a machine a Kubernetes node, including SSH a…

Generally seems like a great offering! I see immutable, but also upgradable? Is that via in-place upgrades or do upgrades require a reboot? Example: severe bug or vulnerability in kubelet or containerd/docker. Can I use the API to roll out a fix to existing nodes such that running workloads have no disruption?

We are taking two approaches to this. The first is that you could roll out a replacement node and shutdown the old one. In bare metal scenarios this is much harder so we implemented in place upgrades, but they work very similar to creating a new node. Since Talos is immutable and runs from RAM, an in place upgrade consists of shutting down all services, and then wiping the disk and performing a fresh install. We then reboot the node and its as if you wiped the machine clean and installed the new version of Talos from the get go. This is all via the API by the way.

Re: Talos: OS for Kubernetes

#47
post #43

Earlier quoted context omitted.

Generally seems like a great offering! I see immutable, but also upgradable? Is that via in-place upgrades or do upgrades require a reboot? Example: severe bug or vulnerability in kubelet or containerd/docker. Can I use the API to roll out a fix to existing nodes such that running workloads have no disruption?

The whole point of Kubernetes is that you don't think this way. Replacing a node is not an impactful event if you're using K8S correctly.

I agree with this to an extent. There are certainly places where replacing can be expensive. For example, bare metal, or if the machine contains a large amount of data and moving that data to a new node is time consuming.

Re: Talos: OS for Kubernetes

#48

Hey folks, Talos creator here. Happy to answer any questions you guys may have. Sounds like some confusion about exactly what Talos is. A lot of good feedback here that we will take and improve our documentation. Talos is a Linux distribution built specifically for Kubernetes. The short version is that we have stripped out absolutely everything that is not required to make a machine a Kubernetes node, including SSH a…

1) So how do you support storage volumes? Can you mount for example EBS into a container.

2) What about GPU? Can you support the nividia gpu containers?

Re: Talos: OS for Kubernetes

#49

Earlier quoted context omitted.

We indeed integrate with CAPI, but the OS itself is not a CAPI implementation. We have a CAPI provider that works hand-in-hand with the OS.

Yes, I read the code. I am not sure that you want to call it an OS per se, since kubernetes itself is the OS (manage memory, schedule processes, etc). So there is no default CAPI provider?

We have our provider here: https://github.com/talos-systems/cluster-api-provider-talos

Perhaps OS isn't the right thing to call, but I don't know a better alternative :D

Re: Talos: OS for Kubernetes

#50

Hey folks, Talos creator here. Happy to answer any questions you guys may have. Sounds like some confusion about exactly what Talos is. A lot of good feedback here that we will take and improve our documentation. Talos is a Linux distribution built specifically for Kubernetes. The short version is that we have stripped out absolutely everything that is not required to make a machine a Kubernetes node, including SSH a…

1) So how do you support storage volumes? Can you mount for example EBS into a container. 2) What about GPU? Can you support the nividia gpu containers?

We do support storage volumes. A recent change in Rook seems to have broken how it works with Talos, but we know storage is important and we are working on fixes. We would love to land support for Nvidia GPU containers. Your not the first to ask for GPU support, so I'm certain we will be taking a closer look at that.
Post reply on HN