一、背景
以前国内运维一般都使用CentOS而不是Debian/Ubuntu作为Linux服务器,因为LTS支持周期,CentOS一般是10年,而Ubuntu免费支持周期只有5年,延长5年则需要额外付费。但CentOS官方将停止维护CentOS 7,CentOS 8了。其中,于2022年01月01日停止维护支持CentOS 8,于2024年06月30日停止维护CentOS 7,详情请参见 CentOS 官方公告 。为啥官方不维护了呢?因为之前CentOS都是免费维护的,但Red Hat没钱养着一个团队一直维护CentOS这个开源软件了;另外很多企业把稳定的CentOS当成产品使用,或者自用、或者销售,导致Red Hat客户与收入下降。于是 Red Hat就把CentOS重塑品牌和重新定位为创新用途,成为不稳定版本(CentOS stream)。我们公司的服务器软件之前一直部署在CentOS 7.5上,所以必须寻找CentOS停止维护后,可以替代的系统。
二、可以替代的操作系统
(1)转CentOS Stream(不推荐)
现在CentOS 8和CentOS 9都被归在CentOS Stream中了。CentOS变为CentOS Stream后。产品定位发生了变化,从原来的RHEL下游项目变成了一个Linux开发平台。社区开发者可以与红帽的开发人员一起为RHEL做贡献,但也因此,CentOS变为CentOS Stream后变得不稳定了。有些人可能觉得把原来运行在CentOS上的软件,迁移到Stream上,然后关闭更新就可以了,但实际上这样做并不妥当:一个已经发布的更新所修补的漏洞,往往一两周内就会有针对这个漏洞的攻击工具流出。关闭更新会导致服务器容易被黑客攻击成功,从而导致客户隐私数据泄露、公司重要数据泄露,一旦被渗透连具体原因都查不出来。
(2)转其他发行版,比如Debian/Ubuntu(较不推荐)
CentOS和Debian/Ubuntu是不同的Linux发行版,软件包管理系统不一样,所以在CentOS上编译的库或者软件不一定可以直接在Debian/Ubuntu 上使用。原来在CentOS上运行的软件可能需要重新编译才能在Debian/Ubuntu上运行。
(3)转AlmaLinux/RockyLinux(可以考虑)
AlmaLinux是CentOS 8的1:1发行版,可以直接从现有的CentOS上迁移到AlmaLinux,官方承诺最少支持到2029年。
参考:《AlmaLinux RockyLinux Ubuntu Debian Fedora 怎么选,?Centos8 最强替代》
(4)转OpenEuler或者Anolis OS(国内推荐用这个)
华为的OpenEuler操作系统和阿里的Anolis OS(龙蜥操作系统)兼容CentOS软件生态。其中,根据阿里官方的说法:龙蜥操作系统(Anolis OS)为老的CentOS用户提供100%兼容的服务,在CentOS结束生命周期为广大的 CentOS 用户提供平滑的过渡支撑,提供CentOS7/8到AnolisOS7/8一键式迁移工具,用户可借助迁移工具就地迁移到Anolis OS。个人感觉国产操作系统是国内的大势。有消息称*已经要求各部委,以每年15%的比例由国产操作系统替换外国操作系统,所以新部署到*机关/事业单位的Linux系统最好也得是国产的。因为CentOS背后的Redhat是美国公司,未来的局势很不明确,出于政治因素,国内的技术应该尽可能去美国化。
三、综上
由于我们公司开发的软件是卖给学校(事业单位)的,综上,我们使用Anolis OS这款国产操作系统替代原来的CentOS。之前在CentOS上运行的可执行文件不需要重新编译即可迁移到Anolis OS上。