我们正在开发一个软件解决方案,我们的一些供应商确实以 CentOS 7 为中心。
CentoS 7 将在 RHEL 7 生命周期的剩余时间内继续生产,该生命周期将在 2024 年的某个时间结束。
CentOS 8 将在 2021 年 12 月之前收到更新。
CentOS Stream 由 Red Hat 宣布,但显然不是 CentOS 的替代品。
如果在不久的将来 CentOS 的选项不确定,我不太喜欢在这方面进行深入研究。
问题:当 RHEL 7 达到其生命周期并且用户需要生产就绪服务器时,CentOS 7 用户有哪些选择?
如果不严格要求 RHEL 二进制兼容性并且仅使用树内内核模块(即:不需要树外 kmod),CentOS Stream 应该仍然是一个可行的选择。
否则,您可以使用新的 RHEL 克隆之一,例如AlmaLinux、RockyLinux甚至Oracle Unbreakable Linux(在这种情况下,请务必选择与 RHEL 兼容的内核,而不是自己定制的内核)。 个人说明:我使用 RockyLinux 完全没有问题(我是从带有
migrate2rocky
脚本的 CentOS 8 机器迁移而来的),但与往常一样,您的里程可能会有所不同。最后,如果您确定需要少于 16 个 RHEL 实例,您可以使用来自 Red Hat 免费层的简单的 Red Hat Enterprise Linux(显然不支持)。
编辑:正如其他答案中明智地建议的那样,迁移到 Debian、Ubuntu 等不同的发行版是一种非常合理的方法。我在不需要 RHEL 兼容性的环境中做了同样的事情(用最新的 Ubuntu LTS 重建)。Debian 和 Ubuntu 正式支持就地升级路径,而大多数 RHEL 克隆只有非官方支持 - RHEL 本身和 Oracle Unbreakable Linux 是例外,完全支持
leapp
升级 -但现在情况正在发生变化。这个答案是有偏见的——我正在为一家制作 RHEL 克隆的公司工作。
您有多种选择:
最后,如果我可以推荐一些东西——不要急于求成——你将有足够的时间来看看哪个项目将是下一个稳定的 CentOS 替代品,对于企业 Linux 来说,它不是短跑而是马拉松。
当关于 8 的消息传来时,我不得不让我们的系统脱离 CentOS6(我们一直在偷懒)。最终,我最终将我们从 DevOps 和 CentOS 转移到了 Ubuntu 20.04(LTS 版本)。
我意识到这不是一对一的举动,但我们主要使用 Web 服务器,我们的大部分设置都可以在 Ubuntu 中复制。痛点是
php-fpm
,而是phpX.X-fpm
。阿帕奇不是httpd
但apache2
优点是 Ubuntu 的社区更广泛,得到更好的支持。最终,只需启动并放弃 CentOS 就值得麻烦了。
简单来说,这个问题是我决定结束使用 RH/CentOS 进行生产部署二十多年的动力(我想我是从 Red Hat 4.1 开始的)。我所有的新部署都是 Debian(除非客户特别要求 C7并表示他们理解我们将在 24 个月内再次进行重建)并且我正在迁移我所有现有部署的缓慢过程。无论 Debian 做什么,它都不太可能像 RH 最近那样让我的生活变得困难,任何其他企业驱动的项目都可以在 CEO 的帽子下做同样的事情。
为了升级到 C7,我所有的 C6 系统都必须重新构建,因此最后一次重新构建以摆脱那个循环的想法,对于一个将就地主要版本升级视为正常活动的发行版,似乎是值得的。
我已经发现了一些问题,毫无疑问我会找到更多,但我已经走了六个月的路,还没有找到改变的理由。
对于 CentOS 7,我建议使用 CloudLinux 7——我猜他们会像 CentOS 6 那样做吗?
CentOS 8 的替代品是 Alma Linux。
一个未被提及的建议是将您的基础架构引入红帽。红帽在操作系统中内置了 Insights、Performance Co-Pilot 和 Identity Management 等工具。您可以联系我们的支持工程师并与红帽合作,以影响您所依赖的上游项目的未来。
正如一位评论者提到的,如果您的需求少于 16 个节点,您可以免费迁移到 RHEL。如果您需要更大的基础架构,我们还提供开发人员许可证,因此您的开发/QA 环境可以运行与付费生产许可证相同的操作系统。
Red Hat 还可以使用 Convert2RHEL 轻松从 CentOS7 迁移到 RHEL7,使用 Leapp 就地升级工具从 RHEL7 迁移到 RHEL8!
(免责声明 - 我为 Red Hat Enterprise Linux 团队工作,但无论如何,这都是我的建议。)