胡 亮(国网湖南省电力公司益阳供电分公司,湖南 益阳 413000)
企业应用系统全冗余部署模式研究
胡亮(国网湖南省电力公司益阳供电分公司,湖南益阳413000)
冗余系统指的是应用两套及其以上相同、相对独立的配置构成互为冗余控制系统。若是处于工作状态的部分出现故障,则作为冗余部分将会承担其工作,实现整套系统的不间断运行。基于此,本文提出了企业应用系统全冗余部署模式,以期实现系统整体运行可靠性大幅提高。
企业;应用系统;全冗余部署模式
企业应用系统部署后,单机隐患和故障往往是系统管理员头疼的问题。一旦应用服务器或数据库服务器出现磁盘、内存等故障,轻则引起系统停运,重则导致数据丢失。尽管可以通过磁盘划分RAID、应用备份、数据备份等方式来提高系统可用性,但始终不是治本之策。本文通过研究一种全方位冗余的部署方式,力求从根本上解决单机故障和隐患影响系统可用性的问题。
随着计算机应用的不断深入,企业对计算机系统的依赖程度也日渐增加。尤其一些关键行业应用上,后台核心系统是否具备高可用性能力,直接影响到公司业务。高可用性包括保护业务关键数据完整、维持应用程序运行连续等多个方面。在这些信息处理系统中保存了大量的关键业务数据,若是出现信息丢失、破坏等现象,将带来严重损失。在传统观念中,往往选择价格昂贵的专有计算机系统来提高业务系统运行的稳定性,系统实施及维护成本极高。而价格较低的单一的PC服务器系统目前还无法满足用户对于安全性及可用性的要求。在资源有限的情况下,如何保证业务系统的高可用性和数据的安全,已成为众多用户关注的焦点问题。
无论是C/S模式(客户端/服务端)还是B/S(浏览器/服务端)模式,大部分企业应用系统在部署时均采用传统的三层架构,即应用程序、中间件、数据库。应用程序和中间件一般部署在一台应用服务器上,数据库部署在一台数据库服务器上,如图1所示。应用服务器上的应用程序通过数据库客户端连接到数据库服务器上的数据库服务端进行数据操作。
图1 三层架构部署模式
此种部署模式虽然简洁高效,但存在单机故障风险。一旦应用服务器、数据库服务器的软硬件出现故障,将导致系统停运。如果应用服务器上的程序和数据无法恢复且备份不到位,系统则面临重新搭建,延长停运时间的风险。如果数据库服务器上的程序和数据无法恢复且备份不到位,则数据库不但需要重新搭建,还将面临数据丢失的风险。
4.1双机工作概念的提出
从广义上来看,就是对于重要的服务,使用两台服务器,互相备份,共同执行同一服务。当一台服务器产生故障,可由另外一台服务器承担相应的服务任务,无需人工干预,实现系统的自动、持续服务。双机热备主要利用备用服务器解决了主服务器故障时服务中断问题。但是,在实际应用中,有时存在多台服务器情况,即服务器集群。双机热备通常需要有共享的存储设备,某些情况下也可使用两台独立服务器。实现双机热备,需要使用专业集群软件或是双机软件。
从狭义上来看,双机热备指的是基于active/standby的服务器热备。服务器数据主要包括数据库数据同时往两/多台服务器写,或使用一个共享存储设备。同一时间只有一台服务器运行,当处于运行状态的服务器出现故障,无法正常启动时,则另外一台备份服务器科通过软件诊测(如:心跳诊断)激活standby机器,确保应用短时间完全恢复使用。
双机的三种模式:①双机热备,也就是常说的主备方式,服务器数据主要包括数据库数据同时往两/多台服务器写,或是使用一个共享存储设备(例如:磁盘阵列柜)。若是主服务器产生故障,通过诊测(例如:心跳/串口线诊断)激活备用机器,确保应用短时间完全恢复使用。②双机互备,双机热备基础上,2个独立的应用在2台机器上同时运行,彼此均为备机,若是一台服务器产生故障,则另外一台服务器可在短时间接管故障服务器的应用,确保应用持续。此种方式实际上是双机热备的一种应用,它避免了两个应用使用四台服务器分别实现双机热备。③双机双工,两台或是多台服务器均为活动,同时运行相同的应用,从而保证整体的性能,也实现了负载均衡与互为备份。此种模式下,需要利用磁盘柜存储技术。对于数据库服务而言,它同时需要数据库软件的支持,因此可以说是比较复杂的。
4.2全冗余部署模式的构建
为了解决上一章节中的单点故障隐患等问题,本章节考虑提出一种全冗余部署模式。
如图2所示,采用2台应用服务器、2台数据库服务器、2台光存储交换机、1台磁盘阵列来实现系统部署。
图2 全冗余部署模式
4.2.1服务器硬盘RAID配置
建议将每台服务器的硬盘划分为两个部分:第一部分硬盘数量视存储空间配置为双数(比如2块),配置RAID1,用于安装操作系统;第二部分硬盘配置RAID5,用于部署程序和存放数据。
4.2.2服务器通过光存储交换机连接存储
每台服务器需要安装2块HBA卡,4台服务器通过HBA卡分别连接到2台冗余的光存储交换机,再通过2台光存储交换机连接到磁盘阵列的2个冗余的控制器。连接时建议采用机柜的光配连通。
4.2.3服务器集群搭建
2台应用服务器、2台数据库服务器之间均采用心跳线相连。应用服务器集群可以采用操作系统自身集群或者中间件集群等方式。数据库服务器集群建议采用数据库集群方式(如Oracle RAC)。公用数据均存放在磁盘阵列中。
4.2.4服务器双网卡聚合
每台服务器的两块网卡做聚合,虚拟为一个IP地址,视为同一块网卡。
5.1系统各层次、各设备的冗余
通过以上部署模式,尽可能实现了系统各个层次、各个设备的冗余。具体如下:
5.1.1服务器硬盘冗余
每台服务器中用做操作系统安装的硬盘采用RAID1部署(完全镜像),一旦损坏1块磁盘,不影响操作系统运行。另外部分的硬盘采用RAID5部署(N-1模式),损坏磁盘数量不大于1块,不影响程序运行。
5.1.2服务器网卡冗余
由于每台服务器的两块网卡做了聚合,一旦损坏1块网卡,不影响网络连通。
5.1.3应用服务器冗余
2台应用服务器通过搭建操作系统自身集群或者中间件集群,一旦1台应用服务器损坏,不影响系统运行,如图3所示。
图3 应用服务器冗余
5.1.4数据库服务器冗余
2台数据库服务器通过搭建数据库集群,一旦1台数据库服务器损坏,不影响数据库对外提供服务,如图4所示。
图4 数据库服务器冗余
5.1.5光存储交换机冗余
通过配置2台冗余的光存储交换机,一旦1台光存储交换机损坏,不影响服务器与磁盘阵列的连通,如图5所示。
图5 光存储交换机冗余
5.1.6磁盘阵列控制器冗余
通过选用带有冗余的双控制器磁盘阵列,一旦一个控制器发生损坏,不影响服务器通过光存储交换机与磁盘阵列连通,如图6所示。
图6 磁盘阵列控制器冗余
同时应用数据、数据库数据文件等公有数据均保存在磁盘阵列中,大大提高了可靠性。
考虑一种比较极端的情况,假设1台应用服务器、1台数据库服务器、1台光存储交换机、磁盘阵列的1个控制器同时发生故障,系统照样可以继续运行,如图7所示。
图7 极端情况下磁盘阵列控制器冗余
5.2系统整体应用优势
①对服务器硬件配置要求不高,可以根据应用情况采用不同型号或配置;②可利用原有生产系统快速构建双机系统,性价比高;③系统切换时间短,最大程度减少业务中断的影响;④切换过程对应用程序无影响,无需重新启动或登录,做到无人值守;⑤系统效率高,系统中数据读写、管理及容错由磁盘阵列来完成。而系统服务故障监控切换处理由软件来完成。双机监控依靠串口线路或专用TCP/IP网路线路,既不占用主机CPU资源也不占用基础业务网络带宽,在实际应用中得到用户的一致好评;⑥支持丰富的应用配置,如:Oracle、MSSQL、Sybase、MySQL、文件服务、Web服务等,无需额外插件支持用户自定义应用;⑦硬件可采用机架式结构,便于维护管理。
通过上一章节中的高可用性分析,该部署模式实现了应用服务器、数据库服务器、光存储交换机、磁盘阵列等各个层次和设备的冗余,大大提高了系统可用性。不过,由于该部署模式涉及设备较多、部署方式相对复杂、对管理员的技术要求较高,后续可以通过硬件功能整合改进等方式来进一步优化。
[1]谢文超.全冗余系统的设计与应用[J].江苏锅炉,2014(3):45~49.
[2]汪 啸.采用冗余数据删除技术进行备份系统优化的应用研究[J].信息通信,2015(3):26.
[3]侯丽娟.网络冗余技术在公司局域网的应用分析[J].网络安全技术与应用,2014(11):132~133.
[4]丁 鑫.基于网络冗余技术的应用[J].工业控制计算机,2014,27(5):162.
胡 亮(1984-),男,工程师,本科,主要从事信息系统管理方面的工作。
TP311.5
A
2095-2066(2016)13-0042-03
2016-4-10