编程语言

img Kamus

成长,并烦恼着 - Linux操作系统企业级应用调查报告

发表于2004/10/12 16:11:00  1960人阅读

 转载自“网络世界”
原文链接:http://www.cnw.com.cn/issues/article.asp?filename=n43630.asp
 
    Linux一直在成长着,这是一个不争的事实,但是,任何成长都有烦恼伴随。

    Linux打小一直被一些开放源码的爱好者培养着,一些对底层技术狂热追捧的人研究和利用开放源码的Linux,在其上构建一些独特的应用,人们希望这样的操作系统可以打破一些专有或者形成垄断态势的系统一直以来的霸道,他们觉得Linux应该进入企业级的应用中去,尤其是企业级关键应用,这样才能够得到真正的使用价值,成长为可以转变为财富的劳动力。这正是越来越多的发行Linux商用版本的系统厂商们崛起的原因,也正是越来越多相关领域的厂商加入到加速其转化为劳动力的运动中的原因。这运动从90年代中后期一直到现在,Linux系统厂商们、IT巨鳄们对Linux的热情与日俱增,可是促使其转化为劳动力的真正买单的用户们对于它的看法又是怎样的呢?Linux成长为真正劳动力的过程中到底经历着怎样的烦恼?希望大家能够从这次的专题中找到些答案。

    最近在我们CNW的网站(www.cnw.com.cn)上进行了一次小规模的用户调查,我们相信调查结果对用户有相当的参考价值,并能够给出一些上述问题的答案。

    上篇

    体验Linux应用最前沿

    调研问题1:对Linux操作系统的熟悉程度?

    结果数据:

    数据启示:用户对于Linux的熟悉程度是一个很重要的问题,熟悉程度从某种意义上说决定着他们的接受程度。结果数据显示,大部分的用户对于Linux只是“接触过”,占有效调查结果的37.5%,从更深入的电话访问中,记者了解到,这种“接触过”包括以往的一些测试经验,包括跟自己相关的客户的经验,包括听到的一些宣传、培训等等,基本上是停留一个很初步的认识上,但对Linux的一些特性、功能并不清楚。非常熟悉Linux的用户一般是研发或维护人员,他们日常工作都是围绕Linux做开发或者维护基于Linux的Web服务器等应用。

    调研问题2:对Linux作为企业级操作系统的看法?

    结果数据:

    数据启示:其实目前在一些中小企业中,Linux作为部署Web服务器应用的操作系统已经是一个很普遍的现象,在去年我们《网络世界》评测实验室组织的基于应用方案的Web服务器测试前期调研中,就了解到有接近一半的中小企业在部署Web应用中选择了Linux操作系统,这次的调查是希望了解用户对于使用Linux作为企业级关键业务应用平台的看法,所以我们准备了四个内容更为具体的备选答案。

    从调查结果来看,没有人认为Linux各方面都还不成熟,大多数还是认为Linux系统本身功能已经完备、成熟,但是缺乏应用软件,也就是说,缺乏应用是Linux的最大缺陷。认为Linux已经成熟可用的基本上是搞开发的人,还有一些做集成的工程师,他们曾经帮客户部署过基于Linux的应用。在对一些支持Linux平台的硬件系统厂商和中间件厂商的采访中,记者了解到,成本的优势主要来源于IA架构的服务器硬件产品和Linux操作系统本身的成本,用户对于Linux开始主动去认识和接受,但是,这种应用还是大部分限定于Linux应用最成熟的Web服务器应用。也有很少数的用户开始使用基于Linux的数据库和部署应用服务器软件,但相对于其他的系统平台,尤其是部署关键业务应用的Unix、Windows平台来看,使用Linux的仍然是少数。这其中的原因一部分就是Linux的不成熟,系统本身的功能还不完备,更重要的是,缺乏应用。Unisys前不久刚刚宣布其ES7000服务器上可运行Linux,Unisys与Novell 、Red Hat携手合作提供基于Linux解决方案的服务和支持,他们同时还公布了Linux系统中首创的动态分区功能。Unisys大中华区系统科技事业部总经理陈忠郁在接受记者采访时提到,虽然这样的合作越来越多,支持Linux的硬件平台也越来越多,但是,相对于Windows平台,Linux的应用还太少,这需要时间和更多的系统厂商、ISV等之间的合作去慢慢完成,他认为,Linux规模化地进入企业级关键应用领域还需要至少2~3年的时间。

    此外,在“不会选择部署Linux的原因”这个问题的回答中,有62.5%的人选择了缺乏应用软件这项,这也说明,应用是Linux企业级应用推广下去的关键。

    调研问题3:部署Linux系统承担什么样的应用?

    结果数据:

    数据启示:在这个问题的解答中,绝大部分的用户把部署Web服务器作为选择之一,这个比例达到75%。认为Linux可以作为部署数据库服务器和大型应用软件/关键业务应用的平台的占22.5%。认为可作为数据库服务器和部署应用服务器软件平台的用户比例也很大。网上也有一些调查显示,基于Linux的开放源代码数据库越来越受到关注,对市场的挑战来自三家主要竞争者: MySQL、MaxDB和Postgres SQL。其实,部署大型的数据库服务器也是企业级关键应用之一,从这些数据来看,用户们希望Linux所能承担的任务范围已经扩展了,并慢慢向关键领域靠近,这其中不乏系统厂商们大力推进的原因。像Oracle在全线的数据库产品都可以支持Linux系统的基础上,还在大力推进Linux本身的应用和发展,包括参与到内核级的研发、新的数据库产品专门针对一些商用Linux系统做开发等,虽然其有借助开放源代码的Linux机会打进操作系统江山的动机,但作为最重要的数据库厂商之一,对Linux的推动作用还是相当大。Unisys认为IA架构的服务器产品与Linux操作系统的灵活性和开放性结合起来,可以为用户提供性能和价格兼备优势的新产品,在高端应用的领域可以取代价格昂贵的基于RISC的专有系统。Unisys的陈忠郁经理告诉记者,现在已经到了逐鹿Unix/RISC市场的时候,传统RISC系统的应用领域应该是Linux向高端关键业务应用长驱直入的突破点。

    值得注意的是,来自保险、电力等大行业的用户都没有选择将Linux部署为运行关键业务的平台。在更深入的电话访谈中,他们对于这个问题还是比较保守,一方面是对Linux的熟悉程度不够,另一方面对Linux的安全性和功能的完备性还比较怀疑。

    调研问题4:Linux作为企业级核心应用系统在哪些方面还需努力?

    结果数据:

    数据启示:从数据来看,应用软件的支持是一个最为突出的问题。从下面的“应用软件缺乏”图中可以看到,认为缺乏专业应用软件的用户达到72.5%,认为缺乏大型管理软件和应用服务器软件的用户比例都超过了50%,这也就是说,构建在Linux之上的、针对特别应用的专业软件是用户急需的,独立的Linux厂商应该加大与ISV、集成商的合作,开发针对性强的行业解决方案和专业应用软件;管理类软件和安全类软件厂商也应该看到这样的商机,加速对Linux的支持以及与Linux系统厂商的合作。

    还有一个突出的问题是技术、服务的支持。在电话采访中,很多用户都觉得Linux系统厂商的服务不到位,虽然是开源的系统,但是一旦作为商用系统被用户购买,就应该提供充分的技术支持和服务,用户普遍希望提供现场的上门服务,来解决他们在应用中遇到的问题,还需要一些资深的技术工程师进行技术咨询或培训。

    还有些用户提到了安全性方面的不足,他们认为,Linux不像Windows那样有太多的使用者,发现什么安全问题可以及时补救,也就是说,Linux还缺少一些安全方面的机制和及时的安全补救手段,对一些类型的攻击不能防范,所以,Linux急需更多的安全软件支持。

    一直以来,Linux的成本问题都是众支持者将其推广到企业级核心应用的最强劲的武器,无论是系统厂商、数据库厂商还是中间件厂商,他们都认为,Linux是取代Windows和专有Unix等老牌操作系统的免费替代产品,尤其是Linux与IA架构的硬件系统相结合后,其成本优势更为突出。但事实是,每样东西都有价格,包括开放源代码软件,而且,构建于Linux之上的中间件也好、数据库也罢,都不会因为是Linux而变得廉价。这里我们只看Linux本身,算上购买、迁移、操作和支持费用时,它还真正便宜吗?换句话说,Linux的TCO(总拥有成本)比Unix或Windows的TCO更低吗?

    中篇

    Linux的真实费用

    简单的答案如下:企业在其IT基础设施上采用Linux越全面,它就可能从对这种操作系统的前期投资中获得更多的经济收益。这些投资包括Linux培训与工具以及从Unix或Windows环境迁移的费用,经济收益将随着市场上出现更好的管理工具、更多的第三方厂商支持和更多的技术熟练的Linux系统管理员而不断增加。

    从Unix或Windows迁移到Linux带来的收益受4类主要费用驱动:购买、迁移、管理和支持费用。下面简要论述各类费用中的一些关键问题。

    硬件与软件费用

    用规模化生产的IA架构机器代替昂贵的基于RISC处理器的Unix系统所得到的成本节约是推动采用Linux最主要的因素之一。计算硬件费用很容易,Forrester Research首席分析师Ted Schadler说:“由于IA的经济性,将Unix工作负载转移到Linux上是一件很容易做出的决定,RISC架构的硬件系统与IA架构的硬件系统价格上的差别在5000~25000美元之间。

    在软件方面,费用差异不太明显。IDC、Meta Group、Robert Frances Group的研究发现,Linux许可证的费用低于Windows的许可证费用。但一些分析人士认为,这不是一种全面一对一的比较。Forrester的Schadler指出:“当开发应用时,选择Windows还是Linux不是问题,这是选择Linux上的Java还是选择Windows的决定。Microsoft向Windows、SQL Server以及.Net框架中捆绑了很多东西,如果计划开发一种普通应用并以包含一切的价格来部署它,Windows将毫不费劲地取胜,因为会得到那么多捆绑的东西。”

    在硬件和软件方面,Linux常常被忽视的成本优势是它在未来的迁移和升级道路上提供的灵活性,因为在使用Linux时,可以自己掌握自己的升级周期。

    迁移费用

    在考虑从Unix或Windows向Linux迁移时,企业应当仔细分析一次性迁移费用。最大的花费之一是培训系统管理员尽快掌握Linux。

    事实上,Unix技能与Linux技能非常接近,这就减少了从Unix向Linux迁移的费用。而对于一个纯Windows用户,并且没有任何Linux技能,那么障碍非常巨大。那些具有Unix技能但不能马上适应的人员可以方便地下载Linux,在家里试用。

    由于重新培训费用最少并且硬件采购费用大幅降低,Unix到Linux迁移一般是经济上的合理选择;但是,由于重新培训费用较多并且节省的硬件购买费用较少,Windows到Linux迁移更像是一件靠运气来决定的事情。

    其他的迁移费用包括为了重现Linux打算取代的平台上已有的功能而可能必须重写的代码、必须迁移的数据、与后端系统集成的工作以及必须购买的软件;折旧是很多人没有预想到的隐藏的迁移费用;一些中间件,如应用服务器,可以容易地移植到Linux上,如果原来的应用已经运行在这样的中间件上,一次性迁移费用将会减少。

    管理费用

    到目前为止,大多数Linux TCO研究中的最大费用是今后运营系统管理所需的人员费用。在2002年IDC进行的一次Windows与Linux比较研究中,人员费用占这两种环境5年总费用的62%,它还造成了两种系统间最大的费用差,Windows以略低的费用领先一步。

    虽然多数分析人士认为Windows管理人员的费用低于Linux系统管理员,但实际的争论焦点集中在整合的成本收益以及用于Linux平台的管理软件工具的可用性和质量上。

    Oracle的观点是,简单地将Linux与其他操作系统一起使用的用户可能不会节省费用,并提出了整合的论点:如果全面迁移到Linux上并购买或开发强健的管理工具,那么在Linux上可以节省更多的费用,因为Linux开发人员可以无拘无束地利用Linux操作系统管理更多的机器、更大的工作负载,但只需要更少的管理人员。

    一些大型Unix系统的用户认为,在Linux上,工具和流程以及自动化功能还没有发展到它们在Unix上所达到的水平,因此迁移到Linux节省的费用为零。

    一家医疗中心Cedars-Sinai的首席技术官Duncan发现缺少某些节省费用的关键工具,虽然他对其机构迁移到Linux总体上感到满意。Duncan说:“备份一直是一个烦人的问题。”他指出作为IBM的Tivoli Storage Manager的一部分,该医疗中心一直在运行在AIX和Windows NT上的Oracle数据库上使用热备份代理,但是这种代理程序还不能用于Linux。Duncan还发现服务器对SAN的支持可能存在问题。

    安全管理的费用似乎一直是Linux优于Windows的一个管理费用领域。Duncan 说,Cedars-Sinai迁移到Linux上的一个重要原因就是由于热修补、服务包等东西,“我们需要在NT服务器上进行大量改动,我们花在修改NT服务器上的时间的确多得吓人,我们必须能够设置服务器,然后就不去理睬它,正是从这种观点出发,我们迁移到了Linux上。”

    支持费用

    Linux支持者称,Linux的支持费用更低廉,有种类更多的厂商为它提供支持。他们称Linux机器常常运行几年时间都不需要进行一次重新启动。

    当一台新Linux机器崩溃时,要么更换这台机器,因为更换的费用比修理更便宜,要么采用一种被称为“Google服务”的作法,即在Web新闻组和留言板上寻找解决办法。企业用户正在逐渐消除他们最初对这种支持方法的怀疑。以前,Linux支持是阻碍企业采用的障碍,现在它正在变为一个长处。

    用户可能选择来自硬件或软件厂商、经销厂商或第三方的支持,这种情况可能出现在Windows上,但是在使用Microsoft解决方案时,提供者不可能实际地为你修改Windows,而所有Linux支持厂商都同样具有这种能力。

想迁移吗?请考虑:Linux开始进入企业,技术人员可以评估何时和何处进行迁移才是合理的选择。
成本因素 需要考虑的问题 使用Linux的最大赢家
OS购买费用 Linux系统中包含哪些东西?对应的基础上,全软件栈的费用是什么? 迅速发展的企业将从更低的单位机器购买成本中受益。
硬件购买费用 能通过利用廉价的Intel集群代替Unix机器节省资金,并因此避免"硬件锁定"吗? 目前使用Unix的机构、迅速发展的企业和水平扩展的环境。
支持费用 关键ISV对Linux的支持同他们对其他平台的支持一样强有力吗?你可以使用"Google服务"吗? 拥有不太复杂的支持需要或较多内部Linux专业知识的企业。
系统管理费用 Linux上有你需要的关键工具吗?当你扩展时,能从管理经验中受益吗? 拥有掌握Linux系统的现成人才并使用Unix的机构,以及拥有可以整合到一起的多种OS平台的企业。
安全相关费用和风险费用 每种平台隐含的安全成本(风险和所需要补丁管理资源成本)是什么? 放弃经常修补的Windows环境的企业。
一次性迁移和转换费用 重大迁移不可避免吗?重新培训的费用是多少? 已经在便于迁移的应用服务器上运行关键应用的机构。
一次性或今后的集成费用 将已有Unix、Windows或遗留应用集成到新的Linux环境中的费用是多少? Unix应用基础比Windows应用基础更大的企业。

    Linux已经被广泛部署到众多的数据中心内,通常用作Web服务器或文件服务器,也可用于处理诸如DNS和DHCP等网络任务,但用作运行关键企业应用的平台,Linux似乎并不被看好,通常用于这一场合的都是Solaris、AIX或HP/UX,为应用提供最高水平的性能和扩展能力。然而,很多人都认为,随着Linux v2.6新版内核的发布,这种情况将会改变,也就是说,Linux v2.6新版内核将成为Linux进入企业级关键应用的强大助推力。那么,v2.6新版内核究竟带来了什么?

    下篇

    更大、更强的内核Linux v2.6

    Linux v2.6内核开创了一个新的时代,可以支持大型运算环境和更大的负载,使Linux能够胜任目前由Solaris、AIX或HP/UX执行的高难度任务。

    v2.6内核的最主要特性就是支持大型服务器架构。它能够支持最大64GB的内存、能够处理大于2TB的文件系统,并且在基于x86的SMP系统中支持64个CPU,这些特性都使该内核和Linux更有资格成为关键任务系统的运行平台。新内核还支持NUMA(非统一内存存取)系统、下一代的SMP架构以及PAE(物理地址扩展)。该内核打破了从一开始就强加在Linux头上的一些人为限制,支持的主要设备数量达到了4096个,而每个主要设备的次要设备编号可高达100万个,对于多数用户而言,这些编号远远超过实际的需求,但对于那些需要对付许多设备的企业系统来说,这种解决方法是一次巨大的飞跃。另外,新的v2.6内核还包含NPTL(本地POSIX线程库),用于取代v2.4的LinuxThreads,NPTL使Linux具备了企业级的线程支持,其性能要远远超越LinuxThreads的水平。

    为速度而生

    在v2.6内核发布之前,Linux执行任务的方式是先到先得,这样会干扰内核的中断任务来处理另外的进程或功能。然而,v2.6内核在需要的时候可以优先占用,并且对那些需要立即处理的工作分配资源,然后再继续先前被打断的任务。这种中断只会发生在几分之一秒的时间内,而且通常不会引人注意,但会让人感觉到系统性能在整体上非常平滑。v2.6内核并没有使Linux成为一种实时操作系统,但它正在不断努力,确保在需要的时间随时处理和完成任务。

    这些增强特性的核心是一种新的进程调度程序,内核中的进程调度程序可以在系统进程之间分配CPU资源。调度程序的性能直接影响系统的响应和进程的延迟。在v2.6内核中,新的0(1) 调度程序融入了新的算法,可以提高系统的性能,尤其是交互式任务的性能。v2.6内核有两种新的I/O调度程序。在缺省状态下使用的是预测性程序,可有效提高处理I/O调度时的表现,确保所有的进程都可以获得所需要的I/O时间,无需排队。另外一种是时限调度程序,可以使用三种队列方式为请求分配时间,而预测性调度程序只会在这些进程请求实际发出之前试图预测进程I/O请求。无论采用哪一种方法,新的进程和I/O调度程序都大幅超越了v2.4的水平。

    v2.6内核测试

    使用实际情况下用户最可能应用到的环境来测试新内核对全面认识新内核非常有帮助。

    美国《Network World》曾经做过一个全面的测试,对比2.4和2.6两个内核的性能。测试在三个完全不同的硬件平台上运行:Intel Xeon(x86)、Intel安腾(IA-64)和AMD Opteron (x86_64)。基本的操作系统采用的是Red Hat Linux Enterprise Server v3.0,但内核测试需要专门为每台服务器编译的定制内核。v2.4测试使用的是官方v2.4.23内核,而v2.6测试使用的是官方的v2.6.0内核。为了在不同的平台上运行,必须对内核进行针对性的编译,例如使用了x86-64.org提供的针对AMD64平台的x86_64补丁。

    文件共享测试专门用于模拟标准的Samba服务器负载,基于带本地验证的Samba v3.0.1。在Xeon系统上,v2.4内核的平均吞吐速率为38.85MBps,而v2.6内核达到了67.30MBps,提高的幅度达到了73%。安腾测试中也显示出两种内核间类似的性能差异,v2.6的领先幅度达52%。而在Opteron系统上,v2.4内核的速率为49.37MBps,而v2.6的结果竟高达72.92MBps,提高的幅度达48%。

    Samba测试中得到的性能改善在很大程度上应当归功于v2.6内核中改进后的调度程序和I/O子系统。

    数据库测试环境是基于MySQL v3.23.58,并运行在MySQL 提供的SQL基准测试集上。从整体上看,v2.6内核已经在数据库测试中的性能上完全超过了v2.4内核,尤其是在安腾服务器上,与v2.4内核相比,新版内核的性能提升幅度达到了23%(领先519秒)。而在Xeon平台上,v2.6表现出13%的提升(领先200秒)。在Opteron服务器上,速度提高的幅度竟然达到了29%(领先415秒)。在所有测试中,最令人印象深刻的是表格插入,v2.6内核在Xeon服务器上的性能提高达10%(领先100秒),而在Opteron和安腾平台上的表现更是无比强劲。

    Web服务器测试也显示出非常巨大的改进。静态页面测试使用的是一个大小为21.5KB的HTML页面,内含两张由Apache 2.0.48服务的25KB图像。测试的目标是使用Apache的ab基准工具来测量每秒的请求数。在Xeon平台上,v2.6内核比v.2.4要领先不到1000次请求/秒,提高的幅度达40%。而在安腾服务器上,v2.6的性能提高幅度达47%。

    Web应用测试使用的是一个用Perl写成的定制CGI脚本,指向的是运行在同一系统上的MySQL数据库。总体数字显示出结果提升的幅度比静态测试要小一些,但Opteron测试是例外,所有平台的一般性能改善程度介于14%和22%之间。

    发展方向

    专家指出,在v2.4内核上运行大型数据库和其他关键任务应用的IT企业应该开始对v2.6进行初步的测试。v2.6内核是未来的主导,企业们应当开始熟悉这一新内核的能力,并且为未来的应用做一些准备工作。

    为了充分利用v2.6内核的增强功能,在构建服务器架构时,管理员需要配置和建立针对其特定工作负载的定制内核,但这类特定用途内核存在的问题是,它们与官方发布的内核存在许多差异,无论是在缺省选项的选择还是包含的补丁都有所不同。 但另一方面,这些内核通常支持的硬件非常广泛,因为它们几乎每一个模块都经过了配置,能够很好地确保目标系统的硬件兼容性。

    同时,v2.6内核也存在许多缺陷,内核开发人员也在积极寻找并解决这些问题。如果开始考虑移植到v2.6内核,强烈建议在进行任何生产性实施之前对新内核进行全面的测试。

    v2.6内核自豪地具备了许多新的特性,并且明显地改善了性能。该内核也将使Linux做好准备,迎接新一阶段的挑战:真正的企业级关键应用。为了抢占数据中心市场,Linux必须能够随时适应已有用户的需求变化,同时不断拓展新的领域,将更多的用户拉入Linux阵营。从目前的情况来看,v2.6内核已经为这项任务做好了准备。

阅读全文
0 0

相关文章推荐

img
取 消
img