国税函〔2008〕574号
各省、自治区、直辖市和计划单列市国家税务局:
为提高税务信息系统应对故障的能力,消除故障隐患,确保信息系统稳定运行,税务总局制定了《税务信息系统故障恢复演练指南》,现下发给你们。各地要充分认识信息系统故障恢复演练工作的重要性,精心组织故障恢复演练工作,并及时总结经验,查找问题。税务总局将针对各地开展此项工作的具体情况,组织专项检查。
二○○八年六月十三日
(对下只发电子文件)
税务信息系统常见故障恢复演练指南
为指导各省信息系统故障处理,提高信息系统故障恢复的能力,保障信息系统稳定运行,确保相关工作有序进行,特制定本指南。
本指南旨在帮助信息中心技术人员了解故障应急处理目标,熟悉应急处理操作流程,开展故障恢复演练工作。通过演练检验应急预案中每类故障处理的流程是否可行,有无疏漏,从而完善应急预案内容;同时,通过演练让应急预案中涉及到的每个岗位、每个人能够熟练掌握演练流程中自己所需要完成的工作,提高应对故障的能力。
一、 原则
信息系统故障恢复演练应坚持“以人为本、注重实效、提升能力”,精心组织,确保人员和设备安全,合理安排演练规模和频次,排除隐患与注重效果并重,高质、统一、协调地组织演练工作。
协调配合原则。参与演练的相关岗位人员必须密切配合,协调一致、确保演练有序进行。
谨慎原则。在演练过程中,应尽可能保障业务正常进行,完整保存现有数据,严格按照演练的程序和操作规程执行,防止因操作不当产生意外情况。
真实原则。构建的故障和演练场景应尽量接近真实情况,使演练更具有实际意义。
二、 要求
应急预案要求:各单位应制定一套完备的应急预案。根据适用对象的不同,应急预案可分为综合预案、专题预案、特定系统预案和单项预案四大类。发生业务流程的变化、信息系统的变更、人员的变更时需对应急预案进行相应变更。
演练方案和实施要求:各单位应根据各自实际情况,参考本指南制定详细、可操作的演练计划和方案,并保证计划和方案的实施。演练方案的制定要充分咨询相关厂商技术人员或其他专家,演练的实施必要时可要求相关厂商提供现场支持。演练严格依据应急预案进行。
演练内容要求:各单位根据自身实际情况评估本单位信息系统的薄弱环节和潜在的重大风险,确定演练内容。可针对某项应急预案进行单项演练,也可以同时对多项应急预案进行综合演练。
演练时间要求:各单位应根据自身实际情况定期组织演练。在更新应急预案后,或遇有可预见的故障时,及时开展应急演练,以检验应急预案的正确性,不断加强应急安全意识和应急处理的熟练程度。演练应分别选取非业务繁忙期或业务繁忙期进行,以保证应急预案或故障恢复方法在不同情况下的有效性。
演练评估要求:演练完成后应对演练的组织协调、实施过程进行全面的总结,评估演练效果,并形成书面报告。如演练过程中发现预案本身存在问题,应及时变更修订。
三、 常见故障类型
本指南按信息系统故障发生的环节和处理方法分类如下:
(一) 主机:主机硬件故障(RAC类)、主机硬件故障(非RAC类)、HACMP软件故障。
(二) 数据库:数据库实例故障(RAC方式)、数据库实例故障(非RAC方式)、数据库数据文件故障。
(三) 中间件:应用集群的处理能力不足。
(四) 网络设备:负载均衡器故障。
(五) 应用:补丁升级失败。
(六) 机房:电源故障、空调故障。
针对以上故障,下面将逐一提供恢复演练方法。
四、 主机故障
(一) 主机硬件故障(非RAC方式)
故障描述:基于HACMP(主备机方式)的双机系统中单节点主机无法工作。
故障处理:
恢复步骤:HACMP软件会监控主机状态,当某一节点无法工作时,HA软件会将故障节点上的资源自动切换至对方节点。
相关处理:通知相关硬件厂商进行硬件故障诊断或更换。
演练方案:
1. 演练目的:检验HA能否正常完成切换工作。
2. 准备工作:
时间:非业务繁忙期。
人员:主机管理员、数据库管理员、中间件管理员、应用系统管理员。
备份:进行HACMP同步操作,进行系统备份。
3. 目标修复时间:30分钟。
4. 故障环境构造:在故障主机端执行#halt -q命令,该命令等同于系统宕机,HACMP会自动进行切换。
5. 步骤:
(1) 在正常的主机上检查HACMP工作状态,检查是否切换完成。
执行# netstat –in命令,检查IP地址,确认IP地址正确切换至本主机。
执行#lsvg –o命令,检查激活的卷组,确认卷组正确切换至本主机。
(2) 在正常的主机上检查数据库工作状态,如果数据库的启动不是由HACMP管理,则需手工启动数据库。
启动数据库(可选);
检查数据库工作状态,确认正常启动;
检查数据访问。
(3) 检查中间件工作状态,如果工作异常则重启中间件。
(4) 检查应用,如果应用异常则重启应用。
(5) 将资源切换至原故障主机。
在原故障主机启动HACMP,#smitty clstart命令;
HACMP启动完毕,被接管的资源会自动切换回故障主机;
在原故障主机上检查数据库工作状态;
如果数据库的启动不是由HACMP管理,则需手工启动数据库;
检查中间件状态;
检查应用状态。
(6) 恢复正常状态完成,演练完毕。
6. 演练评估:根据演练结果对故障恢复方法进行修正。
(二) 主机硬件故障(RAC方式)
故障描述 :基于HACMP(RAC方式)的双机系统中单节点主机无法工作。
故障处理方法:
恢复步骤:RAC方式的数据库同时工作在2台主机,任何一台主机停止工作,对端数据库不受影响,仍可继续工作。
相关处理:通知相关硬件厂商进行硬件故障诊断或更换。
演练方案:
1. 演练目的:检验HA是否正常,检验数据库是否受影响。
2. 演练准备:
时间:非业务繁忙期。
人员:主机管理员,数据库管理员,中间件管理员,应用系统管理员。
备份:进行HACMP同步操作,进行系统备份。
3. 目标修复时间:30分钟。
4. 故障环境构造:故障主机方进行停止主机操作,在需要停止的主机端执行 #shutdown –F;回车,此时本机关机,数据库进程被终止。
5. 步骤:
(1) 在正常的主机上检查HACMP工作状态,检查是否正常工作。
执行# netstat –in命令,检查IP地址,确认IP地址正常工作;
执行#lsvg –o命令,检查激活的卷组,确认卷组正常工作。
(2) 在正常的主机上检查数据库工作状态,确认数据库正常工作。
检查数据库工作状态,确认正常启动;
检查数据访问。
(3) 检查中间件工作状态,如果工作异常则重启中间件
(4) 检查应用,如果应用异常则重启应用。
(5) 重新启动原故障主机。
在原故障主机启动HACMP,#smitty clstart命令;
HACMP启动完毕,相关资源会自动被原故障主机带起;
在原故障主机上检查数据库工作状态,如果数据库的启动不是由HACMP管理,则需手工启动数据库;
检查中间件状态;
检查应用状态。
(6) 恢复正常状态完成,演练完毕。
6. 演练评估:根据演练结果对故障恢复方法进行修正。
(三) HACMP软件故障
故障描述 :基于HACMP的双机系统中HACMP软件无法正常工作。
故障处理方法:
恢复步骤:按照各单位各自的配置参数,手工带起HACMP所管理的资源。
相关处理:通知业务部门,通知相关软件厂商进行软件修复。
演练方案:
1. 演练目的:检验手工启动操作手册是否适用,检验操作人员是否可以及时完成启动工作。
2. 演练准备:
时间:非业务繁忙期。
人员:主机管理员,数据库管理员,中间件管理员,应用系统管理员。
备份:进行HACMP同步操作,进行系统备份。
3. 目标修复时间:30分钟。
4. 故障环境构造:
双主机方均进行停止数据库操作(可选,如果数据库的起停由HACMP管理则忽略此步骤)。在需要停止的主机上停止数据库;确认数据库停止完毕。
双主机方均进行停止HACMP操作。在需要停止的主机端执行 #smitty clstop;按正常方式停止HACMP;回车,此时本机HACMP停止。
此时2台主机均为仅启动操作系统状态。
5. 步骤:
(1) 手工修改网络地址,将网卡地址更改为HACMP的service地址。
执行# smitty chinet命令,选择响应网卡,更改其地址为service地址;
执行#netstat –in 命令,确认网卡更改完毕。
(2) 手工激活HACMP管理的卷组。
执行# varyonvg 命令,将HACMP管理的数据卷组激活;
执行#lsvg –o命令,确认卷组激活。
(3) 手工启动数据库,确认数据库工作正常。
按照操作手册手工启动数据库;
检查数据库工作状态,确认正常启动;
检查数据访问。
(4) 检查中间件工作状态,如果工作异常则重启中间件。
(5) 检查应用,如果应用异常则重启应用。
(6) 恢复系统至原正常状态。
在双主机手工停止数据库;
执行#varyoffvg命令,卸载HACMP管理的数据卷组;
执行#smitty chinet命令,将网卡地址更改为原有地址;
此时系统又恢复回仅启动操作系统状态;
在双主机启动HACMP,#smitty clstart命令;
HACMP启动完毕,相关资源会自动被HACMP带起;
在双主机上检查数据库工作状态,如果数据库的启动不是由HACMP管理,则需手工启动数据库;
检查中间件状态;
检查应用状态。
(7) 恢复正常状态完成,演练完毕。
6. 演练评估:根据演练结果对故障恢复方法进行修正。
五、 数据库故障
(一) 数据库实例故障(RAC方式)
故障描述:基于HACMP(RAC方式)的双机系统中单节点数据库实例意外中断(数据文件没有任何损坏)。
故障处理方法:
恢复步骤:RAC方式的数据库同时工作在2台主机,任何一个节点的实例停止工作,另外一个节点的数据库实例不受影响,仍可继续工作。
相关处理:通知相关软件厂商进行软件故障诊断。
演练方案:
1. 演练目的:检验Oracle RAC在一个节点的数据库实例意外中断后,另外一个节点是否正常工作。
2. 演练准备:
时间:非业务繁忙期;
人员:数据库管理员,中间件管理员,应用系统管理员;
备份:无需专门备份。
3. 目标修复时间:10分钟。
4. 故障环境构造:
故障主机方进行停止数据库实例操作:在需要停止的主机端执行SQL> shutdown abort;回车,此时本机数据库实例终止。
5. 步骤:
(1) 在正常的主机上检查Oracle数据库工作状态,检查是否正常工作。
执行SQL> select * from gv$active_instances命令,检查数据库实例是否仍处于激活实例数据字典中;
检查$ORACLE_BASE/admin/<SID>/alert<SID>.ora文件,查看是否有报错信息。
(2) 检查数据访问。
(3) 检查中间件工作状态,如果工作异常则重启中间件。
(4) 检查应用,如果应用异常则重启应用。
(5) 重新启动原故障主机上的数据库实例。
在原故障主机启动Oracle实例,SQL> startup命令;
数据库实例启动完毕,重新检查gv$active_instances视图;
连接入重新启动的数据库实例,检查数据访问是否正常;
检查中间件状态;
检查应用状态。
(6) 恢复正常状态完成,演练完毕。
6. 演练评估:根据演练结果对故障恢复方法进行修正。
(二) 数据库实例故障(非RAC方式)
故障描述:基于HACMP(主备机方式)的双机系统中单节点数据库实例无法工作。
故障处理方法:
恢复步骤:由于国税系统并没有使用HACMP软件监控数据库实例状态,当某一节点实例无法工作时,必须手动将数据库实例启动到备用节点。
相关处理:通知相关软件厂商进行软件故障诊断。
演练方案:
1. 演练目的:检验HA环境中一个节点实例中断,能否正常完成将实例切换到另外一个节点。
2. 演练准备:
时间:非业务繁忙期。
人员:主机管理员,数据库管理员,中间件管理员,应用系统管理员。
备份:进行HACMP同步操作,进行数据库备份。
3. 目标修复时间:30分钟。
4. 故障环境构造:
故障主机方进行停止数据库实例操作,在需要停止的主机端执行SQL> shutdown abort;回车,此时本机数据库实例终止。
5. 步骤:
(1) 通过takeover方式,将HACMP管理资源切换至对方节点。
在需要停止的主机端执行#smitty clstop;
停止方式选择“take over”;
回车,此时本机的HACMP停止,资源切换至对方主机。
(2) 在对方节点上检查HACMP工作状态,检查是否切换完成。
执行# netstat –in命令,检查IP地址,确认IP地址正确切换至本主机;
执行#lsvg –o命令,检查激活的卷组,确认卷组正确切换至本主机。
(3) 手工在备用节点启动数据库。
启动数据库监听;
启动数据库;
检查数据库工作状态,确认正常启动;
检查数据访问。
(4) 检查中间件工作状态,如果工作异常则重启中间件。
(5) 检查应用,如果应用异常则重启应用。
(6) 将资源切换至原故障主机。
停止备用节点的数据库实例,数据库监听;
在原故障主机启动HACMP,#smitty clstart命令;
HACMP启动完毕,被接管的资源会自动切换回故障主机;
在原故障主机上手工启动数据库监听以及数据库;
检查中间件状态;
检查应用状态。
(7) 恢复正常状态完成,演练完毕。
6. 演练评估:根据演练结果对故障恢复方法进行修正。
(三) 数据库数据文件故障
故障描述:基于HACMP的双机系统中数据文件(包括控制文件、重做日志、用户数据文件)损坏。
故障处理方法:
恢复步骤:数据库各种类型文件故障的具体恢复方法请参见《省级应用系统故障恢复演练指南_附录》。
相关处理:通知相关软件厂商进行软件故障诊断。
演练方案:
1. 演练目的:检验Oracle数据库的恢复方法以及备份有效度。
2. 演练准备:
时间:非业务繁忙期。
人员:主机管理员,数据库管理员,中间件管理员,应用系统管理员。
备份:数据库备份。
3. 目标修复时间:根据故障不同修复时间有较大差异。
4. 故障环境构造:使用操作系统dd命令清空或者mv命令删除相应数据文件。
5. 步骤:
(1) 在相关节点上检查Oracle数据库工作状态,数据库不同文件的损坏,会让数据库处于不同状态,某些情况下数据库仍然可以正常工作,某些情况下数据库则会由于故障导致实例中断。
执行SQL> select * from gv$active_instances命令,检查数据库实例是否仍处于激活实例数据字典中;
检查$ORACLE_BASE/admin/<SID>/alert<SID>.ora文件,查看是否有报错信息;
检查数据访问。
(2) 检查中间件工作状态。
(3) 检查应用。
(4) 恢复数据库。
根据《省级应用系统故障恢复演练指南_附录》中不同的故障描述进行不同的数据库恢复;
数据库恢复完毕,重新检查gv$active_instances视图;
连接入恢复完毕数据库实例,检查数据访问是否正常,检查数据是否恢复到需要恢复的时间点;
检查中间件工作状态,如果工作异常则重启中间件;
检查应用,如果应用异常则重启应用。
(5) 恢复正常状态完成,演练完毕。
6. 演练评估:根据演练结果对故障恢复方法进行修正。
六、 中间件故障(应用集群的处理能力不足)
故障描述:集群中某个节点出现故障不可用,应用集群的处理能力不足,系统运行缓慢,无法完成正常操作。
故障处理方法:
恢复步骤:增加应用集群的处理节点。
相关处理: 通知主机管理员、中间件管理员、应用系统管理员。
演练方案:
1. 演练目的:检验中间件的水平扩展能力,提高管理员应急能力。
2. 演练准备:
时间:无要求。
人员:主机管理员、中间件管理员、应用系统管理员。
设备:备用服务器。
备份:
备份集群系统的配置文件;
主要是域的config.xml,如:dmctais\config.xml;
如果有proxyServer,则需要备份proxy的配置文件;
WEB-INF\web.xml。
3. 故障修复时间:1小时内。
4. 构建故障环境:减少现有集群环境的节点数,关闭其中一个节点实例。
5. 步骤:
(1) 备份系统配置文件。
(2) 在集群内增加新的处理节点。
将应用拷贝到新的位置,并修改相关配置;
通过weblogic控制台,增加新的处理节点。
(3) 修改软/硬件负载均衡配置,将新的处理节点地址添加到转发列表中。
(4) 检查新的处理节点是否有请求接入。
6. 演练评估:综合评估中间件的扩展能力以及相关人员的故障处理情况。
七、 网络设备故障(负载均衡器故障)
故障描述:负载均衡器无法正常提供服务,或硬件故障不能使用。
故障处理方法:
恢复步骤:启用备用负载均衡器设备,或启用软件代理服务器,或公布应用服务器地址。
相关处理:通知业务部门变更前台登录地址和端口,通知相关硬件厂商进行硬件更换。
演练方案:(针对既无负载均衡备用设备也无软件代理服务器的环境)
1. 演练目的:检验应用服务器是否可以正常接受前台业务访问,及人工负载均衡策略是否合理。
2. 演练准备:
时间:业务繁忙期。
人员:网络管理员、应用服务器管理员、应用系统管理员。
备份:备份应用服务器域。
其他:应提前根据各下级实际情况,制定前台访问的分布策略,尽量使压力平均分布在每个应用服务器上,避免热点出现。
3. 目标修复时间:1-2小时。
4. 故障环境构造,将正在使用的负载均衡设备关闭。
5. 步骤:
(1) 重新启动中间件服务器集群中的应用服务器实例。
信息中心内部测试业务前台能否直接连接应用服务器;
网络管理员在防火墙打开各应用服务器对应的地址及端口。
(2) 按照提前准备好的访问分布策略,通知各业务部门变更业务系统前台登录的地址和端口。
(3) 实时监控各应用服务器运行情况。
(4) 及时调整访问分布策略。
(5) 重新开启负载均衡设备。
网络管理员在防火墙关闭应用服务器对应的地址及端口。
(6) 恢复客户端通过负载均衡设备进行业务操作。
6. 演练评估:根据演练结果对进行访问分布策略修正。
八、 应用系统故障(CTAIS系统补丁升级失败)
故障描述:CTAIS系统升级补丁后重要功能无法使用,且没有替代解决方案或升级程序存在严重缺陷无法完成升级。
故障处理方法:
恢复步骤:
系统升级前分析升级程序,制定升级回退方案、备份数据库、备份应用程序;
升级失败后恢复应用程序;
执行数据库回退程序,如不能回退,恢复数据库;
启动系统;
测试系统管理服务、申报征收等重要功能;
相关处理:通知税务总局呼叫中心、通知业务部门。
演练方案:
1. 演练目的:检验维护人员处理升级失败故障的能力。
2. 演练准备:
升级程序:从税务总局网站上获取升级补丁,该补丁应该是本省未进行升级的;
制定回退方案:分析升级程序,制定升级回退方案(如保存升级程序修改的文件、存储过程、表结构、数据等,一旦出现问题进行恢复);
测试环境:在CTAIS系统的测试环境上进行演练,测试环境的版本与生产环境的版本一致;
参与人员:CTAIS系统管理员、中间件管理员、数据库管理员、业务人员;
备份:备份数据库及应用系统。
3. 构建故障环境:
升级补丁;
对升级补丁进行测试。
4. 步骤:
(1) 执行回退程序。
启动系统,检查回退的结果;
如回退失败使用备份的数据库文件和应用程序进行恢复。
(2) 恢复完成后,启动系统。
(3) 通过前台程序对系统进行测试,测试需覆盖管理服务、申报征收等重要功能。
5. 演练评估:总结演练过程中的得失。
6. 测试过程发现的程序问题通知总局呼叫中心。
九、 机房故障
(一) 电源故障(UPS故障)
故障描述:基于UPS供电的机房因单台UPS故障无法供电可能引起其他UPS过载。
故障处理方法:
恢复步骤:降低负载设备数;
相关处理:通知相关硬件厂商进行硬件维修更换。
演练方案:
1. 演练目的:检验UPS负载能力。
2. 演练准备:
时间:非业务繁忙期。
设备:必要的测试设备。
人员:机房电源管理岗位,主机管理员,数据库管理员,中间件管理员,应用系统管理员。
备份:核心应用系统的数据备份。
测算:根据UPS所供的所有设备的理论最大功率汇总测算出总的负载量,分析测算UPS停一台(或多台)对设备供电的影响,测试演练在线供电的UPS的极限负载值。准确测算是组织演练的重要依据。
3. 目标修复时间:2小时。
4. 故障环境构造:
根据理论测算结果停UPS一台(或多台),保留其余UPS正常在线工作,关掉所有主机和PC服务器等设备。
5. 步骤:
(1) 由电源管理人员与服务器管理人员配合协调工作,逐一记录有关UPS负载率及工作情况。
(2) 服务器管理员开启核心服务器和核心应用需要的基本设备,电源管理员监控并记录在线UPS状态及负载指标;
依次按照日常应用的重要程度由服务器管理员开机加载设备,每加载一次,电源管理员观看记录一次,直到在线UPS过载临界点为止;
启动被停止的UPS设备;
启动其他未开启的设备和相关应用。
6. 演练评估:根据演练结果综合评估UPS配置情况。
(二) 电源故障(市电停电)
故障描述:市电停电,UPS供电。
故障处理方法:
操作步骤:降低负载设备数。
演练方案:
1. 演练目的:测算市电停电时UPS正常保证对核心系统的供电时间。
2. 演练准备:
时间:非业务繁忙期。
人员:机房电源管理岗位,主机管理员,数据库管理员,中间件管理员,应用系统管理员。
备份:核心应用系统的数据备份。
3. 故障环境构造:断开市电,关掉所有非核心应用系统服务器等设备。
4. 步骤:
(1) 断开市电。
(2) 故障环境构造完成即开始计时。
(3) 关掉所有非核心应用系统服务器等设备。
(4) 监控UPS工作状态。
(5) 临近UPS供电极限时间停止计时并合上外电开关。
(6) 恢复所有非核心应用系统服务器等设备。
5. 演练评估:根据演练结果综合评估UPS配置情况。
(三) 电源故障(发电机供电)
故障描述:市电停电,自备发电机供电。
演练方案:
1. 演练目的:掌握市电停电,自备电发电机保证供电情况。
2. 演练准备:
时间:非业务繁忙期。
人员:机房电源管理岗位,主机管理员,数据库管理员,中间件管理员,应用系统管理员,大楼物业电工。
备份:演练前做好各核心应用系统的数据备份。
3. 目标修复时间:2小时。
4. 故障环境构造:断开市电,开启自备发电机发电。
5. 步骤:
(1) 断开市电。
(2) 开启自备发电机发电。
(3) 观察发电机、UPS、主机等设备运行情况。
(4) 恢复到市电正常供电状态。
6. 演练评估:根据演练结果综合评估自备发电机配置情况。
(四) 空调故障
故障描述:机房部分或全部空调无法正常工作。
故障处理方法:
恢复步骤:关闭部分非核心应用系统服务器;必要时采取室外鼓风、加冰等人工降温手段;
相关处理:通知业务部门,通知相关硬件厂商进行故障诊断或硬件更换。
演练方案:
1. 演练目的:空调故障时的应急能力。
2. 演练准备:
时间:非业务繁忙期。
设备:测试设备、风扇、冰。
人员:机房管理员、主机管理员、数据库管理员、应用系统管理员,空调、主机、数据库及应用系统的运维服务供应商。
备份:系统备份、数据备份。
3. 目标修复时间:3小时。
4. 故障环境构造:人工关闭部分或全部空调。
5. 步骤:
(1) 监控机房温度上升的情况。
(2) 按预定计划关闭非核心服务器。
(3) 用大功率风扇从室外往机房送风。
(4) 将冰密封,放置在主机附近。
(5) 监控机房温度、湿度。
(6) 重新开启机房空调。
(7) 启动服务器和各应用系统。
6. 演练评估:根据演练结果评估机房空调制冷能力、性能状态和人员应急能力。