企业 Linux 格局简明指南

作者:Rod Cope
An Abridged Guide to the Enterprise Linux Landscape

无论您是欢迎 CentOS Stream 还是在寻找替代方案,CentOS 社区最近决定专注于 CentOS Stream,这都迫使许多技术领导者重新思考他们的企业 Linux 战略。在该决定背后,自 90 年代后期 Linux 首次在企业领域亮相以来,涉及 Linux 的商业格局已经发生了转变和扩展,当时 IBM 曾向其开发投资 10 亿美元。

如今,Linux 的形态和尺寸千变万化,应有尽有——内核运行在微型低功耗计算机和物联网设备、手机、平板电脑、笔记本电脑,一直到中端和高端大型机服务器。

在广泛的选择中进行筛选,以了解哪些 Linux 发行版真正符合企业的需求,可以实现更顺畅的部署和成功的执行,同时最大限度地减少维护周期中的浪费并优化总体成本。

这份企业 Linux 格局简明指南可以为企业概述哪种 Linux 版本(或哪些版本)最能充分满足其用例。

对于那些寻求更全面指南的人,请务必查看《企业 Linux 决策者指南》

找到合适的 Linux 版本

致力于某个版本可能会引入许多问题。除了管理主机对主机的部署外,管理员还必须考虑可用于支持大规模实施的生态系统组件。

将有哪些机制可用于自动补丁?您可以通过镜像发行版存储库来优化带宽吗?远程桌面是一个需要关注的问题吗?内核版本要求又如何呢?Linux 内核 4 包含可直接节省云部署成本的优化,您可以利用它吗?TUX

您是否正在考虑容器战略,考虑将您的应用程序部署到 Kubernetes 或其他多云战略中?嵌入式 Linux 的选项又如何呢?

如今,每种担忧都有首选的 Linux 版本。单一版本的 Linux 实际上是由一组精选的其他自由软件包围的 Linux 内核。正是其他的自由软件使一种 Linux 版本与其他版本区分开来。

例如,CentOS 操作系统使用 yum 软件包安装管理实用程序,而 Debian 使用 apt。Ubuntu 提供 Unity 桌面 GUI 体验,这在外观和感觉上与其他选择 Gnome 或 KDE 的 Linux 版本明显不同。由此可见,不同的软件组合使得发行版特别适合各种企业用例。

本指南将引导您比较几种 Linux 版本,按类别排列

  • 持续交付免费企业 Linux
  • 容器优化型免费企业 Linux
  • 免费嵌入式 Linux
  • 云托管企业 Linux
  • 商业企业 Linux
  • 固定发布免费企业 Linux
  • 固定发布免费商业级 Linux

持续交付免费企业 Linux

一般来说,Linux 社区成员会选择他们想要包含在自己的 Linux 发行版中的开源软件,提取该软件的上游源代码,并以与 Linux 发行版兼容的方式构建和打包它。该软件包将与发行版附带的其他软件包进行兼容性测试,并在准备就绪后将其包含在 Linux 发行版的软件存储库中。

当 Linux 发行版增加其次要版本时(例如,RHEL 从 8.3 升级到 8.4),该版本与所有精选软件的特定且固定的软件包版本集对齐。当 Linux 升级时,会提取该固定的软件包集,管理员可以通过这种方式确保支持其应用程序的底层软件功能保持兼容和稳定。

这种发布模式称为“固定发布”计划,多年来一直为单体部署提供良好的服务。固定发布操作系统的明显缺点之一是,从设计上来说,对于订阅较新的构建模式(如临时部署)的系统设计人员来说,很难利用上游社区提供的最新功能和安全问题。

为了应对这种情况,出现了几种“滚动发布” Linux 发行版,其中最突出的两个是 CentOS Stream 和 OpenSUSE Tumbleweed。 “滚动发布”发行版面向计划始终通过采用的镜像构建和部署其环境,并且已经建立了成熟的 CI/CD 模式的公司,使管理员和开发人员可以利用语义版本控制来始终拉取他们正在部署的各种软件包的最新补丁版本。

CentOS Stream

CentOS Stream 是 Red Hat Enterprise Linux 的发布版本,它构建在 RHEL 之前,包含通常需要手动应用或在 RHEL 的下一个官方版本发布时拉取的补丁和更新。它具有与 CentOS 相同的外观、感觉和体验,但指向持续交付的软件包存储库,而不是固定发布存储库。

OpenSUSE Tumbleweed

OpenSUSE Tumbleweed 的发布方式相同,但在所有其他方面都与 OpenSUSE 的传统固定部署(称为 OpenSUSE Leap)相同。主要区别在于软件包管理格式——OpenSUSE 选择 zypper 进行软件包管理,而 CentOS 选择 yum——以及中央管理。CentOS 包含一套模块化管理实用程序,而 OpenSUSE 提供全面的 YaST 控制面板。

选择合适的滚动发布发行版

选择实际上取决于哪种技能组合对您来说最容易获得。OpenSUSE 及其企业级对应产品 SLES 与 Red Hat Enterprise Linux 一样,长期以来一直为大型企业提供良好的服务,并且包含一套完整的管理软件和工具,可以满足大多数企业的需求,CentOS 也是如此。

这两个社区都很成熟,并承诺长期存在,并且在快速响应安全漏洞和其他问题方面都享有盛誉并有据可查。

容器优化型免费企业 Linux

鉴于 Linux 的模块化,可以通过添加和删除支持软件包来对其进行扩展和缩减。Linux 内核本身甚至可以精简到其基本组件。在较新的微服务或 12 因素部署中,一个重要的概念是可处置性。环境预计会自动组成和分解,并且运行在这些环境上的应用程序应该快速启动并优雅地停止。这一切都是为了在需要弹性扩展环境或快速部署某些业务功能的新版本时,可以以极低的停机时间和无明显的服务中断来完成。

这意味着操作系统需要以相同的方式运行,因此,容器优化的 Linux 环境本质上是已精简到仅支持在其上运行的轻量级应用程序所需的基本组件的环境。

与此类别匹配的两个企业级 Linux 发行版是 Fedora Core 和 Photon OS。

PhotonOS

PhotonOS 是 VMWare 通过其 Tanzu Kubernetes 网格项目进军容器编排领域的尝试。Tanzu 旨在使企业能够在较新的容器驱动部署旁边运行熟悉的传统 VMWare 虚拟化技术。

Fedora CoreOS

Fedora CoreOS 是 Red Hat 衍生企业 Linux 容器优化型产品。它包含 Red Hat 产品在该生态系统中运行的所有必要元素,并且是支持在 OpenShift 环境中运行的应用程序的首选操作系统。

选择合适的容器优化型发行版

因此,这种选择归结为,如果您准备好致力于哪个容器生态系统供应商(如果有)。这种选择可能来自遗留系统,特别是当企业可以依靠以前的供应商关系来获得更好的交易时。随着整个世界转向基于容器的多云部署,Red Hat 和 VMWare 都非常渴望留住他们的客户,并且众所周知,他们会提供大幅折扣以换取多年续约。

Linux Distro Decision Tree

免费嵌入式 Linux

嵌入式 Linux 发行版与容器优化型发行版有很多相同的关注点,只是前者通常更深入地关注硬件级别的兼容性和安全加固。通常,这些精简的变体将运行在能够运行部分功能的低功耗硬件上。想想 Apple Watch、FitBit,甚至不太复杂的设备。

当考虑企业在选择嵌入式 Linux 发行版时会面临的问题时,有三种发行版脱颖而出。

Alpine Linux

Alpine Linux 非常注重保护在其上运行的应用程序,但也通过专注于可用性来平衡其中一些,选择熟悉的“apt”软件包管理器进行软件安装。

Debian

Debian 虽然并非严格用于嵌入式 Linux 问题,但它是最古老和最受信任的 Linux 发行版之一,并且是许多衍生产品的基础,其中最著名的是 Ubuntu。Debian 将可用性与灵活性融为一体,可以进行最小化配置,使其适用于嵌入式环境。事实上,流行的 Raspberry Pi 微型计算机通常与称为 Raspian 的 Linux 版本一起使用,该版本源自 Debian。

Yocto 项目

最后,Yocto 项目为企业提供了一个有趣的选项。Yocto 不是提供单一发行版,而是提供一组用于生成针对嵌入式用例优化的 Linux 发行版的实用程序。这样,企业可以批量生产各种形状和尺寸的发行版,以适应运行它们的硬件。

选择合适的嵌入式发行版

非常关心保护嵌入式设备上运行的专有软件安全的企业应直接选择 Alpine Linux。那些想要嵌入,但想要广泛的潜在功能可供选择以及更全面的 Linux 体验的企业会发现 Debian 可以满足他们的需求。最后,计划跨各种不同尺寸的硬件发货的企业应考虑 Yocto,其方法将简化生成和管理许多不同镜像的过程。

云托管企业 Linux

这是一个非常特定的用例,非常特殊,以至于这里真正值得一提的 Linux 版本只有 Amazon Linux。

Amazon Linux

Amazon Linux 是在 Amazon 云中运行最具成本效益的 Linux,但确实会将您限制在 Amazon 做出的选择中。Amazon 将在内核层控制事物,并将应用他们认为最适合在他们的 EC2 环境中运行的优化。

Amazon Linux 是在 2010 年从 Red Hat 源代码 RPM(如 CentOS 和其他衍生产品)构建的。虽然 Amazon Linux 2 目前在 RPM 软件包版本方面与 RHEL 7 对齐,但它在这一点上已经发生了重大偏差,并且许多为 RHEL 衍生产品构建的软件包将无法在系统上干净地安装。在这一点上,Amazon Linux 应被视为其自身的版本,而不一定与其他发行版兼容或对齐。这意味着锁定将是不可避免的,因此如果您计划部署在 Amazon Linux 上,您也应该在其上运行测试。

商业企业 Linux

商业 Linux 供应商将为 Linux 发行版提供增值产品和服务,并出售其产品的许可证。这几乎总是包括支持和维护功能,并且还可能具有增强的部署功能、监控和其他企业工具等附加组件。

Red Hat Enterprise Linux

毫无疑问,最流行的商业 Linux 发行版是 Red Hat Enterprise Linux 或 RHEL。RHEL 最近被 IBM 收购,其客户每年创造数十亿美元的收入。除了他们的商业 Linux 之外,Red Hat 还将其其他几种开源技术品牌化,这些技术协同工作以形成商业生态系统。例如,基于开源 Spacewalk 和 Foreman/Katello 社区项目的 Satellite 5 和 Satellite 6 项目提供了管理数千台 Linux 主机所需的补丁管理和升级功能。

SUSE Linux Enterprise Server

SUSE Linux Enterprise Server (SLES) Linux 发行版在企业中也很受欢迎,尤其是在 EMEA 地区。SLES 产品是 OpenSUSE Linux 项目的商业对应产品。作为一个发行版,它专注于轻量级和简单的用户体验,并以对安全性的认真关注为后盾,包括在处理软件包漏洞时令人印象深刻的响应时间。SUSE 最近收购了基于 Kubernetes 的 Rancher 容器引擎,这表明他们愿意在容器编排领域发挥作用,这使他们在未来的部署实践中处于有利地位。

Canonical Ubuntu Enterprise

Canonical 公司为其社区 Ubuntu Linux 发行版提供企业软件包,他们称之为 Ubuntu Enterprise。它实际上是一系列付费服务,例如硬件认证、批准的构建(包括 OpenStack 的构建)和一般支持。发行版本身在产品之间没有区别,即只有一个 Ubuntu 发行版,这使得部署方便且低摩擦地进入他们的企业服务。

CloudLinux

CloudLinux 提供了一种面向具有托管问题的企业的企业级 Linux 发行版,但是,鉴于托管对服务器来说是一项相当苛刻的责任,因此可以认为该发行版足够稳定,可以在企业生产工作负载上运行。虽然它没有像 RHEL、SUSE 和 Ubuntu 等产品那样广泛的生态系统,但它是在 RHEL 之后构建的,因此它将与该生态系统中的许多产品兼容。

固定发布免费企业 Linux

这是最广泛的企业 Linux 类别,您很可能正在阅读本文,因为最近该领域发生了中断。CentOS 是最著名的免费企业 Linux 发行版之一,并且直到最近 CentOS Stream 首次亮相并将其重点转移到 CentOS Stream 之前,它都是在 RHEL 源代码 RPM 之后构建的。

这个过程听起来就是这样。由于 GPL 的条款,RHEL 有义务公开提供其修改后的其他自由软件发行版的源代码。它以 RHEL 源代码 RPM 的形式这样做,这些 RPM 是与支持发行版的软件包的二进制发行版相对应的 RPM 打包的代码库。

二进制兼容 RHEL 发行版

CentOS、Springdale 和 Oracle Enterprise Linux 等发行版社区将下载这些源软件包并重建和重新打包其中的软件,然后将它们托管在他们自己的存储库中,以及他们品牌的 базовые 发行版。通过这种方式,确保了与父发行版的二进制兼容性,从而将 RHEL 的所有稳定性和强大功能带到 GPL 版本。这也是即将推出的 AlmaLinux 和 Rocky Linux 版本的模型,这两个版本都是为了直接响应寻求 CentOS Stream 替代方案的广大商业社区而创建的。这种兼容性是如此无缝,以至于所有这些发行版都可以在彼此之间迁移,而不会造成系统停机,从而剥离一种产品的品牌并将其替换为另一种产品的品牌。

OpenSUSE Leap

OpenSUSE Leap 是 SUSE Linux Enterprise Server (SLES) 的固定发布社区版(在上一节中提到),它也与其企业级双胞胎二进制兼容。这两个发行版都从相同的代码库构建,并且迁移实用程序也可以就地迁移这些系统。这些产品本质上是相同的,但 SLES 产品提供支持保证。

固定发布免费商业级 Linux

对于不需要大规模管理数千台主机,但仍然需要稳定可靠的发行版的中小型企业来说,最好的两个版本是 ClearOS 和社区 Ubuntu。

ClearOS

ClearOS 由 HPE 提供,基于 CentOS。HPE 为操作系统构建了一个 GUI 驱动的管理控制台,并将其宣传为 Microsoft Windows Small Business Server 的替代品。

Ubuntu Community

如上所述,Ubuntu 社区与 Ubuntu Enterprise 是相同的 Linux 发行版,可以免费下载和部署,但没有支持功能。Ubuntu 提供了一个更轻量级的生态系统产品,可以很好地扩展到中小型企业的规模,并且还提供 OpenStack 和相关技术的轻松部署。

最终想法

您的企业有多种 Linux 可供选择。认真了解您当前和未来的部署需求可以指导您为您的企业做出正确的选择。请记住,操作系统的目的是支持您的应用程序。一般来说,寻求一种完全支持您的应用程序部署的解决方案,同时避免为您不需要的功能或不具有战略附加值的功能付费。

正如您在本文中读到的那样,各种版本都是根据某些主题和优先级构建的。然后,尽可能将您的业务优先级与您可以得出的支持该版本的组织的优先级对齐。如果安全性是首要考虑因素,请确保该发行版在快速响应新漏洞方面享有盛誉。如果您正在管理大规模的基础设施,请确保考虑自动化补丁管理等生态系统功能。现在的额外投资将在您的部署的整个生命周期中获得回报。

获取企业 Linux 完整指南

我在 OpenLogic 的同事和我共同编写了一份 27 页的报告,深入探讨了企业 Linux 格局中的顶级发行版。您可以在此处下载企业 Linux 发行版的完整指南。

Rod Cope 拥有 25 年以上的行业经验,是 Perforce Software 的首席技术官,为公司全球分布式团队提供技术愿景和架构领导。Rod 是 OpenLogic 的创始人兼首席技术官,并在收购后加入 Rogue Wave 担任首席技术官。在过去的二十年里,Rod 在世界各地的活动中就各种主题发表演讲。除了 API 管理和安全之外,他最近评论的其他主题包括微服务和多粒度服务、敏捷方法、开放银行标准、数字化转型以及一般的软件开发趋势,尤其是在规模方面。

加载 Disqus 评论