一、设计原则
1、单机可展性
即设备升级的余地,系统采用的每一台主机,都具备良好的扩展性。特别是系统硬件具备平衡的设计,各主要组成部分(CPU,内存,I/O)可以按照应用的需要相对独立地升级,而不互相牵制。另外,高性能的主机还应该具备网络接口的Trunking,即将几个物理网络通道合成一个高带宽的逻辑网络通道的冗余扩展,实现网络可扩展性。
2、群集可扩展性
一个方案中,使用了群集的设计,其目的就是负载均衡、冗余、可靠性和可扩展性。在群集中增加一台新的机器,结合系统级高可用群集的配置,由并行数据库自行调整处理任务的分布。
3、高可靠性设计
对于关键应用来说,高可靠性的要求是不言而谕的。在总体方案设计中,我们始终将系统的高可靠性设计放在首先考虑的位置,系统的高可靠可用性,也即系统能否提供高度持续不间断的用户服务能力,是系统成败的关键所在。系统设计无单点故障。
4、高可用性
确保数据完整有效,无丢失,无错误。
二、概述
随着系统日常业务运行及数据量大大增加,反恐事件突发,特别是在可靠性保障及数据安全性,需要对于核心系统应构建集群容错系统,应通过一整套基础备份方案统一备份系统,极大的提高了业务系统的可靠性及数据安全性。在基础备份方案完善的基础之上,应要着重考虑核心业务系统的灾难热备能力,可以在生产节点遭遇重大灾难打击的时候可以快速的恢复业务应用,提高抗重大灾难打击能力。
核心系统应该运行在Oracle数据库之上,信息化IT系统提供稳定性及数据安全性基础保障。Oracle数据库系统是一个较为复杂的数据库,作为信息化IT系统的基础数据存储和运行平台,存储着核心数据资料和基本业务逻辑,其稳定性及安全性直接关系着对外服务能力。
如何确保应急系统信息化IT系统各业务子系统之间的数据信息共享,数据之间及时或定时同步。采用ORACLE STREAM数据流技术进行业务系统之间的数据同步,几乎对主系统不产生任何性能压力。大大提高核心业务系统的性能,稳定性等。
三、系统设计
四、服务器负载均衡及集群技术
服务器系统的高可靠运行是任何一个信息系统硬件环境设计的基本原则,随着信息系统对稳定性、可靠性以及性能的要求不断提高,我们在进行系统设计时更多的引进目前主流的、技术成熟双机集群以及负载均衡技术。
1、服务器集群
集群技术(Cluster)定义如下:一组相互独立的服务器在网络中表现为单一的系统,并以单一系统的模式加以管理。此单一系统为客户工作站提供高可靠性服务。大多数模式下,集群中所有的计算机拥有一个共同的名称,集群内任一系统上运行的服务可被所有的网络客户所使用。Cluster必须可以协调管理各分离的组件的错误和失败,并可透明的向Cluster中加入组件。一个Cluster包含多个(至少二台)拥有共享数据存储空间的服务器。任何一台服务器运行一个应用时,应用数据被存储在共享的数据空间内。每台服务器的操作系统和应用程序文件存储在其各自的本地存储空间上。Cluster内各节点服务器通过一内部局域网相互通讯。当一台节点服务器发生故障时,这台服务器上所运行的应用程序将在另一个节点服务器上被自动接管。当一个应用服务发生故障时,应用服务将被重新启动或被另一台服务器接管。当以上任一故障发生时,客户将能很快连接到新的应用服务上。
服务器集群技术能够非常有效的提高系统的可靠性、稳定运行,而且所有的应用切换时间非常短暂,对终端用户透明,用户的业务应用可以持续运行,他并不关注后台故障的发生。
如图所示,服务器集群包含至少两台服务器,其中一台为主服务器,另一台为备服务器,两台服务器共享存储。客户端访问数据时候通过主服务器进行访问,备服务器通过心跳线不断监测主服务器的运行状况,一旦主服务器故障,被服务器将自动接管主服务器的所有应用服务,确保整个系统的持续运行。
2、服务器负载均衡
虽然服务器集群技术有效解决了系统的可靠性问题,但是随着信息化程度的不断提高,大型的应用系统不断被推出。指挥系统是一个涉及多方面资源的综合应用系统,系统可靠运行是首要条件,此外硬件环境还需要考虑系统性能问题,尤其是在系统并发访问量大的情况下,如何保障系统的运行效率。在此我们推荐选用服务器负载均衡方案。业界服务器负载均衡方案很多,而且技术都比较成熟,我们推荐选用Oracle 10G中的RAC(Real Application Cluster)技术以及Weblogic网络部署软件的负载均衡技术。
Oracle RAC:数据库级负载均衡技术,实现数据访问层的负载均衡,达到数据库系统的高可用性。
应用中间层的负载均衡技术,部署在B/S多层机构的应用中间层,通过两台应用服务器实现中间层逻辑处理的负载均衡。最终保证应用层的高可用性。
Real Application Cluster(以前称作Oracle Parallel Server,OPS)用来在集群环境下实现多机共享数据库,以保证应用的高可用性。同时可以自动实现并行处理及负载均衡,还能实现数据库在故障时的容错和无断点恢复。
Real Application Cluster为大多数高要求数据库环境提供了极高的性能和完美的纠错功能。Real Application Cluster允许集群系统或大型并行系统中的多个节点共享同一物理数据库。Real Application Cluster可以自动进行负载平衡、故障修复和规划停机时间,以支持高可用性应用程序。它还显著提高了大型数据仓库和决策支持系统的性能。与并行查询选件结合,它还提供了节点间并行性和节点的并行性,以得到更高的性能。
多服务器集群的Cluster结构,因其具有高可靠性、大容量共享磁盘支持、以及无断点的故障恢复,越来越受到世人的关注,越来越多的硬件厂商都相继推出自己的Cluster机种和机型,它已经成为硬件平台的一个新的发展方向。
Oracle独有的并行服务器技术可以良好地保证应用系统的高可用性,同时最大限度地发挥多机系统硬件平台的性能。
在并行服务器方式下,两台(或多台)服务器上各自运行一个数据库核心进程,但共同管理、操作一个数据库。客户端无论连接到哪个服务器都可以在数据库中进行操作。当服务器A由于故障失效时,数据库系统本身并未停止工作,连接在服务器B上的客户端还可以继续进行正常工作。同时,服务器B上也不需要再启动新的数据库服务器进程,因此也没有“切换时间”。
Oracle并行服务器方式有以下优点:
各服务器共享一个数据库,在正常运行时可以进行负载分担,无需考虑应用数据的人为分割。
并行服务器方式对应用完全透明,在应用程序设计和开发的过程中也不需要进行特殊编程,简化了开发的复杂程度,同时今后系统扩展也无需修改应用程序。
不需要重新启动数据库核心进程,缩短了故障造成的停机时间。