阻止业务中断
灾难恢复别忘模拟练兵
GDS万国数据 毛世健 编译
现在,企业的经营、管理已经越来越依赖于IT系统提供的支持、服务,CIO们必须采取有效的应对措施来确保IT服务不会因为自然或者人为的灾难而中断。
但我们所看到的现实却是:企业的IT环境正在变得越来越复杂,而企业的IT预算却没有因此而相应增加。企业的IT部门在试图保护业务免受灾难事件影响的同时正面临着越来越大的挑战,比如要确保灾难发生时灾备规划中的措施能够确实满足业务恢复的需求;决定灾备措施启动的确切时间;向高级管理人员、审计人员、保险机构以及监督管理机构证明IT部门在保护业务不受潜在灾难事件影响方面已经做出了最大的努力。
面对种种突如其来的灾难,作为企业IT“总架构师”的CIO们是选择“从容应对”、“匆忙上阵”还是“坐以待毙”呢?相信大多数CIO都会希望选择“从容应对”,但如何才能“从容”呢?这里面有很多技巧和学问,最简单和行之有效的方法就是:通过在模拟网络环境中对灾备计划进行预测试。在模拟测试中,灾备规划者能够在低成本的基础上有效地评估任何预设条件下关键应用的端对端性能。掌握了这些情况后,灾备规划者就知道如何最好地确保业务连续性,并能够向任何第三方证明灾备措施的正确性。
为什么灾备规划那么难?
“9.11”恐怖袭击和“卡特里娜”飓风等事件扩大了人们对灾难性业务中断的认识——企业永远要做更坏的准备。近几年来,随着IT越来越融入到企业的日常业务操作中,其在灾备中的地位也越来越重要。事实上,对于很多企业来说,生存几乎完全依赖于向终端用户提供核心的IT服务——不管这些终端用户的位置在哪。
而以下几个因素却使得IT部门在确保向本地或远程的终端用户提供核心IT服务时变得越来越困难:
◆ 实时测试通常是不可行的。灾备措施通常包括“热备”、“冷备”、可选择的网络服务提供商以及其它可以随时进行实时测试的资源。因此,如果增加了新的应用或者企业计算机环境发生了变化,原有灾备措施的有效性就很难得到保证。
◆ 业务连续性依赖于应用的性能。简单地给远程终端用户一个接入服务器的方法是不够的,必须确保他们能够使用服务器上的应用。如果应用的反应太慢,或者由于网络延迟而不能正常工作,灾备计划就会失败。
◆ 应用的性能很难预测。不同的应用对于带宽限制、附加延迟和间歇性连接的反应是不一样的,如果对关键应用的特点没有深入的了解,灾备规划者很可能会在基础设施上进行过多或过少的投入。
◆ 有太多的突发事件需要考虑。从偶然的插头脱落到企业数据中心整体被摧毁,IT部门必须为任何事情做准备。
◆ 潜在压力。大量潜在的灾难事件使得在估算并制定合适的灾备方案时,即使是大型的IT部门也会承受巨大的压力。
◆ 灾备规划资源有限。很多IT部门为了维护现有系统和支持高回报率的技术决定已经用完了所有的资源。
◆ 灾难恢复必须一次成功。当灾难发生时,不允许发生任何错误。IT部门在一次系统升级或者安装新硬件时发现错误,可以很快地回退到原-来的状态,但是灾难恢复中发生任何错误都是不可能挽回的,所以IT必须对自己的灾备计划有极高的信心和保障。
以上这些因素使得IT部门很难去满足高层管理人员提出的要求,以及向外部审计人员证明灾备计划的完善性——这就是为什么许多IT部门正在积极地寻找实施和管理灾备规划方法的原因。
模拟测试解决方案
一个有效地改善灾备计划的方法就是使用模拟网络预测试解决方案。在实验室环境下的网络模拟提供了一个安全、灵活的方法去观测端对端应用的性能,并能够模拟出任何可能的场景。这些是通过精确模拟现有生产网络环境、网络中断或者灾难恢复时的条件来做到的。这样,IT员工就可以对应用和基础设施进行观测、分析和实验。
一个有效的模拟必须包含网络中与应用性能相关的所有因素,包括:所有网络连接和可能出现的情况(物理距离及其引起的延迟、带宽、误差、丢包、CIR、QoS/MPLS分类方案等);每一个远程办公地点终端用户的数量及分布;应用通信负载;特殊事件,如特殊网络连接的中断等。
理想的状态是,可以从现有的生产网络或者其它灾备资源导入这些属性,比如远程“热备”或“冷备”设备以及备用的网络线路;还可以按需要修改环境属性来评估某些条件下变更是如何影响应用性能的,比如利用率增加或者间歇性连接。
模拟网络测试不仅仅可以使IT员工测量起作用的属性,如某个特定连接或交换机的使用率等等。通过将虚拟的模拟网络连接到运行中的应用服务器上,IT员工可以直接观测并精确地测量远程终端用户的使用体验。
这种精确评估端对端应用性能及创造无限可能场景的能力使模拟测试成为灾备规划中一种强大的技术。
模拟测试环境确保灾备规划的充分性
网络模拟对灾备规划来说显然是很适合的。灾备规划者不需要在真实环境下做测试,而只需要在实验室中模拟这些场景就足够了。这能节省很大一笔费用,并且比使用灾备场所或者备用网络线路更加方便。
◆ 使用这种测试环境,灾备规划者能够对预计的突发事件做出各种测定,包括:
◆ 灾备规划为可接受的最少终端用户提供了足够的应用性能吗?
◆ 规划的灾备方案可以满足所有远程地点的所有终端用户的需求吗?
◆ 在应用性能不下降的前提下,方案可以支持最大用户数量是多少?
◆ 规划的灾备方案能不能很好地支持特殊应用?
◆ 附加的带宽可以提高性能吗?或者性能与其它网络特性,比如距离和延迟有关吗?这是否意味着“热备”或数据中心应该重新选择位置?
◆ 一个可选择的结构可以帮助提高性能吗?支持给定数量的终端用户需要多少台服务器?
当然,这些问题的答案很可能时刻都在变化,比如,随着企业的发展,维持日常业务的最少人数会不断增加。使用新的或者修改过的应用可能会产生不同的性能特点,这意味着必须对它们进行重新测试。使用模拟技术,可以相对容易地针对这些变化进行测试和重新验证。否则,IT部门只能重新进行费用高昂的演练,或者花几个月时间来等候下一次预定中的测试,并将潜在的风险一直留到那时。
模拟测试降低了对过量提供灾备资源的要求,这对于企业的长远发展也是非常重要的。由于预算较低,IT部门负担不起在灾备基础设施上投入比应投入的更多的钱。通过在虚拟环境中进行模拟测试,灾备规划者可以有效地控制基础设施的规模并避免无用的资源配置。
决定启动灾备方案的时机
当一场洪水或大面积停电迫使放弃主要设施时,毫无疑问灾备规划者必须马上启动灾备方案。但如果是一个没有这么严重的问题呢?如果一个路由器出现了问题但还没有停止运行时该怎么办?在什么情况下需要切换网络连接?应该关闭次要应用以维持关键应用的性能吗?做出这个决定又应该以什么为依据呢?
在紧急时刻,这些决定是很难做出的,因此必须做好适当的准备。很多IT部门甚至一直到过后才知道这种“小问题”是怎么影响关键IT服务的,由此带来的混乱可能会导致跟真实的灾难一样严重的后果。
而做出这样的决定必须以费用和应用性能为依据,比如,用可选择的网络提供商的基础设施来防止故障就非常昂贵。在这种情况下,必须由公司的高级管理人员来做决定,而不是IT部门的人员。
模拟技术对于应对这种“接近灾难”的情况是非常有用的,它可以明确显示出受损的基础设施是如何影响关键IT服务的,以及各种灾备措施是如何在短时间内解决这些问题的。
模拟测试还可以让终端用户和管理人员在实验室内直接体验到灾难事件所造成的影响,从而帮助IT部门及企业做出决定。如果网络中的延迟从5毫秒上升到100毫秒,要不要切换到备用网络?向一个非技术人员问这种问题是没有任何意义的。一个更好的办法是把他们带到实验室,向他们展示事件发生时的情景,然后问他们,花2万美元来避免终端用户48小时的延缓是否值得?这样的展示使管理人员可以随时准备做出适当的决定,从而将问题对业务的影响降到最低。
记录灾备工作
IT部门可能会很努力地做灾备规划,但如果没有办法将些工作展示出来,在应对管理人员及外部审计人员提出的要求时就有可能遇到困难。事实上,如果不能提供准备好的文档来证明已经对各种灾难进行了防备,IT部门可能会被要求以另一种费时、费钱的方式来演示灾备规划的恰当性。
记录在灾备上所做的工作非常重要。当灾难发生了而灾难恢复的结果不能满足管理人员、董事会或者股东的期望时,灾备规划者必须能够证明在灾难发生之前:特定的灾难事件已经考虑过了;针对这些不同事件的灾备计划已经-测试过了;所有现有关键应用的性能都已经评估过了;测试是基于适当的利用率水平和终端用户数量的基础上进行的;测试结果已经被管理人员审核过了。
相对于常见的生产现场测试,在可控的虚拟测试环境中,这种文档更容易被记录和管理。模拟测试在很多方面可以支持灾备规划,它可以帮助CIO们确定灾难恢复执行的准确性和适当性,帮助IT部门和管理人员确定启动灾备计划的时间,并可以完整地记录在灾备规划上做的所有工作。
随着IT环境越来越复杂,以及企业越来越依赖于IT提供的服务,灾备规划将成为一个更为关键,更具有挑战性的学科。因此,灾备规划者应该考虑利用模拟测试解决方案的优势,这样,他们可以更好地保护企业的业务,同时将高额的费用和各种问题排除在灾难恢复的过程之外。
