放弃Scientific Linux是个错误

最近的一例CERN公告引起了我的注意。到2026年底,预计CERN加速器综合体内有超过2200台工业计算机和嵌入式系统运行Debian 13。

CERN并未放弃红帽生态系统。AlmaLinux和RHEL仍然是组织大部分部门主要支持的Linux发行版;Debian支持目前仅限于加速器前端系统。

不过,这次搬迁让我回想起十多年前做出的一个决定:CERN 和费米实验室逐步放弃 Scientific Linux。事后看来,我认为这是一个错误。

这并不是因为Scientific Linux在技术上优于CentOS,或者维护另一个Linux发行版是免费的。也不是因为CERN或Fermilab能够控制Red Hat或IBM后来的选择。

错误在于将Scientific Linux主要当作重复的工程工作。它是基础设施。

Scientific Linux 正在解决的问题

科学Linux起源于高能物理中的一个实际问题。大型实验跨越实验室、大学、计算中心和国家。如果一个网站基于一个版本构建glibc,另一个用的是稍微不同的方式,第三个则运行完全不同的包装环境,情况很快就会变得很痛苦。

科学界还需要一种不同寻常的组合:一个能够多年稳定、能与企业软件合作、可自由重新分发、并且无需为每台机器申请商业许可的 Linux 发行版。

Red Hat Enterprise Linux提供了稳定性和长生命周期,Red Hat发布了重建所需的源代码。Scientific Linux将该源代码转变为社区资源。

Fermilab于2003年宣布了该发行版,CERN随后加入。它最终远远超出这两个实验室。大学、研究机构、实验、公司,甚至国际空间站上的系统都使用它或由此衍生的发行版。

Scientific Linux从来不是“换了个壁纸的RHEL”。它为科学界提供了一个机构独立的Enterprise Linux平台实现。

然后CentOS看起来是最明显的答案

当红帽和CentOS在2014年联手时,转向CentOS看起来完全合理。CentOS已经提供了许多科学Linux用户想要的:一个免费可用的企业Linux重建,并由更大的通用社区支持。

CERN开始将下一个重大版本从Scientific Linux CERN迁移到CERN CentOS 7。Scientific Linux 5和6依然受到支持,但CERN未来的平台将基于CentOS。

这一理由令人信服。既然CentOS已经在做基本相同的工作,为什么CERN和Fermilab还要花有限的工程时间重建Linux发行版?

既然科学界可以集中到更大的共同平台,为什么还要维持专门针对HEP的发行版?如果红帽本身支持CentOS项目,这似乎让平台更可持续,而非更不可持续。

2019年,费米实验室将这一论点推向了逻辑终点——或者说是字面上的“终结”。科学Linux 8将不存在。费米实验室将部署CentOS 8,并与CERN及其他实验室合作,改进CentOS以适应高能物理。

单独来看,这并非一个不理性的决定。但它剥夺了一个在电子表格上难以察觉的东西:一个可信的退出。

一个分布具有期权价值

我觉得我们低估了这一点。

维护Scientific Linux的成本显而易见。人们必须重建软件包、测试更新、维护仓库、发布版本、处理安全更新并支持用户。

独立发行版的好处更难量化。只要CentOS完全按照CERN和费米实验室的预期表现,Scientific Linux就显得冗余。这就是冗余在尚未出现故障时的样子。

Scientific Linux为科学界提供了兼容RHEL的计算环境实现。更重要的是,它保持了维护该环境所需的人员、流程、基础设施和机构知识的活力。

这种能力具有期权价值。你今年甚至十年内可能不需要行使该期权。当你主要平台的假设发生变化时,它才变得有价值。这些假设变化出乎意料地快。

[!注] CERN 用类似的论点为 FCC 辩护:制造大型机器如加速器和探测器所需的知识是宝贵的,必须被保留。如果欧洲不在大型强子对撞机之后建造下一台机器,这项专业知识可能会丧失,下一台大型机器可能在中国制造,欧洲也可能失去其在该领域的技术领导地位。同样的论点也适用于软件基础设施。

CentOS的假设并未持续太久

2020年12月,红帽改变了CentOS的角色。

CentOS Linux——传统的RHEL版本的下游重建——被取消,取而代之的是位于RHEL之前而非后面的CentOS Stream。这不仅仅是发布节奏的变化。

组织之所以采用 CentOS 标准化,是因为他们希望获得一个可自由分发的 RHEL 版本的近似版本。他们所标准化的产品实际上已经不复存在。

CERN和费米实验室立即不得不重新考虑他们的Linux策略。CERN指出,较短的CentOS Stream生命周期与某些科学用例不兼容。实验室评估了Stream、RHEL许可安排以及新兴的企业Linux重建方案。

到2022年,CERN和费米实验室推荐AlmaLinux作为实验的标准发行版。

这种循环性很难忽视。

Scientific Linux 之所以被淘汰,部分原因是在 CentOS 存在期间,维护另一场 RHEL 重建似乎没有必要。几年后,社区再次需要一个独立的 RHEL 兼容发行版,于是 CERN 和 Fermilab 采用了另一个独立治理的 RHEL 兼容发行版。

AlmaLinux 是一个不错的项目。这并不是对它的批评。这个要求从未消失;只有我们的实现方式消失了。

然后地面又动了起来

2023年,Red Hat改变了RHEL相关源的公开分发方式。CentOS Stream成为该源材料的唯一公共仓库,取代了之前的资源库git.centos.org出版模式。

尽管有时有人这样描述这一变化,但这并不意味着RHEL是“闭源”的。这种描述并不准确。但它让企业Linux重建生态系统的依赖结构更加明显。

到那时,教训应该已经很熟悉:与上游产品的技术兼容性并不等同于独立于控制该产品的组织。

科学Linux具有战略价值,但从未被充分考虑。它的存在意味着CERN、费米实验室及其他机构不仅仅是生态系统的消费者。它们可以共同复制生态系统中关键的一部分。

一旦放弃,这种能力比保持存活更难。

现在CERN正在将加速器综合体的一部分迁移到Debian

最新的篇章让这段历史变得尤为有趣。CERN的加速器控制组最初试图留在红帽生态系统内。根据2026年温特图尔MiniDebConf的演示,最初的计划涉及CentOS Stream,Debian作为备选方案,正如演讲者所说,他们无法承受新的惊喜。

随后出现了更为物理化的问题。RHEL 9 提高了x86-64基线到x86-64-v2.RHEL 10 迁移至x86-64-v3.

更换旧硬件可能不便,但对于普通服务器群来说是可控的。加速器控制不是普通服务器群。

这些计算机与定制电子设备、专用电路板、遗留总线、实时系统以及安装在庞大加速器综合体中的设备进行接口。硬件可以保持运行数十年,因为更换一台计算机可能需要重新设计其连接的电子设备。

CERN2023年的风险分析估计,留在红帽生态系统的成本约为540万瑞士法郎。这还可能需要重新设计约11块电路板,招聘更多工程师和技术人员,重新整理机架,重新布线系统,以及重新调试设备。

解决方案令人耳目一新地简单:不要为了满足操作系统的CPU基线而更换价值数百万法郎的可用硬件。更换操作系统。

CERN选择了Debian。到2026年底,加速器大楼周围预计有超过2200台工业计算机和嵌入式系统将运行Debian 13。

这种讽刺意味难以忽视

我最感兴趣的不是CERN选择了Debian,而是为什么Debian有价值。

加速器团队特别赞扬了其持续支持较旧且较少见的架构,以及作为社区主导的发行版能够与 Red Hat 竞争的能力。

CERN还赞助Freexian,以加强Debian的长期支持生态系统。这里有一个重要原则:当一个机构依赖社区项目提供的基础设施时,投入资源以保持项目的独立性和健康,可能比为了短期效率而将所有资源集中在一个供应商生态系统周围更省成本。

这听起来非常接近Scientific Linux曾经提供的服务。

Scientific Linux 由一个出乎意料的小团队维护

这也是我质疑终止Scientific Linux是否真的带来了我们预期的节省的原因。该发行版并非由数百名工程师维护。

其项目历史中,后期仅列出少数主要开发者,主要由费米实验室提供赞助、基础设施建设、带宽和网站。这并不意味着这项工作变得简单。

发布工程、安全更新、测试、软件包重建、基础设施和用户支持都需要实时完成。

但这些成本应与它们所创造的价值进行比较。科学Linux为庞大的科学生态系统提供了大约二十年的稳定计算平台。保持这一能力不应仅仅以采用CentOS节省的工程师工时来衡量。

相关问题是:如果周围生态系统发生变化,失去独立运营能力会付出多少代价?

过去十年至少给了我们一个部分答案。

Scientific Linux 是否让 Red Hat 保持诚信?

有一个更诱人的、更有力的论点:Scientific Linux 和其他独立重建限制了 Red Hat,而移除主要替代方案有助于将权力集中在 CentOS 和 RHEL 上。

我认为其中有其道理,但我不会将其当作历史事实呈现。我们无法知道反事实。

科学Linux可能不会阻止红帽改变CentOS。IBM于2019年7月完成对红帽的收购,此前费米实验室已宣布不会有Scientific Linux 8。因此,将此简化为IBM扼杀了CERN和费米实验室本应预见的东西是误导性的。

我相信独立的替代方案会改变激励机制。当主要客户和机构有可信的退出渠道时,供应商的行为会与离开需要重建多年基础设施时不同。

这并非红帽特有。这是基本的依赖管理。即使没人切换,竞争依然重要;切换的可能性也很重要。科学Linux提供了这种可能性。

而且由于主要科学机构维护它,而非商业Linux供应商,其激励机制与长期科学基础设施高度契合。

真正的错误是把标准化和依赖混淆了

标准化是好事。

如果每个大学和实验室都发明了自己不兼容的计算平台,粒子物理就无法高效运行。CERN和费米实验室希望拥有共同接口、兼容的二进制、统一的封装和可预测的操作环境是正确的。

但标准化和单一文化并不是一回事。

当我们假设标准化需要放弃独立实现时,这一策略就出了问题。科学Linux本可以保持无聊。

事实上,枯燥正是我们所需要的。它不需要在创新上与Fedora竞争,也不需要在桌面应用上与Ubuntu竞争。它需要保持一个可重复、由机构控制的企业Linux平台:如果商业生态系统朝着与科学计算不兼容的方向发展,科学界可以去到一个可以去的地方。

即使几乎没人注意到,这也是宝贵的基础设施。尤其是在那个时候。

这个教训远不止科学Linux本身

我认为今天的答案不是复兴科学Linux。生态系统已经向前发展。AlmaLinux存在。Rocky Linux依然存在。Debian在CERN中变得越来越有用。

容器和现代软件发行版降低了许多工作负载主机操作系统的重要性。

我从科学Linux中学到的教训是关于研究机构如何重视基础设施。我们擅长计算自己维护某样东西的即时成本。但在计算失去维护能力的长期成本方面则差得多。

在决定是否淘汰机构开源基础设施时,计算应包括维护工时之外的部分。它应考虑治理、集中风险、上游项目方向转变时的迁移成本、被舍弃的机构知识,以及你希望永远不需要的可信替代方案的价值。

CERN加速器团队在Debian演示中的最终建议可能是最好的总结:

“分销的便携性是一件非常好的事。”

经过十多年,经历了多次企业级Linux战略的调整、新的社区重建,以及如今数千台加速器计算机的迁移,才达到了这一阶段。科学Linux早在二十年前就已经教会了我们这个教训。

我们只是停止了听。

添加评论
点赞收藏
点踩分享查看原文
评论
?
参与讨论