相对于成百上千种Linux桌面系统,Linux服务器系统的数量其实比较有限,但我们仍然很难从中选择真正适合企业需求的理想方案。在本文中,我将尝试运用自己积累了十二年的Linux使用经验帮助大家找到问题的答案。
我认为,选择Linux服务器系统时最重要的一项因素在于,您的IT员工是否拥有娴熟的Linux使用经验。尽管时至今日,Linux专业知识已经不再像过去那样晦涩难懂,但要想成为精通Linux的IT专家,普通技术人员还有很长的路要走。
在参与今年早些时候于俄勒冈州波特兰举办的OSCon(即世界开源商务大会)时,我发现每一家企业(甚至包括微软在内)都在寻找拥有丰富Linux及开源使用经验的技术人员。
事实上,目前雇主很难找到已经在Linux领域打混过几年以上的成熟员工——而这类技术人员正是大家按计划顺利使用Linux服务器的必备人才。
换句话来说,如果各位手下欠缺这类Linux老鸟,最好还是别头脑发热部署什么Linux服务器发行版。就以Debian为例,这套系统根本没有专门的厂商提供技术支持,更不用说相关培训了。
请不要误会我的意思。Debian对于经验丰富的使用者来说极为强大,但如果大家手底下的技术团队连BASH与C Shell之间的区别都弄不清,还是早点断了使用Debian的念想吧。
最适合新人使用的Linux服务器系统方案
- RHEL
- SUSE
- Oracle Linux
- Turnkey Linux
如果您的技术团队刚刚接触Linux,各位最好还是选择商用Linux较为妥当。在这里,我会跟大部分咨询人士一样向您推荐红帽企业Linux。
如果没有企业技术支持,红帽根本不可能成为第一家凭借Linux产品获得十亿身家的公司。与其它Linux版本相比,RHEL所提供的工具类型非常全面——企业支持、专业认证、硬件认证以及通过红帽网络(简称RHN)实现的自动化在线更新——这一切都会令CFO与CIO们喜笑颜开。
不过红帽还面对着另一位实力强劲的竞争对手:SUSE Linux企业服务器系统(简称SLES)。
与RHEL类似,SLES也提供技术支持;兄弟公司Novell负责员工认证;硬件认证与在线更新也一样不少。
这么说来,我们该如何从二者当中做出选择?答案很简单:做测试。二者的测试流程都很简单易行且完全免费。从个人角度讲,RHEL与SLES两种方案我都有所涉猎。要做出正确选择,大家需要在企业需求与系统特性之间找到契合点。只要出发点准确,二者一般都能发挥理想的作用。
其实还有另一套企业级Linux选项:甲骨文Linux虽然它的所有设计思路与技术目标都在照搬RHEL,但我个人对此倒并不在意。不过需要提醒大家的是,根据我自己的经历,只有那些把所有IT赌注都押在甲骨文一家身上的企业才会使用这套系统。
最适合非专家级技术人员使用的Linux服务器系统
- CentOS
- openSUSE
- Ubuntu Server
下面我们来探讨这种不上不下的状况。您的员工对Linux系统拥有一定了解,但还达不到专家级水准——这时该怎么办?
对于这样的企业用户,我当然准备了一些相关推荐。首先,如果大家喜欢RHEL的运作方式,那么CentOS作为RHEL的免费克隆版肯定能让您满意。
CentOS的人气很高。如果大家在几乎全部Web托管服务中使用Apache Web服务器,那么就相当于已经在基础设施内运行着CentOS。另外,这款发行版也提供大量免费的在线支持资源。
如果大家担心红帽公司有可能对CentOS来一招釜底抽薪,我请各位还是不要杞人忧天的好。尽管红帽对甲骨文Linux的存在表示反感,但红帽公司CEO James Whitehurst最近刚刚表示:“CentOS已经成为RHEL生态系统当中的默认组成部分。它的存在帮助我们开拓了新领域,即以免费方式让用户体验RHEL的功效。因此,虽然从微观角度看我们的营收受到了影响,但就宏观角度说CentOS对于红帽Linux起到了极为重要的推动意义。”
对于对Linux有所了解但还不够深入的用户而言,OpenSUSE也是个不错的选择。OpenSUSE是SUSE系统的社区Linux发行版。尽管它并不提供像SLES那样的技术支持,但其出色的稳定性与易用性仍然值得赞赏。另外,我自己家里的服务器使用的就是OpenSUSE系统。
不过我并不推荐RHEL社区推出的另一位小兄弟——Fedora。Fedora对于希望将Linux潜力推向极限的开发人员来说非常出色,但它并不适合充当以稳定为主要诉求的服务器系统。
另一套理想方案是由Canonical公司推出的Ubuntu。尽管Ubuntu在大家印象中是一款极具野心、甚至打算向智能手机及平板设备扩展的桌面系统,但它在服务器环境中还拥有另一个出色的版本:Ubuntu Server。
与RHEL及SLES类似,Ubuntu也提供技术支持与产品认证,但其资源储备不像红帽及SUSE那样丰富。不过从另一方面讲,Ubuntu在执行简单服务器任务时更易于打理。
最适合专家级用户的Linux服务器系统
- Arch
- Gentoo
- Debian
- Fedora
如果大家对云计算兴趣深厚,那么别忘了Ubuntu(RHEL也一样)可与OpenStack深入对接的能力。另外,作为Ubuntu系统的母公司,Canonical还推出了Juju,一款非常便捷的DevOps(也就是针对开发与运营流程)的工具集,从而让过去那些令人抓狂的服务器服务设置、配置、管理、维护、部署以及扩展等工作变得轻松愉快。
说起云计算,大家应该首先考虑自己的Linux服务器到底是要运行在自己的办公楼当中还是数据中心内。如果选择了云方案,大家需要保证业务服务运行在专门的Linux服务器之上。
大部分公共云服务,例如Amazon Web Services(简称AWS)、Azure以及RackSpace,都提供Linux服务器方案。如果使用这类方案,大家可以免去服务器设置过程中的大量技术难题。
举例来说,Amazon在自家Amazon弹性云(简称AE2)中为前文所提到的所有Linux发行版都提供了Amazon设备镜像(简称AMI),甚至还包括他们自己开发的Amazon Linux。而且别惊讶,就连微软的Azure也支持CentOS、OpenSUSE、SUSE以及Ubuntu。最后,RackSpace与OpenStack支持大多数主流服务器Linux发行版以及知名度相对较低的Arch与Gentoo。不过我还是要强调,只有Linux技术水平达到一定程度的用户才适合使用Debian,而且其发行版应该只用于特定关键性业务服务器。
谁说在云环境中我们仍然需要一台性能强劲的Linux服务器?事实上,只要保证每套Linux服务器都能专门对应一种特定工作,其整体表现就完全能够令人满意。说到这里,最后一位候选者终于上台了——这就是Turnkey Linux。
Turnkey以64位Debian Linux为基础进行开发,但它对于企业用户的要求其实非常友好。究其原因,在于它提供的一套专用型Linux服务器方案,而非全功能式发行版。
Turnkey提供超过一百种可以直接运行的应用程序。其中包括Apache Web服务等标准;一套Linux、MySQL、PHP/Python/Perl(简称LAMP)堆栈;一款WordPress博客平台;针对Ushahidi紧急状况应对服务器等特殊业务环境的Drupal内容管理系统(简称CMS);游戏化客户关系管理(简称CRM)应用Zurmo;人为响应管理系统Sahana Eden等等。大家可以将这些专有应用服务器运行在AWS、裸机、虚拟机或者基础设施即服务(简称IaaS)云当中。
总而言之,无论是对Linux一无所知的新手还是深谙内核奥秘的开发达人,总有一款适合您自己及所在企业的Linux服务器系统——请尽情选择吧。