对于很多公司来说,开源软件已经不算什么新事物了,不少公司一直在使用Linux、Apache等开源软件来提供网站和文件服务器所需的服务。但是,如果要用开源软件来管理数据中心,人们还是有些犹豫。不过,有些公司已经在这方面进行了尝试,它们的经验表明,开源软件也可以成功地用于数据中心的管理。
位于美国德克萨斯州南湖市从事旅游推广业务的Sabre Holdings公司(以下称Sabre)很早就开始在数据中心的管理上使用开源软件。目前,整个公司有5000台服务器上运行者开源软件,其中一半的服务器在俄克拉菏马州塔尔萨市的数据中心中。
"开源软件目前已经相当成熟,基本上与对应的商业软件成熟度相当,或者更好,我们相信,未来它们还会更完善。"Sabre公司CTO Robert Wiseman说。
Wiseman认为,开源软件的出现使得IT部门面对商业软件供应商时更从容了,可以在价格和服务上要求商业软件商给予更多优惠,而不仅仅是听他们吹嘘各种华而不实的特殊功能; 代码公开而且透明,使得开发者可以更容易解决软件方面的问题,同时也有助于他们了解别人是如何解决类似问题的; 用户可以在整个组织、甚至全球范围内自由地使用这些软件,不用担心软件使用许可证的问题。
对开源软件的担心
那么公司有哪些担心,阻碍了开源软件在数据中心的使用呢?
"这样的担心很普遍,就是公司部署开源软件后,如果没有专业的团队提供技术支持,帮助它们很快速地解决问题,这些公司将很没有安全感。"Wiseman说:"为了解决这一问题,在Sabre公司,我们购买了技术服务,由一家专门的公司来为我们的开源软件提供技术支持。"
尽管这抵消了开源软件的部分成本优势,他说:"但是,成本优势仍然很明显,更重要的是,这种服务合同让我有了安全感,晚上可以睡上安稳觉了。"
Sabre公司使用企业服务总线(ESB)来完成消息的传递、路由等相关任务。这个ESB也是开源的产品,它部署在很多系统中,包括一个名为供应商网关的产品,该产品被Sabre公司所有需要从外部获得数据的系统使用。Sabre还使用了其他的开源软件,如版本控制软件CVS和Subversion、Java的集成开发环境Eclipse、统一测试框架Junit以及完成数据库调用的工具Hibernate。
Sabre从大约6年前开始使用开源产品,当初使用开源软件的主要原因是成本上的考虑,但是,Wiseman说,稳定性和高性能也是部署开源软件的很重要的原因,"对于我们来说,低成本和高质量都是我们需要的"。
你准备好了吗?
Forrester曾建议那些考虑开源软件的公司,在真正部署前要考察一下该软件的"生态"系统,即开发群体的大小、论坛的活跃程度、付费可以获得的技术支持以及商业化的版本,然后再决定是否部署该软件。Forrester解释说,如果一个开源项目的开发团队能达到一定的规模,比如说700人,而且具有一个比较完善的生态系统的话,从风险上来说,就比采用那些只有20人左右的新公司推出的软件要小得多。
Gartner的分析师Rakesh Kumar建议在采用开源软件时要慎重。"除了低价格外,开源软件有时获得的技术支持很有限,"他指出,"另外,用户还必须在安全上特别小心。"
他提醒用户,一定不要把开源简单地看成免费软件,而应该把它视为自由软件,自由软件意味着用户可以自由地运行、拷贝、分发、研究和修改软件。他说: "开源的本质是为程序员提供自由地查看和修改代码的能力,让程序员可以学习和借鉴别的程序员的设计思路,然后进一步扩展和完善该产品。正是这个流程让开源软件功能越来越强大,性能越来越稳定。"
位于美国俄勒冈州波特兰市提供软件租用服务的Opus Interactive就为那些预算紧张的公司提供开源的负载均衡和防火墙产品,其业务解决方案经理Jeremy Sherwood说: "我们对包过滤产品进行了评估,发现运行在OpenBSD和FreeBSD上的包过滤产品是一个不错的选择,该产品运行稳定而且相当安全。"
而对于那些更大些的客户,Opus会提供商业版的防火墙和负载均衡产品,比如Cisco的产品或者Array Network公司的产品。
开源软件的不足
位于波士顿的从事咨询和系统集成的公司Optaros的企业工具和框架部门经理Dave Gynn认为,开源软件绝对应该在数据中心拥有一席之地。
"开源软件在异构环境中表现非常好。"他说,它给予用户充分的自由,可以灵活地控制自己的系统。这就意味着,使用开源的软件平台后,用户可以快速地解决问题,自己决定升级周期,做出最佳的部署决策,同时更容易地与已有的系统进行整合。那些使用开源软件的公司还可以按照自己的需求定制软件,而不用修改自己的业务流程来适应软件。
但是,开源软件也存在不足,那就是对于IT部门和系统工程师而言,责任更大了。Gynn说: "如果公司全部采用使用开源软件,他们必须具有一定开发能力,能长期提供解决方案所需要的技术支持和维护。"
有的公司对此认识不足,匆忙上马开源项目,一开始也是轰轰烈烈,然而,不久之后项目就进行不下去了,不了了之。Gynn提醒说,在选择开源软件时候,一定要确信该软件具有持续地创新能力,能够快速提供补丁和解决问题。
"开源意味着自由,而不是成本上的免费,尽管有时候的确是。"位于加利福尼亚州San Mateo的开源软件开发公司Untangle 的CTO Dirk Morris说,开源软件具有灵活性、可靠性、安全以及易于采用等诸多特点,但免费不能算特点,至少不是主要特点。"我们一定要意识到,开源产品通常都不是一个完整的产品,"他说,"同时,开源软件的质量良莠不齐,选择时要分外小心。"
"尽管是开源软件,但同样也有成本问题,可能是供应商的技术支持费用,也可能是内部的管理成本。"Gartner的Kumar说。
他提醒说,有一些应用非常适合采用开源软件但也有一些应用不适合,因此,要认真评估每个应用的可用性和管理需求,看看开源的系统是否能与公司现在的IT环境集成在一起,同时,对成本也要有一个正确的观点。
实际上,成本并不是采用开源软件的主要理由。"我们经常把开源项目作为摆脱供应商专有技术控制的手段,尽管我们也会检查开源软件是否满足我们以及我们的用户的要求,这样我们可以尽可能不用花钱购买商业软件。"Opus公司的Sherwood说:"我们相信,开源软件是可以和各种专有的商业软件在数据中心共存的,但是,在短时间内不可能完全取代商业软件。"Sherwood说:"我们相信,开源软件是可以和各种专有的商业软件在数据中心共存的,但是,在短时间内不可能完全取代商业软件。"