不过,很多看似水火不容的决斗很多时候并不是非此即彼的。
世纪之战
―― 7场技术决斗
几乎在进行每一次IT采购中,决策者都要在两种甚至更多种竞争的技术中做出选择,以决定将赌注押在哪种技术上。用户总是试图将风险减少到最低程度,用后备战略保护他们投下的赌注,但是在关键时刻必须做出选择:在竞争技术中,哪项技术的总拥有成本更低?这项技术适合于长期使用吗?新技术带来的好处是否大于更换老技术所造成的破坏?
以下是一些短兵相接的技术决斗,里面有引人注目的Windows与Linux对战报告,另外一些话题虽然不太显眼,但也许更重要,其中包括:作为服务提供的软件对常规软件;集中数据计算对分布式数据计算;刀片对大型SMP系统(对称多处理)系统;Fibre Channel对iSCSI等等。如果幸运的话,用户可能自己找到获胜的组合。
Windows VS Linux
――-这场战斗真的是新世纪之战吗?或者,这两位老冤家应当握手言和,和平共存?
Windows与Linux之间的战斗一直几乎像巨大的拉斯维加斯竞技场中的一次Don King历险那样大肆宣扬,包括那些尖声叫喊的支持者们。在一个角落中, Microsoft的铁杆支持者宣称Windows Server 2003是新世纪不死的小子,它克服了Windows服务器以前存在的所有问题;而在另一个角落,Linux的支持者声称这种开放源代码操作系统将满足企业的各种需要,同时不停数落着Microsoft庞大的代码和许可陷阱。
可惜的是,事实远没有表象上那样富于戏剧性。真正的搏斗发生在较小的竞赛场,而在这些搏斗中,Windows和Linux各有胜负。
那些希望看到流血场面的人肯定会失望,因为这两位自诩斗士的对手日益为和平共处而努力。例如,通过Samba从Linux服务器到Windows客户机可以共享文件已经很多年了,Linux与Active Directory的集成也已实现。还有对Windows域的集成,尽管一度比较难于管理,但现在这种情况已经不存在了。
在Windows方面,Microsoft SFU (Services for Unix) 3.5的发布证明,Microsoft正在做出一些与现代Unix系统集成的姿态。SFU的NIS(网络信息服务)和NFS(网络文件系统)服务相当完备,其Unix工具包甚至包括Perl和Korn外壳程序。事实上,这些工具将随Windows Server 2003 R2正式发布。
大多数企业在关键领域部署Linux服务器,而不是强制将所有的网络服务放在一个平台上。虽然这种趋势严格地讲不能算是新东西,但是它们所服务的领域正在发生变化。担负设计新网络使命的聪明的网络经理都应当把Windows和Linux作为重要演员考虑在内。
从历史上看,如果Windows网络中存在不多的几台Linux服务器,它们通常单独处理与Windows提供的服务没有什么关系的单一任务。而现在,Samba 3提供与Microsoft Active Directory的真正集成,使配置目录认证的Linux Web服务器、FTP服务器、文件服务器,特别是数据库与网络管理服务,变得十分容易。
相反,Microsoft方面在稳定性上的改进以及Active Directory对DNS的依靠,为Windows服务器处理DNS和DHCP任务提供了充分的理由。虽然Active Directory环境肯定可以与Linux配合提供DNS和DHCP服务,但是管理起来并不容易。
两种平台的文件和打印共享功能可能仍难分胜负。两种平台在很大程度上同样稳定。
不过,应该选择哪种Linux呢?Red Hat仍是企业应用的首选,但Novell的SuSE正在迅速赶上来。在Linux阵营中,对特定版本的忠贞几乎与对Microsoft的反抗一样强烈,这一点有时候会令人迷惑。最终选择哪种版本的决定通常在ISV级上做出。用户的数据库厂商支持什么用户就将使用什么――而这点对于使用Microsoft产品的企业同样适用。
好消息是Linux项目可以在运行于测试系统上的免许可费的版本上迅速开发,然后当它们投入生产时,可以迁移到需要支持的付费系统上。当然,如果管理员有足够技能的话,在生产应用中可能不需要得到厂商支持的版本。但对于关键业务系统来说,最好还是选择得到厂商支持的版本。
至于系统管理员,传统上雇佣Windows管理员一直比较容易,但是他们掌握的技能不如Linux管理员的技能那样丰富。虽然Windows在配置和安装上显得比较容易,但是完全地、正确地实现Active Director需要的技能超出了大多数普通Windows管理员所具备的技能。
Microsoft对这种局面负有不可推卸的责任,他们向获得MCSE证书的资格搀水,尽管Windows Server 2003证书考试比NT 4或Windows 2000的证书考试更为全面。但相比之下,Red Hat的RHCE(Red Hat认证工程师)资格需要经过严格的8小时试验室测验,不及格率达到80%。
随着困扰Linux的许可问题显现出了明显的缓和迹象,费用可能成为关注的焦点。Linux的TCO比Windows的TCO多还是少,取决于你的网络、应用和管理人员。病毒造成的网络故障的费用是多少的问题始终没有解决。敢于表达自己意见的少数派将继续叫喊他们的战争口号,而明智的IT机构在一旁看着这场冲突并在两边下注:因为他们知道这场战斗最终只会使他们的网络变得更好。
大型服务器VS刀片服务器
――刀片服务器群组似乎是满足应用需要的最佳扩展途径,但是前提是要有合适软件的配合。
人们通常以为一个巨人可以打败一群小矮人。也许这正是企业为何继续偏爱笨重的8路服务器,而忽视刀片服务器的原因。
刀片服务器从来没有像人们期待的那样迅速普及。第一批产品受到发热和存储存取问题的困扰,不过这些问题最终得到了解决――或者至少受到了控制。刀片服务器厂商面临的新问题是定义可以真正利用小型服务器农场(特别是那些运行Windows操作系统的服务器)执行单一任务的市场细分。刀片服务器的销售还由于无处不在的高功率1U架式服务器的存在而受到影响。1U服务器可能在扩展的方便程度上不如刀片服务器,但是到目前为止它们的价格的确低廉。
不过,将至关重要的服务交给一台庞大的服务器,然后享受性能和可靠性的回报:没人会忽视这种长期存在的、可以感觉到的吸引力。当然,这种选择可能已经由软件提供商做出了。目标应用最终是做出选择决定的关键因素――而这正是大多数刀片计划遭受失败的原因。
如果任务是提供网页服务、运行Terminal Server或Citrix会话,那么答案很简单:刀片或1U服务器更适合完成这项任务。发生整体故障的风险较小、专门为农场计算概念的软件设计以及节点能提供的较高负载平衡能力和服务水平,使规划变得容易――而且单个服务器的成本也十分低廉。
但传统上单个服务器缺乏真正的CPU虚拟化特性。群组模型中的所有小型服务器通常本地运行可群集的应用,并与一个中央文件存储设备通信来处理普通数据。真正的虚拟化要求单个应用跨一组小节点运行,而不是每个节点运行同一个应用的并行版本。
价格优势显然在刀片服务器一边。一台配置8块3GHz Xeon CPU、36GB硬盘和32GB RAM的8路、7U服务器价格大约为10万美元,这还不包括软件许可费。同样CPU和RAM规格的8台2 CPU刀片服务器,包括全套的机架和刀片机箱,只要求付出65,000美元。当然,但如果运行的是不能群集的应用,省钱仍是个梦想――你不得不为购买大家伙出大价钱。
最大的问题出现在使用刀片服务器完成核心任务,在高端应用方面缺少足够的软件支持。数据中心作为一种能够根据环境的变化而调整的实体(在这个实体中,计算资源从可供使用的处理器资源池分配给需要它们的应用)的概念是一个非常好的概念。硬件做好了这方面的准备,但软件现在还没有,除非主要的应用厂商甚至较小的ISV戒除推荐使用大型服务器运行他们应用的习惯,或者在真正的透明群集解决方案进入市场并得到应用厂商的支持之后。
当群集技术成为应用的标准,并且当提取计算资源就像使用CD-ROM一样成熟时,群集计算的支持者才会取得胜利。而刀片,或者那时其他什么名字的东西,也将取得胜利。
传统软件VS软件服务
――托管应用现在可能只占据一小块市场,但是从长期看,传统软件还有成功的可能吗?
当LAMP(Linux、Apache、MySQL和Perl/PHP/Python)中间件新兴厂商ActiveGrid公司创建人、CEO Peter Yared意识到他需要项目管理软件来协调公司的开发工作时,他尝试了Microsoft Project 2003。
这次试验没有持续很长时间。Yared在他的网志上置疑道:“2003??? 这个软件有3年没有改动过了!” 此外,特性和功能一点没有吸引力。所以,Yared转向了Basecamp。Basecamp是一种基于Web的应用,它也被用作检验现在流行的“Ruby on Rails”Web应用框架的试验场。结果如何呢?Yared写道,Basecamp“棒极了”。
10年来,很多人了解了通过Web提供软件的好处:零安装、平台独立性、随时随处的访问、不断的改进。但这样做的缺点同样显而易见:基于浏览器的应用无法与传统软件丰富的交互性、快速的响应性和离线保存本地数据的能力相媲美。但是,对现在叫做AJAX(异步JavaScript和XML)的新兴趣,使人们对前两个缺陷产生了怀疑。由于DHTML(动态HTML)的原因,基于浏览器的软件早已能够完成高度动态的交互应用,并自治地与远程XML服务互动。这两种功能(最近已经成为事实上的跨浏览器标准)成为新一代Web应用的发展动力,这些应用比很多人想象的更丰富、更具响应性。虽然仍然缺少一种离线使用的模型,但是这个问题的重要性随着连接性变得更加普及而减少。
人们不禁会将这描绘成一场老式软件(它们必须花费很大的气力来安装和配置)对向需要的地方流动的新型软件服务之间的决斗。当然,事实更为微妙。功能强大的AJAX式的应用,如Google的Gmail,不需要传统意义上的安装,而是在每次使用时刷新它的代码。安装代码与缓存代码之间有什么区别呢?区别并不明显,而且JavaScript和XML资源与Java小应用程序或.Net汇编也没有什么太大的差别。
同样,虽然没有本地存储的正式模型,但不同的机制已经存在。Internet Explorer 5引入了一种叫做“userData行为”的有限的持续功能。Tibco的General Interface是一种功能强大的AJAX工具包,它使用浏览器缓存保存和检索XML文件。BEA的Alchemy项目旨在将浏览器可存取的XML数据存储的概念变为现实,这个项目现在还没有启动,但是未来可能将以某种形式出现。
最后,不同的实现方式――包括基于浏览器的应用、涉及Java小应用程序或Flash部件的混合物以及Java Web Start和.Net ClickOnce等按需技术――必须提供同样的东西:全面的功能覆盖、丰富的行为、安全执行以及对本地存储的安全访问。在这场旷日持久的在4条战线展开的搏斗中(这场搏斗中是不可能出现惟一的胜利者的),最近已经重新画出了战线。2005年的AJAX革命证明了浏览器无与伦比的覆盖范围可以与毋庸置疑的丰富功能结合在一起。
当然,我们还看到了老的安全问题再次出现,正如当Firefox的Greasemonkey扩展的HTTP客户功能被发现易受到攻击,而不得不暂时关闭时。这里没有什么新东西――并且没有什么Firefox或基于浏览器的方式所特有的东西。如果用户希望软件以服务的形式提供,他们将继续努力在部分可信的和需求加载的软件可以为用户做什么与它可能给用户造成什么影响之间取得平衡。
数据整合VS数据联邦
――人们应当统一使用一种数据库平台,还是将现有的散布在不同位置的数据库连接在一起?
企业拥有分布在多个业务部门和位置的几十个,甚至几百个运营数据资源。用户可能需要立即得到一幅显示所有这些信息的清晰和整合的视图,以便更好地了解什么在正常运行,什么出现了问题――比如销售、客户服务、制造等方面。解决这个常见问题的办法涉及一项根本的决定:用户应当把所有的数据整合到一个单一的数据平台上,还是部署使其可以在数据现在所在位置查询所有数据的联邦解决方案?
过去,人们向整合方式投入了巨资。不过,联邦方式在最近几年有了很大的进步,这要归功于数据归档与元数据管理、访问不同系统的新的提取技术以及得到更深层数据的新方法。目前,联邦解决方案可以使用户将数据仓库中的历史数据与来自交易系统中的实时数据建立联系,甚至从内容管理系统和文件服务器中获取支持资料――没有了迁移数据的痛苦。
实际上,解决方案可能涉及这两种方法的混合。甚至数据集中化的最热心的支持者,即Oracle公司,也承认联邦必须成为所有业务战略的组成部分。联邦技术的最大鼓吹者IBM公司也没有对整合的好处视而不见。红色巨人(Oracle)与蓝色巨人(IBM)之间的差别在于侧重点的不同:Oracle会让你实现80%的整合和20%的联邦,而IBM把这个比例正好倒过来。
对于Oracle来说,做出整合的决定是普通的常识问题:保存在更少地方的更少数据拷贝导致更干净的数据和更好的信息。企业甚至无需触动数据库中的信息就可以不断改变业务流程。如果企业实现了标准化的单一平台,就可以利用通用的基础设施和工具集进行实时流程监测、历史分析和预测。
另一方面,数据联邦意味着不停地去追赶自己的尾巴。由于业务变化非常迅速,Oracle认为用户对联邦系统提出的任何要求都会在你部署它们时过时,任何复杂的有意义的联邦系统维护起来都是不可能的。
但IBM会告诉你,当你可以把数据集中在一起时,集中的数据的确很好,可是世界正朝着相反的方向发展。不信,看一看身边发展的事情。当今最大的信息技术创新之一――比如RFID,涉及在分散的位置上产生大量的数据。企业别无选择:只能解决数据多样性问题。
IBM认为,Oracle在违反事物的自然规律,并且掩盖发动一场克服数据随机性的持久战的困难和费用。将数据和应用迁移到一个单一的平台上不仅劳民伤财,而且从逻辑上讲是一场噩梦。企业要与盘根错节的系统依存关系(例如对连接在数据库上的不同应用做准确的分析)搏斗,而且还要在何时迁移问题上与最终用户作斗争。对于使用数据完成工作的用户来说,“现在”决不是整合的好时机。
这些论点可能过于笼统,但是通过更有意义的企业信息和更丰富、实时的业务智能性的两条道路已经清晰地出现在我们的面前。以IBM为代表的联邦阵营将重点放在集成异构的数据资源和优化跨多个系统的查询的中间件上,而Oracle的整合阵营则关注标准的数据库平台,并致力于提供将数据从一个数据库转移到另一个数据库的方法。
当然,与IBM和Oracle不同,企业IT部门玩不起整合还是联邦这场二选一的游戏。他们必须选择正确的工具或工具集合。实际上,这些选择将更多地取决于与现有架构和技能组合的兼容性,而非取决于选择一种概念并排斥另一种概念。
NAC对NAP
――网络接入管理可以阻挡不可信终端的闯入。Cisco和Microsoft正在为谁是这个领域中的执牛耳者拼个你死我活。
这一切起始于2003年8月爆发的Blaster蠕虫。Blaster灾难性的流行再一次证明,仅仅依靠边界网关保护是一种失败的安全战略。从那以后,用户开始更广泛地采用基于主机的个人防火墙,厂商开始谋划基于主机的方案来加强网络中存在的软肋。在终端防线应当如何发展这个问题上,最令人感兴趣的斗争发生在Cisco的NAC(网络进入控制)和Microsoft的NAP(网络访问保护)之间。
NAC和NAP都属于网络访问管理范畴,即端节点的隔离。端节点的隔离利用防火墙、防病毒软件、最新的补丁等等技术,确保计算机节点在得到安全的配置之后,才允许它们正常或连续访问网络。否则,它们将被隔离。
Cisco目前凭借其NAC平台在这个领域处于领先地位。若想运转起来,NAC需要Cisco的产品。所有遵从NAC的终端和应用服务器解决方案,如防病毒软件和防火墙等,都必须与免费提供的、常常是嵌入式的Cisco Trust Agent软件通信,来决定遵从性。NAC还需要可识别NAC的Cisco网络接入点设备和专有的Cisco Secure Access Control Server。
Microsoft的NAP目前仍处于早期开发阶段。NAP服务器将成为未来版本的Windows服务器的核心组件,不过, NAP的成本和许可费尚未确定。NAP需要一个NAP服务器(将在下一次服务器产品发布时推出)、一个NAP客户程序(XP Service Pack 2、Vista或Server 2003)、一个隔离服务器(Microsoft Internet Authentication Services)和一台或多台策略服务器。NAP在运行时,利用DHCP租用线路、VPN隔离、802.1x或采用x.509证书的IPSec控制接入。虽然NAP正在进行beta测试,还没有正式推出,但很多厂商已经承诺提供支持。
在这两种平台之间做出选择的风险可能是巨大的。NAC可能是更安全的解决方案,因为终端可以在1至3层的网络层上得到保护,但是它需要Cisco网络设备(Cisco可能最终允许其他网络设备厂商加入NAC家族)。从理论上讲,Cisco可以很容易地把NAC扩展到Microsoft产品之外,但目前只支持Windows客户程序。
NAP可能以低廉的价格进入市场。经过升级,Windows XP Service Pack 2可以成为NAP客户端。正如Microsoft目前的Network Quarantine Access Control产品一样,NAP可能作为免费的服务器部件提供。当用户定期升级Windows服务器时,用户可能无需支付额外的费用就可得到NAP。NAP不需要专有硬件,但是同时,缺少可靠的硬件也意味着恶意程序在NAP使能的网络上传输的可能性,略高于使用Cisco解决方案的网络。
NAC和NAP仍处于幼年期。很多厂商同时支持这两种平台,但是大多数网络管理员为了方便集中管理,将被迫选择加入某个阵营。Cisco和Microsoft都承诺实现两种平台的互操作性,甚至已经将自己的API授权给对方,不过,具体细节目前还未透露。
在NAC对NAP的战争中,第三种选择已经出现:Trusted Computing Group的TNC(可信任的网络连接)计划。从理论上讲,TNC架构的功能与另两种解决方案相同,但是不需要使用专有产品。Microsoft和Cisco已经做出了支持TNC的承诺,但是除非用户需要TNC兼容性,否则这两大巨头为何会支持一项威胁到自身利益的方案呢?
即使用户现在还没有考虑网络访问管理解决方案,现在的投资就有可能决定将用户未来锁定在一种或另一种安全方案中。
Vista VS Tiger
――OS X已经推出了第4版,因此Vista推出beta版表明Microsoft意识到它必须急起直追。
尽管Windows的用户界面是前后一致的,但它反映了一种顽固的企业理念:如果一个人喜爱自己的工作,那么这个人肯定是在上班时间偷奸耍滑。Windows单调、缺少灵气、僵化而且完全与实际的生活脱节。直到大约5年前,世界还觉得它很不错呢。
后来,Apple用OS X打破了这种宁静。这是一种具有华丽、优雅和才华横溢的表示层的操作系统加应用环境,以致大多数还不熟悉Mac的人几乎无法认真对待OS X。尽管它在美学上显得有点过于华丽,但是仔细研究的话,就会发现这完全是有意而为的――Apple以用户为中心的GUI与以应用为中心的GUI方式是格格不入的。
现在,人们的审美观正符合Apple的理念。Microsoft的Windows Vista,也就是曾经被叫做Longhorn的操作系统,标志着Microsoft向承诺单调沉闷的桌面用户界面可能并不符合所有人的利益迈出的第一步。
Apple应该得到100%的赞扬,因为它证明如果一个操作系统能集图形、文本、媒体、HTML和动画服务于一体,开发人员会很喜欢它。不仅如此,各种类型的应用――从高贵的数据库客户端和管理控制台、到Office、到奇异的卫星轨道制图软件、到成百上千的未加雕琢的OS X免费软件和共享软件――都把GUI服务应用于实际应用。Apple利用免费工具和文献资料使利用GUI变得易如反掌。随着OS X 10.4 (Tiger)的发布,文献资料的质量由尚能接受一举上升为典范级别。所有这些使那些不熟悉Xcode以及相关工具包的人不敢相信它们是免费的。
假如Tiger是第一代操作系统,那Apple就会具有巨大的领先优势。可是Tiger不仅是Apple的第4代OS技术,而且它还在每个季度进行重大升级。OS X的5年历史给Microsoft和其开发人员留下了很多需要追赶的东西。
坦率地说,对Windows Vista并没有太多的好话可说,除了Microsoft终于把Windows的图形绘制功能放到了本该属于的地方,即放在了PC的GPU(图形处理单元)里。如果这就是Windows Vista将要完成的所有使命(而除此之外还有很多事情要做),将图形绘制功能交给GPU是Microsoft迈出的第一步,也是巨大的一步。Apple从经验中了解到,取悦Mac用户之道是为小众市场(如视频制作、广告图形、出版、动画和科学可视化)开发的技术可用于所有应用。
而对于Microsoft来说,出现在Windows Vista中的小众市场技术是DirectX,即为视频游戏开发人员建立的图形加速框架。Microsoft在平滑、美感、引人入胜的用户体验方面的努力不可能有比这更强有力的开始了。这或许标志着Microsoft争取用户人心的斗争的真正开始。
Fibre Channel VS iSCSI
――这两个竞争对手的价格和性能可能比想像的要接近。选择谁主要取决于什么以及谁――已经部署到位。
任何考虑架起一直连接DAS和SAN的桥梁的人都面临着在两种技术间做出抉择:选择成熟但价格昂贵的FC,还是选择价格更低廉但仍处于早期阶段的iSCSI (Internet SCSI)。
据销售数字显示,这显然是一场一边倒的战争。IDC说,2004年iSCSI系统全球销售带来的收入只有1.13亿美元左右,只是容量为76亿美元的SAN大桶中份额不足2%的一滴水。而SAN市场几乎完全被FC设备占据。FC的统治地位确保用户可以从大量的、得到接受的和证明的PC解决方案中做出选择。
在iSCSI方面,其部署的简单性和低成本是最具吸引力的优势。把一台服务器连接在FC网络上需要安装昂贵的HBA以及驱动程序和管理软件,而把一台服务器连接在iSCSI网络上可以利用已经安装在大多数服务器中的千兆以太网NIC完成,当然还需要iSCSI启动程序,即通过以太网连接实现对远程数据访问的应用程序――不过,在大多数平台上,这个程序是免费的。
FC额外的费用限制了它在低端的部署。Emulex公司业务开发副总裁Brian Reed说:“在25,000美元以下的服务器市场中,FC的使用率不到5%。”
不过,由于Brocade、Emulex和QLogic等厂商推出定位于中小企业市场的FC HBA和交换机并采取降价、更好的管理特性以及减少定制选件等措施,这种费用差距正在不断缩小。事实上,经济型FC HBA现在的价格与iSCSI HBA基本相同。许多用户出于性能原因选择iSCSI HBA代替标准的千兆以太网连接和软件。
对FC有利的另一个重要因素是标称传输速率:FC为2Gbps(不久将达到4Gbps),而iSCSI为1Gbps。这种差距对于端到端的连接并没有太大意义,因为端到端连接中,服务器或存储设备通常是低速连接。但是,当多台交换机堆叠在存储网络中时,这种差距开始显现出真正的差别。
具有讽刺意味的是,虽然iSCSI鼓吹者常常对未来使用廉价的和兼容的万兆以太网大加吹捧,然而直到现在,惟一提供10Gbps连接速度的低价产品是SANbox 5200,一款来自QLogic的FC交换机。
如果不考虑速度,iSCSI未来肯定将更有吸引力,因为未来的大量部署可能现在较小的数据中心中。
iSCSI产品的数量正在快速增加,来自EMC和HP等主要厂商的新解决方案确立了来自EqualLogic、LeftHand Networks和Sanrad等iSCSI开拓者产品的合法地位。同时,Brocade、 Cisco和McData等主要交换机厂商除了生产FC解决方案,还大量制造企业级iSCSI设备。
Cisco存储交换部工程总监Tom Nosella说:“这不是我使用iSCSI还是使用FC的问题,而是个我在何处使用哪种技术的问题。”例如,广泛使用FC技术的公司也可以选择更便宜的iSCSI产品,把它用于只需要偶尔访问存储资源的服务器――尤其是缺少本地FC专业人员的远程位置。
对于很多企业来说,选择哪种技术归结于人才价格问题:雇用或培训FC专业人员的费用仍比获得iSCSI帮助高得多,这是那些打算部署SAN的企业需要考虑的关键因素。不过,这种因素的影响是两个方面的。如果企业已经有了FC人才,考虑到FC硬件不断下降的价格,大企业没有理由拒绝FC这种具有悠久历史,可靠而高性能的技术。