查看原文
其他

一个高稳定的数据库平台是如何构建的?

邓文亮 等 中国教育网络 2022-11-22

厦门大学一卡通系统核心数据库平台的升级基于X86架构硬件设备,突出以高可用性和高安全性为理念,构建全新的系统服务模式,在确保系统运行高可靠性和不间断性的同时,也关注业务随需动态调整的功能。

厦门大学校园一卡通系统核心数据库平台于2011年建成,采用IBM小型机架构,随着一卡通数据规模和交易业务不断扩大,该平台逐步落后于业务的发展需求,硬件故障不断增多,运维成本高。

为了解决这些问题,学校采用了基于X86架构的软硬件一体机对数据库平台进行了改造、升级和优化,实际建设和运行效果达到了预期目标,数据库运行环境和运维管理得到很大的改善。

1

学校数据库平台现状


厦门大学一卡通系统核心数据库平台承载着思明校区、翔安校区和漳州校区的一卡通应用,包括商务消费、水控、电控、圈存应用等,账户规模约35万,日均流水约20万笔、年均流水约6000万笔,生产库数据量约70G,并发量约200,历史库数据量约1T,日结备份时间需要3个小时。

平台基于IBM P750小型机加集中式存储XIV,使用Oracle 10g数据库,采用RMAN脚本进行周期性的数据库备份。平台拓扑结构如图1。

图1 基于IBM小型机架构平台

现有数据库平台基础架构体系,逐渐落后于业务发展和运维管理要求,主要表现为以下几点:

1.数据库性能不够,无容灾备份体系

现有的数据库设备P750和XIV已上线运行多年,面临高故障率的风险,所承载是学校核心业务系统,目前日结和备份速度非常缓慢,尤其是备份,需要将近3个小时。容灾备份体系未建立,如果数据库设备故障,不能保证及时恢复一卡通系统应用环境,将对业务系统产生重大影响。

2.数据库软件版本较旧,缺少原厂支持

现有的业务系统数据库使用Oracle 10g版本,Oracle厂商已经停止对10g版本进行技术支持和补丁升级,业务的运行存在潜在的风险。

另外,升级到Oracle 11g后能享有大量新版本带来的新的技术特性,如SCAN负载均衡、Active Data Guard容灾库只读查询、效率更高的运行优化器、更多的分区和子分区类型、数据压缩、高可用单实例、更多的ASM特性等多项高可用和特性的增强。

3.数据库运维缺少有效监控

目前数据库运维主要依赖于人工操作,缺少自动化监控工具。如果出现服务器性能瓶颈、日志报警、运行异常或主备库复制中断不能被及时发现,都可能会导致业务中断,甚至数据丢失,存在很大的运维风险。

4.现有的体系封闭,运维管理难度较大

IBM小型机和集中式存储体系封闭,只能使用专有部件,导致Flash卡或者Infiniband等高性能的新技术使用受到限制。同时封闭体系和专用部件也存在服务人员较少和备件获取困难等问题,导致服务响应不及时。

除了基础架构的不足外,数据库访问控制和数据安全也存在一定的风险,主要表现为以下两点:

1.应用程序的数据库账户和

口令存储和传播范围较难控制

由于目前的运维和开发体系的人员安排,应用程序的数据库账户和口令传播范围较难控制,账户和口令存储在应用服务器的连接配置文件内,无法保证数据库用户口令的安全性。

2.非法的数据修改未能进行审计

由于业务系统的重要性,客观上存在一定的恶意数据库登录尝试和数据库数据篡改操作,在数据被非法修改后,目前系统自身不能及时发现,只能等管理或用户等业务操作人员发现后再修订,存在较大的业务上的信誉风险。

2

建设目标与架构选型


由于配置X86架构硬件设备搭建数据库服务器集群平台,突出以高可用性和高安全性为中心理念,构建一个全新的系统服务模式。

平台建设完成后,在确保系统运行高可靠性和不间断性的同时,将具有完备的功能扩展及随业务需要动态调整性能的功能,能够提供高效安全的系统服务,使信息处理能力,业务管理水平不断提高,能够满足三大校区一卡通应用不断拓展的需要,形成一个整体有序、可靠实用和结构开放的校园一卡通数据库平台。

数据库主机平台架构稳定性和服务持续性是项目建设首要考虑的因素。校园一卡通系统是学校信息化建设的重要内容,也是网络中心最关键的业务系统之一,一旦停机将会对全校师生员工的学习、生活和工作造成重大影响,并且由于系统提供的是准金融级的服务,一旦发生数据丢失,已经处理过的事务将很难再现,由此发生的损失对于学校来说是无法接受的,因此只有足够高的稳定性和可靠性才能满足校园一卡通系统的可持续性发展需要。

此外即使所有部件都是冗余的,就一套主机而言,也无法百分之百保证全时段正常运转。为了提高系统性能和安全性,还需要做到以下三点:

前端发布系统与数据库分离,防止黑客以注入式攻击等方式通过前端发布系统的漏洞对数据库造成损害,同时也可以减少病毒感染的几率,最大限度的保障数据库安全。

数据库系统需要做热备,能够可靠的自动切换。这样,当一个节点发生故障的时候,其他节点会自动接管业务,不影响对外提供服务。

在异地部署一套灾备系统,这样在极端环境下,当本部的主服务器整体宕机后,灾备系统能迅速接管业务,保证提供一卡通服务。

3

新平台建设方案


基于设备利用和运维的实际情况,使用主流X86服务器、高性能SSD固态盘和分布式存储搭建RAC集群,组成软硬件一体化的高性能数据库平台实现以下目标:

1.计算节点可安装Oracle单实例或者RAC集群软件,并且计算能力可以进行水平扩展。

2.每个存储节点可配置PCIe Flash卡,SSD或者HDD,成为一个独立的存储单元,IO资源也可按需进行水平扩展。

3.两台Infiniband交换机,防止单点故障。互联组件将独立的存储资源整合成共享存储池,并实现存储层和计算层之间数据的高速互联。

图2 基于X86架构的软硬件一体化平台

面向上述目标,基于X86架构的软硬件一体化平台的拓扑如图2,配置如下:

1.计算节点

配置2台X86服务器实现计算节点冗余,安装运行Oracle软件,支持单实例和RAC架构,提供数据运算服务。

2.存储节点

配置3台X86服务器,配置Flash卡,SSD固态盘,提供数据存储服务。满足Oracle 11G RAC仲裁磁盘三个独立节点的要求,可支持数据文件两副本和三副本的要求。

3.Infini Band交换机

配置两台40Gb/s-56Gb/s高带宽低延迟的InfiniBand交换机,实现计算和存储节点间的高速网络传输。

4.高速存储互联组件

一个基于高速网络的传输软件,它将对存储设备高并发、低延迟的IO请求同步到远程存储设备上。互联组件基于RDMA协议实现,通过零复制网络技术和内核内存旁路技术减少服务器CPU的耗费,避免了内核空间和用户空间上下文切换,高效、快速地实现了数据传输协议。

5.智能监控平台

一整套完善的智能监控方案,可以实现对数据库、主机、网络、存储设备的全面可视化监控及自动化运维。通过管理和监控等运维制度的统一,减少隐藏的故障风险,提高安全性。

6.自动化管理平台

提供一系列自动化管理的功能,为数据运维提供了极大的便利性。

7.备份云平台

实现对一卡通系统数据实时备份功能,并实现了真正的灾备一键切换。

具体实施要点包括:

1.基于分布式存储和RAC的集群模式,实现高可用。

通过两台高性能的X86服务器作为计算节点,部署标准的Oracle RAC,实现节点间的冗余。任一计算节点故障,原有的应用服务器和客户端连接均可切换到另一计算节点上,无需人工干预。

三台配置高性能存储介质的X86服务器作为分布式存储集群的节点,数据写入是会跨存储节点实现两份数据的写入,任一存储节点故障,数据访问和写入不受影响。

计算层和存储层的连接通过IB网络互连,两个IB交换机形成两个独立的星形网络,通过multipath功能实现存储的多链路冗余,链路上任一组件故障,都可以切换到另一可用的链路上。

2.升级数据库版本,启用新特性。

升级到当前主流的Oracle 11g数据库,可以使用SCAN负载均衡、效率更高的运行优化器等诸多特性,同时主流的数据库版本,有利于寻求厂家和外部第三方的技术支持,减少运维风险。

3.配备运维平台,实现有效管理。

配备自动化监控平台,提高管理效率,实现运维简化。对于数据库异常状态,复制延迟等能及时发现,支持邮件、短信等多种告警方式。同时对于性能曲线,TOPSQL,空间使用能实时展示,能有效地帮助运维人员掌握数据库运维状态,减轻时间管理成本,降低了故障发生的概率。

4.引入开放架构和一体化运维,降低持有成本。

通过引入X86体系硬件和LINUX操作系统等开放架构,服务资源的获取和使用成本能大幅度降低,运维更加高效。同时软硬件一体化平台能实现数据库和硬件平台的一体化维护,通过一站式服务,降低持有成本。

4

建设效果与优点总结


基于X86架构的数据库平台建成后,系统日结操作时间由原来的1个小时减少到20分钟,性能提高4倍,有些重要的业务页面数据加载时间由原来的20秒减少到3秒。

平台的的容量和性能够满足一卡通系统未来7~8年的发展需求,高可用性和稳定性为一卡通系统提供全天候不间断的数据服务,数据库云平台和监控软件极大方便了日常的运维管理,真正意义上实现对一卡通数据库的可监可控可管,远程灾备平台帮助我校实现了一卡通系统无容灾备份架构的历史,极大减轻了日常运维管理压力。

随后,图书馆、信息化和财务系统也按照此模式对数据库平台进行了改造和升级,同样取得了很好的效果。

表1 不同时期不同平台性能对比

总结建设成果,该方案具有以下优点:

1.高性能比。相较于传统的小型机架构和全闪存存储,开放架构的一体机能提供更高的性能和一体化的运维服务,后期维保等运维成本也低于封闭体系。

2.良好的数据库安全保护设计。方案中包含更安全的数据存放环境,形成防止非法登录、数据保护和修改审计的整套体系,能形成事前、事中和事后的整体保护。

3.优越的扩展性。数据库一体机采用分层设计,存储层全部采用X86服务器,扩展时可以扩展存储节点服务器的存储容量,也可以新增存储节点。性能和容量都能实现线性扩展,扩展性良好。

4.监控平台能有效地监控一体机硬件状态和数据库工作状态,减少运维人员的管理成本。

5.数据库复制技术能非常好地满足数据库的容灾需求,实现对一卡通数据的容灾保护,保证业务的持续性。

作者:邓文亮、李录章、林俊伟(厦门大学信息与网络中心)陈明希(厦门大学图书馆)

责编:郑艺龙

投稿、转载或合作,请联系:eduinfo@cernet.com

往期推荐

● @众高校,是时候更新数据中心架构了

● 从《数据安全法》视角探讨重要数据保护

看完了,点个赞呗~

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存