苏州弱电工程施工

苏州网络系统集成、苏州cisco交换机、苏州华为交换机、苏州无线网络工程、苏州容灾备份

数据安全及容灾备份

灾备系统定期高可用测试的必要性和测试方法

        1.引言
        相对于其他行业来说,电力行业承担着相当重要的社会责任。电力企业对于自身的要求也随着时代的发展不断提高。出于提升企业内部管理效率的需要,生产管理、营销管理、ERP三大核心业务系统及其他辅助业务系统的重要性对国家电网公司来说不言而喻,公司对重要业务系统的应用级灾备系统建设也非常重视。灾备系统虽然是业务系统服务高连续性的重要保证,但是,灾备系统建成后真正投入使用的机会极少,如何确保灾备系统自身的高可用性反而成为了困扰一线运维人员的一个实际问题。
        2.典型灾备系统架构
        随着国家电网公司对业务可靠性要求的不断提高,对于灾备系统的高可用性要求也在逐步提升。本文所提到的灾备系统不仅仅提供数据备份功能,在生产中心发生故障时,业务系统能够通过事先计划好的步骤和IT资源切换至灾备系统,继续提供服务。电力系统出于对信息安全的考虑,建立专用内部网络(下文简称内网)供内部用户使用,与外部用户使用的互联网(下文简称外网)进行物理隔离。本文所指的典型业务假定其需要同时供内部用户和外部用户使用,因此业务系统架构同时在内网环境及外网环境均有部署。如果是只提供内部用户或外部用户使用的业务系统,只需要在架构上去掉不需要部分即可。比如,生产管理业务系统只供内部用户使用,只在内部网络部署;车联网业务系统只供外部用户使用,只在外网部署;而电子商务平台同时向内部及外部用户提供服务,因此在内网和外网均有部署。此外,如果灾备系统部署的是实体机,通常是按照1:1条件配置的,因此,灾备环境与生产环境的配置基本相同,如果部署的是虚拟机,可以采用资源池的方式为多个业务系统提供灾备功能。根据业务部门的不同需求,还可以对服务器数量和配置进行调整。下面给出对应的灾备系统部署架构。
 
        图1典型灾备系统架构
        图1中对应的各主要服务器功能如下:
        1)F5:实现WEB及应用的均衡负载,利用Virtual Server对外提供服务,专用PC服务器。
        2)Web服务器:接收客户提交的Http请求,并将http请求转发到应用服务器群集做进一步处理,通常为PC服务器。
        3)应用服务器:系统核心功能组件,提供核心业务逻辑处理,通常为PC服务器。
        4)网络隔离装置:实现双网隔离的要求,内外网间访问需要通过隔离装置进行,专用PC服务器。
        5)数据库服务器:存储业务交易数据、配置数据等,通常为小型机。
        6)磁盘阵列:具有存储快照功能的高端存储。
        为实现在进行计划检修或发生重大灾难的情况下系统对外服务的持续进行,在灾备中心部署一套与生产环境相同的灾备运行环境。部署的所有系统功能组件与生产环境一致,并通过数据库复制技术及存储复制技术将系统数据从生产环境复制至灾备环境,从而使系统在两地间具备切换能力。
        3.灾备系统定期高可用测试的必要性
        3.1.常规巡检的不足
        通过长期的运维经验积累,我们知道,灾备系统的运行缺陷无法完全通过常规巡检发现的。例如:
        1)数据库RAC环境主备切换功能是否正常。
        2)F5主备切换功能是否正常,负载均衡功能是否正常。无应用无负载情况下,是无法测试F5负载均衡功能的。
        3)服务器单电源模块故障情况下的运行状态。配备了双电源服务器当发生单电源模块故障时,剩余电源模块是否仍能正常工作
        4)网络冗余配置是否工作正常。
        5)隔离装置的信息隔离功能是否正常。隔离装置是隔离信息内外网的重要网络安全设备,只允许外网符合一定条件的信息指令访问内网。隔离装置的工作特点决定了一定要在有信息访问的情况下才能确定它的工作状态是否完好。通过常规巡检只能确保其硬件本身是否正常。
        6)应用系统的可用性。生产端应用系统经常更新,灾备端应用系统配置往往与生产端存在差异,灾备端应用系统在紧急情况下是否能够顺利启动,这往往是运维人员最需要担心的。
        3.2.高可用测试的必要性
        由于上述种种原因,对灾备系统定期实施高可用测试就显得非常有必要了。通过高可用测试,可以达到以下目的:
        1)确定文件系统是否能正常挂载。
        2)确定应用程序是否能正常启动,业务系统是否能正常访问,应用版本与生产端是否一致,这也可以间接地督促灾备系统及时升级应用程序。
        3)确定服务器、存储、网络、电源等硬件环境冗余配置是否工作正常。
        4)尽最大可能提前排除系统故障,确保切换过程顺利完成。
        5)磨合运维团队,为运维工程师积累系统切换经验。
        3.3.切换演练的缺点
        相对于灾备端高可用测试来说,需要生产端与灾备端共同参与的切换演练当然可以更完整地检验生产端和灾备端系统的健康性,但是切换演练存在无法避免的缺点:
        1)影响生产端业务系统运行。切换演练操作期间,业务系统无法对外提供服务。
        2)必须在限定的时间窗口内执行。业务部门通常会根据业务需要,留出有限的时间窗口,必须在窗口期内完成切换演练。如果演练期间遇到突发情况,排除异常时间往往非常紧迫。
        3)生产端和灾备端均有操作,操作步骤和牵涉人员相对较多。
        完整的切换演练步骤如下:
        a)生产端应用升级,测试验证;
        b)生产端停止内外网应用服务、WEB服务;
        c)生产端停止服务器集群服务;
        d)灾备端启动服务器集群服务;
        e)灾备端存储及数据库接管;
        f)灾备端启用应用及WEB服务;
        g)内外网分别切换DNS;
        h)灾备端应用升级、测试验证;
        i)灾备端停止应用及WEB服务;
        j)灾备端停止服务器集群服务;
        k)生产端启动服务器集群服务;
        l)生产端存储及数据库接管;
        m)生产端启用应用及WEB服务;
        n)生产端系统测试。
        4)存在切换风险。存在系统回切失败的可能性,如果回切失败,可能对业务系统对外提供服务产生影响。
        不可否认的是,切换演练即使存在一定的缺点和风险,也是不能完全放弃的,应该与灾备端定期的高可用测试相结合。相比较而言,灾备端系统定期高可用测试不影响生产端业务系统运行,不需要安排窗口期,测试时间和测试内容都可以灵活安排。在两次相隔时间较长的大规模切换演练中间安排几次灾备端高可用测试,可以最大程度地确保系统整体的可靠性。
        4.灾备系统高可用测试步骤
        4.1.测试步骤
        灾备系统高可用测试的过程一般可分为准备阶段,测试阶段,还原阶段。下列步骤中1~5为准备阶段,6为测试阶段,7~9为还原阶段。
        1)生成存储快照;
        2)将数据库切换为快照模式;
        3)内外网应用服务器进行存储快照映射和识别;
        4)内外网文件系统挂载;
        5)启动内外网应用程序;
        6)实施测试;
        7)关闭内外网应用程序;
        8)内外网文件系统卸载;
        9)数据库切换为备用模式。
        其中,第6项测试阶段主要包含以下内容:
        a)通过机柜单路电源断电的方式模拟系统电源故障,验证电源高可用性;
        b)通过单路交换机断电的方式模拟网络链路故障,验证网络链路高可用性;
        c)通过单路防火墙断电的方式模拟防火墙链路故障,验证防火墙的高可用性;
        d)通过插拔单路光纤的方式模拟存储SAN交换机故障,验证存储链路的高可用性;
        e)通过单路隔离装置插拔网线的方式模拟隔离装置故障,验证隔离装置的高可用性;
        f)通过单路负载均衡设备断电的方式模拟负载均衡设备故障,验证负载均衡设备的高可用性;
        g)通过单路PC服务器插拔光纤的方式模拟服务器故障, 验证服务器的高可用性;
        h)通过单路数据库服务器插拔光纤的方式模拟数据库故障,验证数据库的高可用性;
        i)通过内外网应用服务启停测试,验证系统可用性。
        根据实际的测试需要,可以对以上测试内容进行灵活调整。例如:如果部署是在资源池的虚拟机上做测试,可以不包含物理机的电源测试。
        4.2.测试周期
        灾备系统高可用测试的周期由两方面决定:
        1)灾备系统的物理资源。如果灾备系统是按照1:1配置的物理机,高可用测试可执行的周期基本不受限制。如果灾备系统是采用一个资源池配置若干虚拟机,对应生产系统多个业务系统,通常在这种情况下,考虑到建设成本和灾难发生的概率,资源池不会按照所有业务系统IT资源总和配置,只能同时具备几个业务系统的灾备切换能力。此时,可以根据各业务系统所需资源合理安排,在一定周期内对每个业务系统做一次高可用测试。此外,高端存储的快照资源区容量有限,在同时实施多个灾备系统的高可用测试时,这也是需要一并考虑的。
        2)企业自身的管理要求。企业综合考量业务系统的重要程度、人力资源等方面,对灾备系统高可用测试的周期制定管理制度,明确实施周期。
        根据目前的运行经验,在灾备系统物理资源允许的情况下,核心业务系统一般每个月做一次高可用测试,非核心业务每个季度一次。
        5.结论与思考
        5.1.结论
        国家电网公司上海数据中心自2014年9月起,每季度对某非核心业务系统做一次高可用测试;自2016年4月起,每个月对指定的13家单位某核心业务系统轮流做一次高可用测试,均取得了良好的成效。确保了灾备系统在应急切换时的可切换性,降低了因灾备系统软硬件故障导致的切换失败概率,保障了业务系统的可靠性,运维团队在实践中也积累了丰富的操作经验。
        2016年10月,得知某单位即将遭遇台风的严重影响,上海灾备中心(现为上海数据中心)主动向国网总部信调和该单位汇报,上海灾备中心已提前预留好灾备系统资源,有信心有能力在灾难发生时,接管生产中心的某核心业务系统功能。虽然最终并未实施切换,但是这一过程充分体现了上海灾备中心对灾备系统可用性的掌控能力,获得了国网信通部和该单位的高度赞扬。
        5.2.经验分享
        我们在测试过程中也曾经走过许多弯路,获得了不少值得借鉴的经验与各位读者一起分享:
        1)虚拟机上应用程序无法同步更新的问题。由于资源池虚拟机资源有限,在生产系统做应用升级或配置变更时,灾备系统的服务器资源往往是未启动状态(可能正在为其他业务系统做高可用测试),无法做到同步更新。只能在排定的周期内,启动资源更新应用后再进行测试。因此,这也导致了在虚拟机环境的情况下,无法像在物理机环境下一样完成“同步检修同步验证”,只能在生产系统应用升级后的一定周期内(在本文给出的测试方式下,通常不超过一个月)完成灾备系统应用升级。这可以在今后通过资源池扩容来解决。
        2)业务应用测试应具有一定深度。业务功能的专业性很强,与操作系统、数据库、网络等分属不同的IT知识领域,非应用工程师只能对应用程序版本、应用节点进行简单判别,无法对应用功能的升级效果进行准确评估。在测试时必须安排熟悉业务功能的工程师配合测试,才能在测试过程中真正发现问题并解决问题。
        3)必须提前规划,合理分配资源。在资源池内对多个业务系统做测试时,必须提前规划好存储快照空间和资源池的利用情况,严格制定测试排期表提前通知各单位,避免资源不足情况的发生。
        4)详细记录测试过程。对测试过程中每个步骤的执行时间、遇到的问题、排查过程详细记录,不仅可以为今后积累运维经验,也可以为实际切换用时提供参考。

       本文章来源于网络,仅供参考学习,若有侵犯您的版权等,请您联系我们,我们予以修改或删除。

联系我们

CONTACT US

苏州百利豪信息科技有限公司

QQ:403135177

电话:0512-66792355/66792955

邮箱:wxl@blhkj.com.cn

地址:苏州市虎丘区裕新路168号1号楼617


苏州弱电工程施工