IT已经成为高科技的代名词,但是归根结底,它的背后只是“0”和“1”,因此说它容易也容易,说它复杂也复杂。
如何尽可能延长服务器正常运行时间,对于很多IT经理们来说就是一个令人头疼的事情。
几乎所有数据中心的管理者都有一个共同的诉求,就是如何确保服务器处于良好的工作状态,所有的设备时刻准备着、一旦有需要,就能立即运行起来,但是显然这个问题“说起来容易做到难”。
绝大多数数据中心的IT经理们不敢拍着胸脯说,自己已经能够力保系统正常运行,并且能够保证正常运转时间最大化。而事实上,他们中的很多人把时间和金钱往往浪费在了对帮助系统正常运行基本上没有什么积极影响的技术和措施上。不过如果能从全面规划、合理应用管理软件、加强安全防护等五方面入手,尽可能延长服务器正常运转时间绝对不是一个“白日梦”。
全面规划放首位
美国康涅狄格州斯坦福市金融数据提供商Six Telekurs USA负责IT和后勤的副总裁Walter Beddoe表示,实现服务器正常运行时间最大化的目标,既是一门科学,也是一门管理艺术。“这要结合多方面的要素,不但需要你拥有称职的员工,选对能够实现容错目标的硬件,采用动态的安全做法,而且还要能够积极接受良好的维护和变更管理做法。”除此之外,Beddoe还认为,作为管理者,还需要有尽力做好一切的决心。
大多数管理着服务器的IT经理都会认为,精心规划从采购、管理到更换的与服务器相关的所有工作,是保障系统可靠性的关键步骤。
乔治•华盛顿大学的IT运营和工程经理Raoul Gabiam就认为,生命周期管理是维持服务器正常运行的一个必要工作。“知道何时及如何更换、升级硬件和软件很重要,因为这影响着服务器性能、可持续性和总体的正常运行时间。”
Gabiam举例说,在升级软件的时候,就需要了解硬件需求和当前现有硬件的状态。因为,为了保证软件能够得以顺利升级,很有可能需要额外购买新的硬件,所以需要确保相应的需求得到满足,从而避免进一步停运,或者是尽量减少变更数量。
除了强调软硬件的生命周期管理外,Gabiam还主张标准化和协调,他认为后者也是确保服务器可靠运行的一个重要手段。“在有人安装硬件或对硬件进行改动之前,一定要有能够作为参考的变更管理流程。”
“变更管理意味着服务器管理员能够了解各个系统是如何搭建和配置的,并且在进行变更之前,评估一下会带来怎样的影响。”Gabiam说,“这样一来,管理员就能知道系统应该怎么样、它们彼此会如何联系。借助变更管理方法,就可以预测当服务器以某些方式配置或放置到新环境后,会出现怎样的情况。“
Online Resources公司的总部设在弗吉尼亚州尚迪利市,它专门为金融机构提供交易服务。公司首席技术官Paul Franko表示,除了技术之外,管理者的态度也起到了重要作用。
“我们部署了一套制衡体系,确保我们的政策得到了遵守。” Franko说,他会让手下的经理们定期检查员工的管理工作,并反复核对。
他认为这样有助于将人为失误的影响减小到最低限度,“谁都会犯错,特别是一旦你没有多重核对机制,某些方面就更加容易疏忽或遗漏。”
进行预防性维护
常规的预防性维护也许是提高服务器可靠性最容易、最不费力的方法,就像有些旧车维修广告中提醒的那样,“不是现在掏钱,就是以后掏钱”。
“根据木桶原理,服务器正常运行时间有多长,完全取决于相关维护服务交付链中最薄弱的那个部分。”Beddoe说。
Beddoe坚信,只要定期执行一系列必要维护工作,例如更新系统软件、提供有保障的电源以及确保足够的冷却能力,就能够打造一个顺畅运行的数据中心,而且既不会超出预算,又不会增加员工的负担。
Franko表示,为了确保所有必要工作能够在需要时得到执行,应该确认服务器维护任务的时间表。“可以根据任务的轻重缓急,确定相关工作的优先级。例如像安全更新这样的工作,就可以立马着手开展,而例如改进非关键功能的软件更新,就可以分批处理,按固定的间隔时间来开展。”
Franko还补充说,进行维护工作时不应该占用服务器的正常运行时间。“我们不会因为维护工作而让系统停运。”
在实际工作中,当Franko的团队非要拆下某台服务器进行维护时,他们会安排在用户需求较低的晚间或周末时间段来进行。“只有那些涉及到关键更新的工作时,我们才会在正常工作时间拆下运行中的服务器,进行相关维护。”
合理使用管理工具
不可否认,服务器管理在过去的几年间变得越来越复杂,涌现出了大量旨在提高服务器效率和利用率的虚拟化及相关技术和做法。虚拟化技术本身有助于保护数据中心免受服务器停机的影响,虚拟化技术通过合并服务器,并将它们连接到共享环境,允许多个虚拟机可以在不同的主机上运行。一旦某个主机出现故障,它上面的工作负载就会重新分配到其余的主机上。Gabiam说:“你可能会遇到服务器故障,但不是说故障就肯定会影响服务。”
为了管理这种日益虚拟化的环境,Xenos Software、Uptime Software、Nimsoft和Nagios Enterprises等厂商提供了各自的工具,旨在帮助数据中心的工作人员监控服务器性能、查找出现的问题,并且充分利用提升性能的机会。
新泽西州普林斯顿市诊断医学成像公司Princeton Radiology的IT主管Alan Howard的实际工作经验告诉他,在服务器虚拟化时代,别把时间和资源浪费在不能直接有助于延长正常运行时间的活动和工具上。
“比如说,投入到集群上的努力可以说就是无用功,而使用提供完全自动化的工具能更有效地獲得冗余性。”Howard表示,“不是自动化的集群(即手动完成同步工作)带来的问题远多于它能够带来的好处,例如主节点失效可能会带来严重后果。因此,与其主节点失效还不如备用节点失效,因为前者恢复起来更容易。”
目前,Howard的部门就管理着Windows Server集群。现在他们面临的情况是,一旦进行故障切换,这个集群上的应用程序就会崩溃,因为对应用配置文件所作的改变没有移植到备用服务器上。 “排查应用程序崩溃的根源往往比排查集群节点故障的根源要费力得多。” Howard说。
针对这样的情况,Howard让手下不再配置传统意义上的集群服务器,而是有一个由多台独立服务器组成的“集群”——所有服务器映射到一个双控制器Compellent存储中心存储区域网(SAN)上,“这样我们就能根据需要,相当顺畅地在服务器之间迁移虚拟机。”
因此,如果没有适当的监管,服务器管理者根本也许无法查明影响正常运行时间的根源,也无法衡量停机对关键业务服务带来的影响。
Beddoe觉得必要的服务器监管工具必不可少,他说:“你要做到让人放心,你的所有服务器在任何时候都在正常运行。”
Beddoe还在使用Uptime Software公司的正常运行时间管理软件,他认为这类工具属必备的工具,因为只要服务器的运行条件超过特定的阀值(比如出现内存过载或处理器使用率过高时),这些工具就会触发警报。
虽然大多数此类工具都附带内置的报警功能,但Beddoe更看重那些可以对报警条件进行设置的产品,“因为你需要掌握有意义的信息,以便能采取必要的措施进行纠正,包括在大屏幕显示器上向操作人员发出警报。”
Carfax公司位于美国弗吉尼亚州森特维尔市,专门制作车辆历史报告。运营经理Jerry Gregg表示,许多性能测量工具计算出来的服务器正常运行时间只是个近似值, “这个值充其量只能用来参考一下。”
Gregg說,一些基本的正常运行时间测量工具测得的数值实际上可能有欺骗性,因为这些工具不能完全区别所有故障的不同。这个时候,数据中心的管理者就需要有一套能够提供基于时间和事件的分析功能的测量工具。
为了让对正常运行时间的分析显得更有意义,Gregg目前使用的是可以显示服务器故障对关键业务服务所产生影响的测量工具。Gregg使用的是BMC Software公司的ProactiveNet性能管理软件,这个软件能够直接把服务器停机时间与销售交易及其他类型的面向服务的业务数据关联起来。“这样我不仅可以通过时间来量化停机带来的影响,还可以通过金钱来量化影响。”
Gregg表示,在使用了这款软件后,他发现,系统生成的信息可以帮助他确定故障模式是否有可能严重影响到公司的利润,从而能证明有无必要花钱购买新服务器、更好的网络设备或能够增强可靠性的其他技术和服务。Gregg说:“要是没有这些信息,我可能就要在不知道具体成本的情况下进行成本效益决策。”
别让安全问题
成为绊脚石
确保系统的安全性,在保证服务器正常运行方面也起到重要作用,因为恶意软件或不安全的网络会危及服务器的正常运转。
Beddoe认为,数据中心的管理者首先需要从物理安全着手来保证服务器能够正常工作,也就是说要从数据中心的基础建设入手,确保“物理安全性”。接下来,再制定服务器访问规则并确保执行的力度。至于其他的安全手段,诸如反病毒程序、防火墙和训练有素的管理员,都属于常规安全手段。”
Superior Technology Solutions是纽约的一家IT咨询公司和定制软件开发商,公司负责监管服务器运行的John Luludis表示,他认为要真正确保服务器的正常运行时间最大化,重要的是不能仅仅满足于基本的安全措施,更需要进行定期的独立安全审计。平日,他就常对自己的网络定期进行渗透测试。
虽然Princeton Radiology的Howard也极力主张进行常规的服务器维护,但他指出,尽管经理和员工都尽了最大的努力,有些故障还是在所难免。Howard建议,要建立相应的规范,以避免因为服务器故障而引起的任何数据丢失,“所以要制定与企业的综合业务连续性战略相互配合的数据保护方案。”Princeton就使用了Compellent Technologies公司的异地存储解决方案来复制所有已存储的数据。
与Princeton Radiology的Howard不一样,Gabiam喜爱集群技术,他使用Novell集群服务来提供另一层冗余性。他解释,如果集群中的某个节点失效,或者需要停机以便维护,那么在该节点上运行的集群应用程序或服务组件就可以在集群中的另一个节点上无缝运行。
Gabiam很相信内置在数据中心网络基础设施中的负载均衡技术,以此来防范突如其来的服务器故障。“如果某台服务器崩溃,或某个应用程序没有响应,那么其流量就会重新定向到能处理负载的其他类似服务器上。”
Gabiam说:“万一发生软、硬件故障,我通常希望应用程序会自动切换到下一个优先节点上,当然管理员也可以手动配置这个迁移过程。“
关注硬件质量
“一分钱,一分货”,性能优良的软硬件设备,往往价格不菲。但是采用高质量的服务器而不是质量低劣的设备,显然能够保证服务器更长时间地可靠运转。
IT服务提供商E-N Computers的运营主管Jeffrey Driscoll说:“改用中档或高端服务器后,硬件寿命肯定会不一样。”
不过在实际情况下,预算紧张的IT经理们常常面临痛苦的选择:是用低成本的产品满足业务需求?还是购买质量更好、更可靠的系统来满足既定的性能标准?
Driscoll建议:“购买要明智,应物色物美价廉的产品,尽量争取到满足实际运营需求的预算,一定要向管理层表明不可靠的服务器可能造成经济损失的不争事实,用简单的数字和预测就很容易证明这一点。”
除此之外,惨痛的经验表明,不要试图从老化的服务器上榨出最后一点价值,那样只会浪费时间、精力和金钱。
“硬件毕竟是硬件,总会坏掉。”Gabiam说,“重要的是汲取之前的经验教训,并且准备好方案,万一问题再次发生,可以从容应对。”
关注硬件来确保正常运转时间,这就意味着IT经理们还要精确掌握整个系统的更新周期,知道该在什么时候弃用旧设备,改用新设备。“如果你的IT人员有25%的工作时间用于到处救火和维护过时系统,这是最严重的浪费时间的行为。“Beddoe说。