LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1619|回复: 6

Windows VS Linux:成本之战

[复制链接]
发表于 2003-3-18 21:03:20 | 显示全部楼层 |阅读模式
Windows VS Linux:成本之战(1)
作者:余军    本文选自:开放系统世界—赛迪网  2003年02月28日  

近日,IDC发布的一份由微软委托的关于Linux和Windows TCO(总拥有成本)的分析报告,无疑给那些倡导在企业内部部署Linux系统的人泼了一瓢凉水。虽然IDC不是研究组织,但其分析报告在行业内部还是具有相当的权威性的。这充分显示了Linux在逐渐走向企业级应用的道路上与Windows发生的越来越激烈的“战斗”,而且现在这战火已烧到了企业管理成本问题上来。

本文无意对Linux的“自由开放”或Windows的“私有封闭”这两种软件行业的文化现象加以评论,也无意对IDC的那份报告做出指责,而是从企业成本管理的角度来中立地分析这两个截然不同的系统之间的差异,仅供那些计划或正在企业中部署Linux系统的决策者及实施者进行参考。


如何正确认识TCO


TCO是一种分析模型,用来帮助企业的CIO了解和管理在一项IT产品的使用周期中,获得此产品所发生的所有直接成本和间接成本。TCO能够协助企业的CIO们专注于当前的系统部署问题,合理地解释必须更换/升级系统的原因,并且为他们提供持续的成本管理分析。

TCO的分析流派有很多种,其中当属Gartner Group的TCO分析模型最为出名,其分析模型中涵盖了大量将会影响某个产品TCO的因素。很多因素会影响到TCO的计算,包括使用Linux哪些方面的功能、使用怎样的硬件环境、IT人员是否有使用Unix系统的经验,以及是从Windows或Unix平台迁移到Linux之下的,还是直接在Linux下构建系统。这些因素使对TCO的计算不可能像将数字代入公式就能求出结果那样容易。

由于需要揭示的是两种系统的差异,而非为读者提供一个详尽的财务分析研究报告(文中表1、2、3、4引自RFG的研究报告,仅做参考),因此根据当前主流的几个研究分析公司的TCO分析框架,我们将从软件采购费用、相关硬件采购和维护费用、软件维护费用和系统管理成本四点,来着重探讨Linux和Windows在企业级应用中,在TCO方面体现出来的巨大差异。


软件采购费用


Windows平台软件的采购费用=介质费用+服务器端许可证费用+客户端访问许可证费用。微软公司提供了新的许可证制度,但是从众多第三方媒体所披露的消息看,新的许可证制度仅仅对那些采购Windows平台软件的大型或超大型企业的成本控制有改善作用。对于绝大多数中型或小型企业来说,新的许可证制度客观上加重了这些企业在平台软件采购方面的负担。

由于Linux系统是一个标准的GPL软件,所以既没有Windows那种服务器端的许可证费用,也没有相应的客户端访问许可证费用。如果用户有良好的互联网接入的话,就可以通过互联网以极其低廉的成本下载获得Linux系统;如果企业用户希望通过购买途径获得Linux的话,他们可以通过向专业的Linux发行公司,比如Red Hat、SuSE、Mandrake公司定购相应的产品。一个Linux系统(包含Linux主流应用软件的顶级商业Linux发行包)所需的花费,最多不过6200元人民币(SuSE Linux Enterprise Server的价格),而一个25用户的Windows 2000 Advanced Server则需要4.6万元人民币,其中还不包括对应Linux发行包中的应用软件集合。换句话说,Linux系统+Linux应用软件+无限制的用户访问,其总体费用要以1:8的悬殊差距,远低于一个Windows 2000 Advanced Server+25用户访问许可证。通常情况下,一个中型企业在部署平台系统的时候,绝不可能只部署单个服务器。多个服务器一旦被部署,由此发生的软件平台采购费用,将会因选择Linux或Windows而产生相当大的差别。如果部署Windows系统,企业必须在每台服务器上都购买对应的许可证;而部署Linux,企业只需要购买一套Linux服务器发行包就可以分发到多台服务器上去,企业所需要额外单独支付的仅仅是Linux发行软件包中某一些上层商业应用软件的许可证费用,而这点已经和平台软件比较无关了。事实上,如果要比较的话,这些产品的费用也远低于Windows平台的应用软件许可费用。

结论:在软件采购费用上,Linux无疑远远低于Windows,成为这个较量上的大赢家(见表1)。


表1 软件采购费用对比(此表援引自RFG报告)



操作系统 初期费用 第2年 第3年 总额
Linux $400 $0 $0 $400
Solaris $27,500 $0 $0 $27,500
Windows $5,320 $1,330 $1,330 $7,980




硬件采购和维护费用


Windows和Linux系统大部分都被部署在主流的IA32服务器(32位PC服务器)上,从Linux系统的设计思路和代码结构来看,对于同样的一个企业应用需求,Linux系统所需要的底线硬件配置要略低于同等情况下的Windows系统。虽然这种优势客观存在,但由于探讨的是企业级应用而非个人使用,企业对于硬件采购有独立的考虑和计划,所以Linux的这种优势并不非常明显。客观地说,在同样的一个企业应用需求面前,Windows系统和Linux系统有着差不多的硬件采购开销。这种成本投入和企业的应用有直接关系,和这两种OS平台的的体系结构差异实质上关系不大。

结论:在硬件采购和维护费用上,Linux 和Windows难分伯仲,主要原因是硬件采购和维护费用与客户的具体业务需求有关,与OS平台之间的差异无关(见表2)。


表2 硬件采购费用对比(此表引自RFG报告)



操作系统 购买费用 第2年维护费 第3年维护费 总额
Linux $37,511 $252 $252 $38,015
Solaris $345,400 $21,083 $21,083 $387,566
Windows $38,524 $259 $259 $39,042




软件维护费用


企业应用和个人应用的最大区别在于,企业普遍希望内部的IT系统在保证充分的安全性和健壮性的前提下,越少修改变动越好。企业希望其IT平台是一个牢固而稳定的计算平台。频繁的系统变动和修改,不但会严重损害计算平台对外持续服务的能力,而且将大幅度增加维护成本。有经验的Windows服务器管理员都很清楚,一个经常安装卸载软件/补丁,并且修改系统参数文件的Windows平台,其稳定性会以线性下降。因此,企业需要OS平台在这几个方面为其提供牢固而稳定的计算能力。

1. 安全性

安全性主要指的是网络安全和系统安全。每年全球企业投入在防止病毒和黑客袭击的问题上,就要耗费上亿美元,几乎所有企业的CIO和网络安全/系统安全公司都在高声疾呼安全对于企业正常生产运营的重要性。数不清的案例告诉我们,不管企业的平台硬件、平台软件投入有多大,如果计算平台没有强有力的防病毒、抗黑客能力,企业后期的维护费用将是高得惊人的,而为弥补由此带来的损失追加进去的成本,也是非常大的。

Windows系统设计局限性导致了其成为全球病毒/木马制造者的首要攻击目标。从Windows平台上花样繁多的防病毒/黑客软件,就可以看出这个平台在网络安全和系统安全上的脆弱性。Windows系统不同阶段发布的系统补丁Service Pack,虽然在一定程度上修复了自身的某些漏洞,但是由于其“封闭源代码”的开发模式,导致补丁的发布总是不够及时,补丁的质量总是不高,补丁的覆盖面不广。而频繁的发布Service Pack,使得企业需要不断地修改他们的生产性系统,由此又间接地导致了系统不稳定的问题,影响了企业生产业务系统的正常运作。一些著名防病毒/黑客的第三方软件公司的产品虽然可以在一定程度上有效地保护Windows系统,但是系统也因为安装了这些软件,增大了系统的开销,降低了整体计算能力。同时因防病毒/黑客软件自身的质量问题,导致Windows系统故障的事情也时有发生。
  
Windows VS Linux:成本之战(2)
作者:余军    本文选自:开放系统世界—赛迪网  2003年02月28日  

Linux系统的设计参考了Unix的体系结构,在安全性及代码结构安全性上,相对于Windows系统来说更胜一筹。首先,到目前为止,还没有病毒代码可以在Linux系统上存在并破坏系统,因为在Linux平台上,无论是正常的代码还是病毒代码,都需要权限来运行,病毒代码根本无法获得足够的权限来进行感染和破坏工作,因此也就失去了立足之本。Linux系统对于病毒这种形式的破坏具有相当的免疫力,仅此一项,就可以在软件维护期内减少大量的维护费用。服务器端因为不需要安装防病毒软件,从而确保了服务计算能力,避免了不必要的系统开销。这对于保护硬件投资,也具有一定的积极意义。Linux系统被大量地作为Internet网络服务器提供WWW、FTP、E-mail等服务。由于Linux的“开源”开发模式,任何组织或个人都可以在发现问题后,及时通知Linux开发社团,或者干脆直接加入到Linux社团的开发中去。这种完全开放的模式,使Linux可以在极短的时间内获得足够的用户反馈,同时在极短的时间内修补核心错误。Linux的核心采用了稳定版和实验版两个开发树的分叉开发方式。因此,Linux核心一直以一种稳健的速度公布于世,Linux核心不会因为某些商业利益而迫不得已在很短时间内发布新的“问题”版本。作为企业用户来说,他们完全可以将系统保持在一个稳定版本上,而不升级到带有新功能的高版本上。这样显然大大地提高了系统的稳定性,有效降低了变更/修改系统的次数,从而降低了软件维护的费用。

2. 可用性

系统可用性指的是系统持续对外服务的能力。企业应用不同于个人应用的另一个重要特征是企业的应用要求较高的可用性,也就是说,企业要求其计算平台具有较高的持续工作及对外服务能力。因为停机或重启就意味着企业的经营和生产要中断,企业就有可能遭受损失。计划停机或非计划停机都会给企业带来额外的成本负担,在某些时候,这些额外的成本将会高得惊人。

Windows系统在遭遇病毒袭击的时候,会停机;在打系统补丁需要系统重启的时候,会停机;在升级系统驱动或系统硬件的时候,会停机;在安装某些和系统有关的软件的时候,会停机。频繁停机或中止服务的直接结果是,导致在Windows平台之上的数据库应用、文件服务、账户管理服务、Internet服务、PDM及ERP等系统都要被迫中断。有时候为了一个补丁而停掉整个对外服务,哪怕只是10分钟,对于企业来说也是不可容忍的。因为在这种情况下,生产线数据无法进入数据库,销售人员无法访问内部报价系统,财务人员无法从ERP系统导出报表,因特网用户的在线购物要被迫中断……试问一个企业用户如果遭遇到这样的情况,他们需要花多少后期的追加成本才能弥补其损失?

Linux系统不怕病毒,不会因病毒而停机;Linux系统内核是模块化的,添加、修改大多数硬件驱动仅需要通过简单的两条模块控制指令即可完成,所以不需要停机;Linux核心版本比较稳定,不会因类似Windows那样频繁打Service Pack而停机;Linux上的绝大多数软件安装无需任何重新启动操作,后台守护进程的启动和关闭非常快捷,安装后立刻就可以使用。

Windows系统通过MSCS(微软集群服务)可以在两个节点上建立高可用性集群,来提高系统的整体可用性。但是Windows高级服务器版只能支持两个节点的MSCS集群服务,而如果企业希望在4个节点上运行MSCS高可用集群,恐怕只有使用Windows数据中心版才可以。无论是高级服务器版还是数据中心版,采用Windows的企业应用将会为此付出巨大的成本代价。

如果用户采用Linux高可用性集群,那么用户需要投入的就是一套Linux发行包加上一套高可用性集群软件(Linux发行包的价格上文已有阐述)。而Linux上的高可用集群价格也要比Windows平台集群软件略低(如NCR LifeKeeper、Kimberlite等),一套2节点的Linux高可用性集群,在软件采购费用上不会超过2.5万元人民币,并且也没有额外的许可证费用限制。更为可贵的是,由于Linux设计结构可以毫无困难地用普通的Linux发行包建立4节点、甚至8节点的高可用性集群,这点对于企业用户来说无疑是一个很大的帮助——企业可以借助Linux的弹性结构,方便地从2节点Linux高可用集群升级到4节点集群,提高了企业计算平台的整体可用性。

3. 可扩展性

可扩展性是指计算平台扩展自身计算能力的能力。目前无论是Windows还是Linux都可以支持4到32路的CPU。但是所需要的成本代价却非常悬殊。如果需要部署一套支持8节点以上的计算平台,就需要购买Windows 20000 Advanced Server。而对于Linux来说,要做的就是下载一个发行公司预编译好的企业级内核,或者干脆自己动手,将多路CPU功能添加进内核。此外,一个正常的企业随着业务规模的扩大,会在某个发展阶段将自己的服务器从IA32架构升级到IA64或RISC64平台,这时候就会面临一个业务应用的移植问题。很显而易见的是,从Linux平台移植到商业Unix平台的代价和风险,要较Windows系统小的多。这也是得益于Linux的设计思路和体系结构。

结论:通过对Linux和Windows这两个系统在软件维护费用投入上的多方面比较可以看出,Linux的设计思路和体系结构决定了其在企业应用环境下,能够以更为低廉的成本为企业提供一个稳定、安全、高可用及高扩展性的计算平台。所以,Linux以无可争辩的高性能价格比在软件维护方面胜出了Windows。


系统管理成本


系统管理成本是指企业为了维护计算平台的正常运作,投入在技术支持、培训和管理人员工资上的投入。系统管理成本是后期系统运营过程中成本投入的主要科目,占据了TCO的较大比重。

首先来看技术支持方面的费用。Windows提供的是有偿的技术支持服务,微软的合作伙伴(代理商、解决方案供应商)也会提供相应的技术支持。作为看得见的部分,Windows的技术支持收费基本上集中在产品的基础支持和架构支持上。基础支持的部分基本上通过微软的渠道伙伴和微软支持中心完成;架构支持方面主要是通过微软工程师和微软的技术合作伙伴来提供。由于Windows系统采用图形化的界面屏蔽了很多技术细节,因此在操作上容易上手,出错信息或故障也通过图形方式出现。但是企业需要的是快捷、有效的技术支持,由于“闭源”的模式,因此Windows系统的内部技术实际上掌握在以微软为中心的少数供应商手上。不管Windows的界面有多友好,技术支持的队伍有多庞大,在企业应用遇到一些比较严重影响客户应用的问题时,仍旧要层层上报到微软公司的核心支持部门;而那些对业务系统影响不大的问题,则由支持中心或第三方伙伴来提供。从整个技术支持的流程和周期来看,Windows平台的技术支持仍旧不是一种快捷、有效的支持手段。客户的感受是收费的技术支持服务的确可以及时提供给用户,但是问题的解决却要经过好几个环节的流转传递,才会真正得以解决。按照“20/80”定律,可以粗略地认为,Windows平台的最终用户花了80%的成本投入来购买到的是仅能解决20%关键问题的技术支持服务。

Linux是以“开源”模式进行发展和推广的,不论是非营利的开发社团还是商业Linux发行公司,他们的技术支持服务都建立在坚实的开放模型之上。所谓坚实的开放模型指的是:

◆任何团体和个人都可以对Linux的问题和错误进行汇报或参与修改,这是广度一;

◆任何团低和个人都可以对Linux的问题进行技术支持和解答,这是广度二;

◆任何团体和个人都可以参与从Linux平台应用到内核贯穿Linux平台的开发工作,这是深度一;

◆任何团体和个人都可以从事和Linux 有关的技术支持服务工作或建立专业支持机构,这是深度二。

换句话说,由于不是由个人或商业Linux公司拥有Linux,所以也不存在类似微软公司的渠道限制和发展管理机制。Linux最大限度地吸纳了技术支持的力量,打破了技术沟通的隔阂。部署Linux的企业,可以充分利用这个特点,综合商业支持和非商业支持的特点。一般来说,企业可以借助广大Linux社团,免费解决80%的基础性问题;也可以购买商业Linux公司或专业服务供应商的收费服务,来解决20%的关键性问题。大量企业机构成功运营Linux平台也证明,通过这种组合方式,能够有效地降低TCO,提高投资回报率。


人力成本


行业内普遍认为一个商业Unix管理员的工资和成本要高于一个Windows管理员,这点放在Linux上,情况就发生了变化。

让我们来澄清一个计算工资方法上的误区:传统情况往往只比较Linux和Windows管理员的工资,但是他们的工资待遇其实和平台技术无关,而是由人力市场的雇佣成本来决定的。当一个技术并不普及,掌握并能够运用的人相对较少的时候,此类人员的雇佣成本也相对较高。当一个技术普遍流行,能够掌握并且运用的人群较多的时候,人力市场的普遍雇佣成本也随之下降。大家可以通过MCSE证书的快速贬值和Windows管理员市场雇佣价格快速下跌清楚地看到这点。Linux系统采用“开源”方式,无论是在国内还是在国外,个人均可以以非常低廉的成本获得,2001年后的Linux热潮催生了大量Linux技术交流站点,大大降低了开始学习Linux的技术人员的门槛。目前在中国,一个IT工程师会用Linux已经不是一件稀罕的事情了。从自身体系结构上来说,Linux系统的学习曲线先高后低。由于Linux的开放体系,技术人员除了在开始学习的时候会感觉不太适应,会面对比较大的信息量之外,一旦入了门槛,就会充分体会到Linux清晰开放的结构给学习带来的巨大便利。所以,随着Linux市场的进一步扩大,Linux学习资源的进一步丰富,掌握并且运用Linux的技术人员将会越来越多,而人力市场的雇佣成本也会随之下降。

除了看企业用以支付给系统管理人员的工资外,为了揭示两种不同OS平台在雇佣成本上的本质差异,还应该计算单个计算单元上单个人员工资成本。所谓单服务器单人员工资成本,是指企业投入在每个计算平台上的人员工资成本。通过将人员工资成本和计算平台相联系,可以清晰地看到Linux和Windows在人力成本上的显著差异。由于Linux天生就是为网络而设计的开放体系结构的产品,具有极强的网络能力和可管理性,所以在一个样例企业中,一个Linux管理员可以有效管理44台计算平台,而一个Windows管理员可以管理10台左右的计算平台,所以虽然Linux管理人员的薪水目前略高于Windows平台管理人员,但是如果将他们可管理计算平台的能力考虑进去后,就会发现问题的实质是,企业投入在每个计算单元上的人力成本,Linux要比Windows低5倍。当然,管理人员的经验、系统的完备性、管理工具的完备性与否等都会影响人力成本。

结论:系统管理成本=技术支持费用+管理人员工资费用。Windows系统平台的技术支持费用要高于Linux平台,Linux平台的管理人员费用要略高于Windows平台,但分摊在每个计算单元上的投入要远小于Windows平台。换句话说,Linux平台管理人员的“性价比” 要好于Windows平台管理人员(见表4)。


表3 系统管理人力成本对比(此表援引自RFG报告)



操作系统 外部支持花费 系统管理员工资 3年总资本
Linux <$10 $12,010 $36,060
Solaris $19,309 $29,509 $146,454
Windows $1,520 $46,360 $143,640




表4 每计算单元的人力成本对比(此表援引自RFG报告)



操作系统 每管理员工资成本 每管理员服务器数 每个服务器折合的工资成本 每物理单元折合的工资成本
Linux $71,400 44 $1,623 $12,010
Solaris $85,844 6.4 $13,413 $29,509
Windows $68,500 10 $6,850 $52,060




总结


纵观商业历史,一个新产品、新概念出现的时候,总是会因挑战现存公司利益而遭到各方面的攻击或扼杀。目前,关于Linux和Windows的企业应用领域的“战争”已经渐渐进入白热化阶段,无论是IDC的TCO分析还是其它公司的TCO分析,都只是从成本的角度来描绘他们目前的状态。但如果想要在企业部署计算平台之时能够有一个正确的选择,还应当考虑选型过程中另外一个重要指标投资回报率(ROI),只有结合了TCO和ROI的分析,才能够清楚地告诉企业决策层哪个系统真正可以满足本企业的计算要求。经过对软硬件采购维护费用/管理成本费用的分析,可以充分看出Linux作为一个出色的企业计算平台,为企业提供了高性能、低成本的解决方案。虽然它仍旧需要较长一段时间来完善和发展自身,但从现在的Linux身上,已经依稀看到操作系统界“未来领军技术”的风采。愿Linux在与Windows的较量中,愈战愈勇。

(责任编辑 Sunny)
发表于 2003-4-16 14:05:21 | 显示全部楼层
LINUX培训的费用才是最多的。
发表于 2003-5-8 16:36:42 | 显示全部楼层
微软是靠盗版的社会培训才得到的这种损耗,不然以其封闭的路线,应该是最难学的才是,因为没有盗版就没有资料。
发表于 2003-5-13 14:30:23 | 显示全部楼层

支持LINUX

我支持LINUX.我现在正在努力学习以后我打算将公司的服务器转成LINUX的
发表于 2003-5-22 16:19:00 | 显示全部楼层
先按兵不动吧!
发表于 2003-5-31 23:22:58 | 显示全部楼层
no no no.
如果做过项目就知道。Linux的成本远远大于Windows平台的成本
支持多路集群的Linux发行版本(Redhat AS 2.1)的价格大家看看
就知道了,我订的2套Windows 2000 Advanced Server才2w不到,
而且Linux技术人员的工资也比Windows的高。

我希望越来越多的人使用Linux,使Linux普遍。这样才能真正的
发展Linux!从我(一个MCT)开始,努力吧!!
发表于 2003-6-5 13:20:23 | 显示全部楼层
现在linux人才匮乏,各位前辈有什么看法呢,
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表