存储容错实例探究:鱼与熊掌可以兼得

系统容错技术的发展有近30年的历史,其间经历了几个阶段:从专用硬件和专用软件的结合到专用硬件和Unix系统的结合,再到通用硬件和 Windows操作系统的结合。本文结合辽河石油勘探局物资公司容错技术的使用,对容错技术的发展和应用进行了深入探讨。

硬件容错难普及

系统容错技术发展的第一个阶段是从1985年到1990年。当时的容错机的机体内有两套甚至多套独立子系统,包括CPU板、总线、内存、硬盘、网卡、多用户卡、电源等。每个独立子系统上均可独立运行操作系统和应用软件。容错技术的关键之处在于,当第一个子系统出现硬件故障时,整个应用系统将无缝切换到第二套子系统上,并继续运行。所谓无缝,指数据不丢失,业务不停顿,系统可以实现零时间切换。这是容错技术的价值所在。

因为硬容错切换技术十分复杂,所以容错机的价格很昂贵,通常在几十万美元到几百万美元之间。当时,容错机的普及率很低,通常只用在国家气象局、中央银行等关键部门。这些容错机采用专用CPU和以SVR4或BSD为核心并嵌入了容错内核的Unix操作系统,在软件兼容性上有较大的局限性。当时,辽河油田的局一级单位因容错机的价格昂贵且信息化应用还不普及,所以未考虑采用容错机。

双机冷备是过渡性方案

系统容错技术发展的第二个阶段是从1991年到1995年。因为容错机的价格昂贵且软件移植困难,所以企业通常不会采用容错机。但是,企业又必须解决业务系统连续运行的问题,因此双机冷备作为一种替代的方案被普遍采用。

所谓双机冷备,即准备一台和主服务器基本一样的备用服务器,当主服务器出现故障时,将主服务器的网线或多用户接口用手工方式转接到备用服务器上,然后人工启动备用服务器和相应的应用程序。这种方式的切换时间一般为几十分钟,手工切换时用户服务完全停止,故障点的数据也无法保存或恢复。这种容错方式的局限性非常大,没有生命力。当时,随着信息化应用的进一步发展,辽河油田的局一级单位以及主要业务单位,如物资公司等,开始逐步配置双机冷备解决方案。系统管理员非常担心主服务器一旦宕机,又要让业务人员手工填补数据。

HA 软件太繁琐

系统容错技术发展的第三个阶段是从1996年到2002年。这一阶段,企业的应用需求是既要降低成本,又要缩短系统切换时间。以高可用性(High Availibility,HA)软件为代表的双机软容错方式在此阶段得到快速普及,代表产品是NCR的Lifekeeper 和Veritas(现已被赛门铁克公司收购)的VCS。

HA软件的基本原理是,在两套系统平台一致的服务器中安装HA软件,两台服务器相互脉动侦测(间隔为几秒到几十秒),备用服务器一旦发现主服务器硬件故障,将自动接管主服务器的作业和用户,并继续运行。HA软件方案能实现自动切换,并具有一定的在线实时功能。但是,HA方案基于软件的方式完成侦测切换,切换时间从几分钟到半小时不等,切换时间内作业和用户服务暂停,而且故障点的数据,尤其是二次提交的数据库数据会丢失。因此,采用HA软件方案,可能使企业、银行和售票网点等的在线应用出现混乱。当主服务器运行数据库、Lotus、Exchange等多个服务时,切换脚本的编写和切换管理对于系统管理员来说是十分困难和繁琐的。

长久以来,数据安全问题一直困扰着我公司。将HA系统容错技术与企业数据库备份技术有机结合,可有效保障数据安全。我公司采用一台Sun Fire4900服务器(配备12个CPU、64GB内存)和6130阵列柜,将服务器分成两个域,即A域和C域,相当于物理上完全隔离的两个整体。A域和C 域分别安装HA 软件,构成双机热备。一台旧的数据库服务器和Sun Fire4900服务器构成双机冷备。旧的数据库服务器和阵列柜安装一套Oracle 9i,构成RMAN备份服务器,保证一个月的全数据库备份。

LVS集群应用系统由多个刀片服务器组成。应用服务器系统通过Mater Web服务器,将前台物资系统的用户请求分发到各节点的Web服务器上,接着通过节点Web服务器将这些请求发送到数据库系统调度器上,然后再根据各个服务器的负载情况,动态地选择一台服务器处理请求,从而大大减轻应用服务器的处理量。

经济型容错机前景广阔

零时间自动切换的硬容错方案价格昂贵,而价格相对低廉的双机冷备或HA软件容错方案又有致命的缺陷。用户需要的是一种合适、经济、成熟的容错产品。以 NEC Express 5800/ft和STRAUS FT为代表的新一代容错机诞生后,系统可用性和经济性之间的矛盾迎刃而解。

NEC Express 5800/ft和STRATUS FT作为纯粹的硬件容错机,不仅继承了早期Unix容错机的零时间切换硬容错功能,而且将应用平台向下延伸至通用的Microsoft Windows和Linux平台。FT容错机的价格与双机冷备或双机HA基本相当,但在容错性能上有了质的飞跃。FT容错机具有双机一体、硬容错、零时间切换、热插拔等功能。应用程序不必做任何修改,就可直接在FT容错机上运行。用户只要购买一套应用软件,就可在主、备系统内分别安装。FT容错机具有很高的容错性能,价格又是普通用户完全可以承受的,因此具有广阔的发展前景。

作为我公司数据安全产品的服务提供商,北京长久斯捷公司一直密切关注数据安全和系统安全的最新发展动向,包括RAID技术、双机容错、磁带备份、SAN、虚拟磁带库、持续数据保护、异地容灾、硬件容错技术等,并将这些技术大量应用于石油企业的业务系统中。在容错机的基础上,我们双方针对存储产品、容错技术和应用系统的融合进行了深入探讨,并制定了我公司未来的数据安全策略。

针对访问时间点比较集中、数据传输速度快等要求,我公司系统和数据备份的主体架构采用存储区域网(SAN)。在此系统中,Web服务器、数据库服务器、备份服务器通过HBA卡与光纤交换机连接,原有的SCSI磁盘阵列与新购买的光纤磁盘阵列通过多模光纤连入SAN网络,磁带机通过SCSI卡与备份服务器连接,并通过磁盘阵列本身具有的双控制器冗余、RAID技术等,保证系统的高可用性。

我们认为,要想使系统具有更高的可靠性,最好采用链路级冗余技术,消除每条物理链路上可能出现的单点故障。通用的存储容错技术必须与具体的应用相结合,才能满足用户的个性化需求。

结构 两套完全一样的系统(既泾渭分明又浑然一体),包括CPU、内存、PCI总线、网络、接口卡、硬盘,通过专用的硬件ASIC电路,使两套系统中的应用和数据完全同步,不仅实现设备的冗余,而且能实现操作系统、应用软件、数据及内存中应用程序的同步和冗余 两套各自分离的系统,通过外部的网络、RS-232、磁盘阵列及HA软件建立联系,但是仅实现了设备上的冗余及数据上的共享

故障切换 两套系统完全同步,在故障时,可以实现无缝切换,切换时间为零,应用运行无断点 故障切换要经过4个步骤:侦测、侦测、再侦测(经过3次故障侦测,判断故障需15~30秒),接管用户(接管故障机的虚拟IP),接管故障机的数据盘,故障机上运行的应用重新启动,相当于自动重新启动原系统,只是没有启动操作系统(因为已启动),切换时间需1~2分钟,内存中正在运行的程序和数据全部丢失

使用 对应用软件透明,凡是能在Linux、Windows 2003上运行的应用软件,如SQL Server、Oracle、Lotus、Exchange等都可使用;两套系统只需一套操作系统、一套应用软件;在发生故障时,可以实现无断点切换 两套系统需分别安装操作系统及应用软件;每个需要切换的应用软件都需要专用的HA Agent;系统出现故障时,应用软件需重新启动,应用有断点;HA是通过软件方式实现的,对环境要求高,需专业人员配置和操作

维护 像使用普通的PC Server一样,不需要专门的维护 HA与操作系统密切相关,每次都在一个特定的环境中进行配置,当环境改变时,例如增加、删除应用或更换盘阵时,需要专业技术人员参与