写点什么

Talos Linux:为 Kubernetes 操作带来不可变性和安全性

作者:Tim Anderson

  • 2025-10-21
    北京
  • 本文字数:1856 字

    阅读完需:约 6 分钟

大小:912.14K时长:05:11
Talos Linux:为Kubernetes操作带来不可变性和安全性

Sidero Labs一直在开发Talos Linux,这是一款专为运行 Kubernetes 而设计的不可变操作系统,同时他们还开发了集群生命周期管理平台Omni。InfoQ 在 2025 年TalosCon大会期间于阿姆斯特丹采访了 Sidero 团队,并探讨了他们如何通过极简主义和安全优先的设计理念来简化 Kubernetes 操作工作。

 

Talos 的理念源于对企业环境中传统操作系统的实际不满。在与大型企业合作的过程中,团队遭遇了为了证明系统安全性而必须经历的冗长年度审计流程。这段经历促使他们得出一个根本性认识:若核心目标是运行 Kubernetes,为什么团队需要管理整个操作系统的复杂性?

团队阐述了他们的理念:

 

该团队解释了他们的理念:

 

我们基本上就是想到了一个想法,那就是当我们想要做的只是运行 Kubernetes 时,我们根本就不应该关心操作系统。不可变的想法就是从这里来的,能够改变的东西越少,出错的可能性就越小。

 

Talos 采取了一种激进的方法来实现这个目标:剥离 Linux 内核上的所有东西,用Go编写用户空间,只实现足够的功能来运行kubelet。从操作的角度来看,这意味着当 Talos 启动并开始运行时,它就会继续运行,不会出现传统操作系统可能发生的意外故障。

 

尽管 Talos 采用了极简主义的设计,但它通过战略性的架构决策保持了灵活性,团队强调他们致力于提供纯上游 Kubernetes,并在每个版本上进行全面的一致性测试。虽然 Talos 对如何在底层部署 Kubernetes 做出了固执己见的决定,但用户仍然可以完全控制他们的 Kubernetes 集群。系统扩展允许用户构建支持特定硬件要求的定制版 Talos,而不会影响核心不可变设计,确保用户不会受限于缺乏必要驱动程序的僵化操作系统。

 

在谈到该战略时,Sidero 的管理团队表示,产品的战略主要围绕两个互补的产品:

 

我们的目标是继续扩大对不同类型硬件的支持,并继续加强 Talos。

 

该团队还概述了 Omni 在未来 12 个月的发展方向,特别关注基础设施供应商。目前,裸机、KubevirtOxide都有配置程序,目的是消除集群配置工作流程中对Terraform等单独工具的需求。我们的愿景是实现 Omni 的直接 VM 配置,然后是自动 Talos 部署和集群形成,在通常无法实现这种简单性的环境中创建团队所说的类似云的体验。

 

Talos 在零售、工厂自动化和机器人领域的边缘计算中得到了广泛采用,促使团队探索一种基于设备的模型,该模型可以提供经过认证的硬件,具有针对边缘部署优化的单节点、可调度的 Kubernetes 环境。这些用例——从运行销售点和库存系统的杂货店,到运营网络亭的赌场和管理分布式边缘节点的运输系统——共享共同的架构模式,其中边缘设备向中心化的 Kubernetes 集群报告,这些集群与数据中心通信,以实现跨环境的无缝协调。该平台支持特定于边缘的功能,包括安全可信引导、现场数据加固和通过 Omni 集中管理。它的安全态势包括每个构建的完整的软件材料清单(SBOM)集成、已签名的提交、完全可重现的构建,以及与 CIS 基准和 SELinux 执行的一致性。这些措施有利于 Talos 遵守欧盟网络弹性法案(Cyber Resilience Act)等新兴法规。

 

Sidero 通过一种独特的自下而上的策略建立了它的社区,在这个策略中,爱好者们首先发现用于个人家庭实验室项目的 Talos,逐渐发展出深入的专业知识,然后在他们的专业组织中支持它的采用——这种模式非常成功,以至于该公司雇佣了展示卓越平台知识的社区成员。该团队仍然致力于为业余爱好用户和家庭实验室爱好者提供出色的体验,理解企业采用通常来自公司内部的个人倡导。当他们继续这种基层方法的同时,他们现在也在追求直接的企业拓展,预计这两种策略会自然地融合在一起,因为企业会发现他们现有的员工中已经有了 Talos 专家。

 

Talos 进入了一个不断增长的不可变的、容器优化的操作系统领域,包括 AWS 的BottlerocketFlatcar Linux,但通过其对 Kubernetes 的单一关注占据了独特的地位。虽然 Flatcar Linux 保留了 SSH 访问,并允许运行时修改,如动态加载内核模块,但 Bottlerocket 支持多种协调器,包括EKSECS,拥有超过 250 个二进制文件。Talos 追求激进的极简主义,只有 12 个二进制文件,并完全移除了SSH,以 API 驱动的管理取而代之。Bottlerocket 以 AWS 为中心的方法和针对不同环境的多个“变体”与 Talos 的设计形成对比,后者旨在在任何运行 Kubernetes 的地方运行,使用可组合的系统扩展,这些扩展在添加必要能力的同时保持不变性。

 

这些差异反映了根本不同的设计理念:Flatcar 旨在通过熟悉的管理模式实现容器优化,Bottlerocket 针对云原生容器编排提供广泛的工作负载支持,而 Talos 则通过专注于 Kubernetes 来追求最大程度的简化。

 

原文链接:

https://www.infoq.com/news/2025/10/talos-linux-kubernetes/

2025-10-21 13:004472

评论

发布
暂无评论

这段时间学习机器学习的感受

Nydia

备战春招/秋招,开源社区系统 Echo,基于目前主流 Java Web 技术栈,并提供详细的开发文档和配套教程

飞天小牛肉

Java 开源 后端 springboot 2月春节不断更

翻译:《实用的Python编程》01_02_Hello_world

codists

Python

【STM32】5分钟了解STM32的串口通信

AXYZdong

硬件 stm32 2月春节不断更

书画装裱物料与选择参考

boshi

业余爱好 七日更

机器学习·笔记之:

Nydia

8. ㊙ Python 集合三板斧,滚雪球学 Python

梦想橡皮擦

Python 2月春节不断更 python入门

gradle中的build script详解

程序那些事

maven Gradle 程序那些事 构建脚本 构建程序

性能压测的时候,随着并发压力的增加,系统响应时间和吞吐量如何变化,为什么?

跳蚤

日记 2021年2月13日(周六)

Changing Lin

2月春节不断更

为您收录的操作系统系列 - 进程管理(加餐)

鲁米

线程 进程 同步 生产者与消费者

职场心得

时间是一个人最好的证明

职场

第四周笔记

Ashley.

还傻傻分不清楚equals和==的区别吗?看完就明白了

codevald

Java 源码分析 string Object

熬夜总结了 “HTML5画布” 的知识点(共10条)

我是哪吒

学习 读书笔记 程序员 随笔杂谈 2月春节不断更

LeetCode 数据库刷题 - 596. 超过5名学生的课

小马哥

七日更 二月春节不断更

手摸手Go 深入剖析sync.Pool

Leo叔叔

Go Concurrency Patterns sync.pool Go 语言

前端冲刺必备指南-this/call/apply/bind(万字长文)

我是哪吒

学习 程序员 面试 大前端 2月春节不断更

LeetCode 数据库刷题 - 1179. 重新格式化部门表

小马哥

七日更 二月春节不断更

写一个用例(第四周)

mas

Elasticsearch Mapping Overview

escray

elastic 七日更 死磕Elasticsearch 60天通过Elastic认证考试 2月春节不断更

并发编程系列:线上问题定位

程序员架构进阶

Java 并发 问题排查 七日更 2月春节不断更

写一个用例(总结)第四周

mas

聊聊金钱

熊斌

2月春节不断更

千行百业中的我们,数字山河间的中国速度

脑极体

浅谈性能优化

跳蚤

《我们脑中挥之不去的问题》- 卓克科普(1)

石云升

读书笔记 科普 2月春节不断更

并发编程系列:阻塞队列的实现原理

程序员架构进阶

jdk 阻塞队列 七日更 28天写作 2月春节不断更

Elasticsearch query string 分词

escray

elastic 七日更 死磕Elasticsearch 60天通过Elastic认证考试 2月春节不断更

第四周作业

Ashley.

【LeetCode】找到所有数组中消失的数字Java题解

Albert

算法 LeetCode 2月春节不断更

Talos Linux:为Kubernetes操作带来不可变性和安全性_后端_InfoQ精选文章