刘遄:红帽 RHEL7 系统是一款很失败的产品吗?

2016-05-15 20:53


大家好,我是刘遄。 RHEL 系统的爱好者们,不少人听说刘遄这个名字,或许你还不会念,但肯定有点眼熟。2015年初,我起笔写了《Linux 就该这么学》这本国内第一本基于最新 Linux 系统的入门书籍。目前书籍经过了几十次大的改动已经把品质做的非常好,有空可以免费下载来看。同时我自己也做了将近七年的运维,取得有红帽 RHCA 架构师、红帽 RHCE 工程师6和7版本的双认证,也应该是国内为数不多的 Linux 在线讲师之一。从2014年 RHEL7 系统的发布到现在写这篇文章,两年的时间里时时刻刻的关注 Linux 系统的演进,参加了大大小小无数场讲座,为的就是我今天能对 RHEL7 有足够的话语权,没有耐心看完的读者也可以直接记住我的观点——RHEL7 不是个失败的产品

大约两年前的这个时候,RedHat 公司推出了新的企业版 Linux 系统,国内外各大媒体都给了不少特写镜头,行业也给予了硕大的期待程度。但是时至今日 RHEL7 系统的市场占有率却一直不温不火,逐渐的就有人开始对 RHEL7 系统的未来表示担心。甚至有人还搬出各种 “大道理”来唱衰 Linux 系统,觉得开源厂商已经过了事业最高点,开始要在服务器领域让步给 Windows 了。当然这些我没必要去反驳,任何一个产品都一定会有支持者和唱衰者,我们这次只评这个 RHEL7 系统。

在正式讨论话题之前,我希望读者已经对于 Linux 系统特性和应用领域有了必要的了解;知道 Linux 系统在服务器领域中不可小觑的市场份额;知道 RedHat 厂商对于 Linux 系统及整个开源行业的重要性影响;知道 CentOS 也是 RHEL 系统的衍生品等等常识;甚至是以前使用过一段时间 RHEL7 系统了。基于这样的经验共识,我们才能更顺畅的讨论红帽 RHEL7 系统是不是个失败的产品这个问题。

要论证我在上面的看法,不如谈谈现在最烫手的热议问题:“为什么2年过去了,RHEL7 系统的市场份额依然不温不火?要不要反而去学习老版本的 Linux 系统”,甚至有阴谋论说新版本的 Linux 系统还在让美国用于搜集全球信息,告诫我们千万不要去碰。这个问题必须要回应,否则更多的阴谋论会层出不穷,甚至会影响到国内某些不太了然的媒体对开源行业有了扭曲的理解。

能够耐心坚持读到这里,我猜一定是从事于运维行业或者对于 Linux 系统感兴趣的朋友,所以基于我们的经验共识和文章篇幅的限制,我们下面的论证速度会比较快,也很有意思。首先 RHEL 是企业版的服务器系统,而不是用来玩耍折腾的桌面机系统,更何况作为桌面环境的 Windows7 系统在2009年7月14日发布,用了3年才开始真正普及,难道在2009年到2013年中,Windows7 就是失败的产品吗?

红帽 RHEL7 系统紧密的集成了虚拟化技术 Docker,支持了 XFS 文件系统,兼容了微软的身份管理技术,采用了 Systemd 作为初始化系统,性能和兼容性都有了很大的改善,无疑是一款非常优秀的操作系统。单从 OpenStack 和 Docker 的决策上来讲,我们也应该相信红帽的开发团队不是闭门造车,所以是否应该重新考虑到底是那里出了问题?

运维人员经常会讲一句表达心理的想法:“现在的环境跑得好好的,为啥还要换?”。

  • 重新部署生产环境不是装上操作系统就能完事的,也不是把软件随便安装上就能走人的,你是否考虑过升级带来的风险?
  • 日后生产环境出了问题,谁负责任?
  • 旧的软件依然能否兼容与新系统?
  • 新的系统或软件是否有 Bug?
  • 安全性如何,审计怎么做?
  • 之前购买的第三方技术支持能力是否已经跟上?
  • 升级后是否会影响到某些软件的版权?
  • 新系统产生了很大变化,不习惯怎么办?
  • 费力升级后又会对自己有什么好处?

红帽 RHEL7 系统的改进很多,其中最痛点的就是采用了 Systemd 作为初始化系统,几乎之前所有的运维自动化脚本还都要修改。于是我们再回来思考刚刚的这个问题,到底还要不要升级到 RHEL7 了?

当然,服务器机房里也绝不是不更新换代,升级是早晚都必须要的,就看什么时候工作的需求超过了老版本的能力界限,就肯定会升级。比如 Rsyslogd 日志记录服务在 RHEL6 中版本是 V 5.8,而现在最新的版本已经是 V 8.18,差了3个大的主版本号,已经产生了如此大的差距,你觉得会一直用旧的版本吗?

早在2014年初,Fedora 系统首次采用了 Systemd 初始化系统。我当时就断言 RHEL7 系统也会使用 Systemd,所以当即更新了自己的培训课程,让很多其他机构背了 init 参数的同学找我说有多羡慕。对于不论是想要学习 Linux 系统还是编程语言的同学,都应该去选择当前稳定且最新的版本作为学习环境。

  • 稳定:不管是做开发和运维,都是一种保障。
  • 最新:老的版本会有更大的概率存在安全漏洞或者功能缺陷,而新的版本不仅漏洞出现的几率小,而且即便出现漏洞也可以获得众多开源社区和企业的支持,更快的被修复。

再最后讲一句,我每次在公开的场合讲座都会表达的一个观点:“我们并不是因为开源而喜欢 Linux,而是因为 Linux 系统真的非常优秀,开源精神仅是优秀产品上的锦上添花而已”。在我的书籍《Linux 就该这么学》的绪论中也狠狠的肯定了 Linux 系统对于运维行业、甚至是对世界的影响。另外我也会把这本书一直以在线阅读的方式提供给读者们,并且会持续更新 RHEL8/RHEL9/RHEL10 版本的课程。

不忘初心方能始终,致敬所有的 Linuxer。