APP下载

面向防汛业务的软件定义数据中心运维管理实践

2020-01-07宗志锋

水利信息化 2019年6期
关键词:防汛数据中心运维

叶 鸣,宋 亮,把 祎,宗志锋

(上海市防汛信息中心,上海 200050)

0 引言

防汛部门从日常业务到洪水预报、防洪调度、汛期防洪咨询等,核心业务几乎均需要 IT 技术的支撑。近年来,面向防汛业务的数据中心业务系统集中程度越来越高,系统全生命周期管理的需求越来越强烈,外部监督和业务发展对生产系统的稳定性和高可用性提出了越来越高的要求。当前,云计算[1]的概念已经从理论走向实践,人们对云计算的认识和关注主要包括计算、存储、网络等基础设施资源的虚拟化和自动化资源管理。但在真实的环境中,防汛业务数据中心生产环境的基础架构资源很难做到全标准化、虚拟化管理,在其上运行的业务系统依然采用传统软硬件紧耦合架构,迁移到新的基础架构平台难度大;业务应用系统在汛期等关键节点可用性和服务质量要求高,运维管理压力大。

上海市防汛信息中心根据云计算技术的发展趋势和业务的发展要求,实践集约化建设的理念,建设一套符合防汛业务应用的云服务平台[2],逐步实现以“大枢纽、大平台、大服务、大应用”的思路开展防汛信息系统的建设工作,逐步提升行业信息化管理和业务协同能力的需求,开展运维管理平台建设,逐步实现平台对基础资源环境的集约化管理:通过多层次虚拟化现有硬件资源,建立弹性伸缩、资源共享的有虚拟机也有轻量级容器服务的基础架构;通过流程化资源申请模式,形成分工明确,可回退可追溯的信息化资源审核机制;通过租户化的使用方式,形成开发、项目管理、系统维护等人员多方的运维管理平台,为信息中心机关用户及行业处室提供自助的信息化基础资源服务。

鉴于此,通过对云计算环境下软件定义数据中心概念的深入研究,结合防汛业务现状,设计一个面向防汛业务的软件定义数据中心架构,并尝试将该架构运用于上海市防汛信息中心运维管理云服务平台(以下简称运维管理云平台)项目中,通过具体的运营实践对可靠性进行测试。

1 设计原则和体系架构

1.1 设计原则

在传统的数据中心设计过程中,必须遵循以下4 个设计原则:

1)标准化。标准化是指严格按照工业标准和规范设计数据中心的每一组成部分,使它们具有一致性。标准化使得数据中心与底层设备厂商解耦,减少了对生产厂商的依赖。

2)简易化。简易化是指通过大规模的 IT 整合降低数据中心的复杂性,使数据中心的组成类型和种类更少、更简单,向标准化靠拢,从而方便管理和加速应变,降低运营成本。

3)模块化。模块化是指基于模块的服务模式,以面向服务的体系结构为基础,使基础设施转化成为预先确定功能的组成构件。

4)集成化。集成化是指使用自动化工具集成和统一管理各种服务(包括基础设施、应用、信息等服务)。

模块化设计方式加上自动化的管理工具集成,能够在资金、空间和设备利用率、人力资源等方面取得巨大效益,为提高冗余能力和扩展容量提供方便。与其他行业相比,面向防汛业务的数据中心,除了要满足业务系统快速部署、方便管理的普遍需求,还要面对该行业特有的高级别业务连续性和数据安全性需求。因此,本研究所描述的云平台架构,在考虑标准化、简易化、模块化和集成化的同时,融入了横向松耦合、纵向应用隔离的设计思想。将操作系统、应用程序、业务数据进行运算和存储横向解耦合,形成计算、存储、网络、应用等多种类型的资源池,从而降低系统复杂度,提高管理效率;通过动态逻辑部署和组合计算、存储和网络等云资源,使不同业务系统自成一体并在环境和功能上互相独立,增加了业务系统间数据的安全性,软件定义的数据中心资源保持高度冗余,可进行资源的灵活调度从而保障业务的连续性。

1.2 体系架构

防汛业务数据中心中通常包含大量的内部和第三方业务系统。一个典型的业务系统主要由操作系统、Web 服务、应用运行环境、应用程序及业务数据(结构化或非结构化数据)等程序和数据组成。传统数据中心中,业务系统间各自分散对数据的保护及业务连续性的管理,这会使得业务系统间标准不统一,并产生信息孤岛现象,极大妨碍了数据中心对业务系统的统一管理。同时各业务系统间各自为营,也使得各数据中心重复建设现象严重,增加了运营维护成本。

因此运维管理云平台将操作系统等业务系统组成要件,按照其在业务系统中充当的角色和层次进行分离,抽象成不同类别的资源池,总体分为数据、平台和应用等层,并对各层进行标准统一化的管理。

运维管理云平台采用分布式结构设计,通过基础设施云、数据云、应用云三大支撑体系,形成一系列能够自动化部署的整体服务能力,并通过多层次完整服务交付体系对不同业务逻辑、地理位置的服务能力进行汇聚和服务生命周期控制,并对应用数据及异构数据进行整合,最终在统一的平台门户中向租户和应用系统以服务形式发布。运维管理云平台框架可以概括为“三横一纵”4 个组成部分,“三横”包括应用云、数据云、基础设施云,“一纵”为服务管理平台。将服务管理平台与 3 朵“云”进行对接,并且将基础设施云的资源、数据云的数据与应用云的应用进行有机整合,是平台构建的重点,也是“一纵”的价值体现。

运维管理云平台的整体架构如图1 所示。

1.2.1 数据层

数据层完成对数据的持久化存储,由数据存储和备份两大区域组成。数据存储主要由以下 3 个部分组成:

1)镜像区。用来存放虚拟机镜像文件,通过对存储区挂接集群文件系统,对虚拟机运行支撑环境提供共享的网络存储空间。

2)结构化数据区。主要用来存放和业务相关的数据库数据,通过统一的 iSCSI(Internet Small Computer System Interface)接口对上层提供网络存储逻辑卷。

3)非结构化数据区。主要用来存放和应用相关的非结构化数据,通过统一的 iSCSI 接口对上层提供网络存储逻辑卷。

在数据层,对业务连续性和数据安全的保障主要通过同步和备份 2 个方面进行。

1.2.2 平台层

平台层为上层应用系统提供高可用支持,主要包括数据库、文件系统、备份和运维管理云平台资源管理等服务。平台层的计算单元全部以虚拟服务器和容器方式运行,并通过运维管理云服务平台资源管理服务进行架构、配置和监控。平台层的 4 种服务具体分析如下:

1)数据库服务。数据库服务器安装并运行Oracle,SQL Server,MySQL 等数据库管理系统,以簇方式配置,使用由结构化数据存储区提供的逻辑卷进行数据存储,并为上层应用程序提供数据库服务。

图1 运维管理云平台整体架构图

2)文件系统服务。文件系统服务器挂载由非结构化数据区提供的逻辑卷,并为上层应用程序提供文件存储服务。

3)备份服务。备份服务器是对所有数据存储区的数据,根据备份策略进行数据备份的服务器,与后台的备份设备对接。

4)资源管理服务。此服务用来运行云平台运维和运营管理所需的软件及中间件,包括用于运维的资源管理和运营的服务管理等系统。支撑云平台以模块的方式进行服务级部署,对云资源进行统一集中管理;还通过对 CPU、内存、网络、硬盘等虚拟资源的监控,从数据的安全性和业务的连续性角度进行预警;另外还可以指定相应的系统参数阀值,根据制订的策略,及时对有问题的虚拟机进行处理。

1.2.3 应用层

应用层包含应用运行所需的操作系统、运行环境和应用程序本身,但不包括应用数据。这样的设计使虚拟机内容与业务状态无关,便于管理和迁移。当某一业务系统发生故障时,只需要启动一个新的虚拟机并与后端存储进行关联就可以恢复服务,保障第三方应用的高业务连续性。应用层的计算单元通过运维管理云平台资源管理服务进行架构、配置和监控。

应用层分为第三方应用和内部业务 2 个系统区块。所有部署的应用应满足数据与计算分离的要求,使用应用程序本身对集群化部署和负载均衡的支持,以操作系统集群或主机冷热备份方式支撑应用的业务连续性。内部业务系统是指支撑上海市防汛信息中心自身业务需要的应用所包含的综合性服务系统,也包括数据挖掘服务系统等。通过此类服务系统的运行服务,可以更好地为第三方应用厂商的应用服务,并可提供高级的报表和数据服务。

2 关键技术

2.1 基于 SOA 的耦合组件技术

耦合是一个组件对另一个组件的依赖程度。由于可以独立于所有其他对象构建、测试和替换,独立于所有其他对象的每个组件,因此松散耦合会影响应用程序的可靠性。当一个模块发生变化,紧耦合会迫使其余模块也跟着一起进行变动,使得模块的集成需要更多的时间和精力,模块难以被重用。因此耦合松紧程度影响应用的可靠性、SOA 和最终的云应用。松紧耦合的应用特征如表1 所示,可以根据应用的耦合松紧程度对它们进行度量。

表1 应用特征列表

SOA 定义了基于协议和功能的接口,可用于部署多个业务领域的松耦合服务包,能将功能分拆成独立的单元或服务,可以在应用生产过程中组合和重合它们, QoS[3]是 SOA 的端到端的传输,不仅涉及到服务自身的服务质量,而且涉及到从物理层到应用层的所有与服务传递有关的服务质量的网络要求。网络层的服务质量参数归结为带宽(或吞吐量)、延迟、抖动、错误率、可用性(或在线时间)、网络安全,将服务或应用程序或客户端各层影响服务质量的因素总结为相依性(包括安全性、可用性、可靠性)、存储、速度、操作系统、安装和配置等。

2.2 多模高可用技术

计算机系统的可用性是以可靠性和可维护性衡量的。在工程上,系统的可靠性用 MTTFs(服务的平均无故障工作时间)衡量,可维护性用 MTTRs(服务的平均修复时间)衡量。

一般来说,高可用性有以下 3 种工作方式:

1)主备方式 (非对称方式)。主备方式[4]是主机工作,备机处于监控准备状况。当主机宕机时,备机接管主机的一切工作,待主机恢复正常后,按使用者的设定以自动或手动方式将服务切换到主机上运行,数据的一致性通过共享存储系统解决。

2)主主方式(互备互援)。主主方式[5]是 2 台主机同时运行各自的服务工作且相互监测,当任一台主机宕机时,另一台主机立即接管它的一切工作,保证工作实时,应用服务系统的关键数据存放在共享存储系统中。

3)集群工作模式(多服务器互备方式)。在集群工作模式[6]中多台主机一起工作,各自运行 1 个或几个服务,各为服务定义 1 个或多个备用主机,当某个主机发生故障时,运行在其上的服务可以被其它主机接管。

2.3 软件定义模式

通过软件定义的方法可以使数据中心的资源服务不受特殊硬件的限制,从而摆脱传统数据中心服务模式复杂而僵化的困境[7],该方法可以汇聚并聚合计算、存储、网络、安全保护、高可用等服务能力,通过驱动策略的人工智能进行管理。同时,客户可以访问被软件定义所优化的数据中心,为大多数业务应用提供最佳的保障服务,大大简化并降低繁琐的操作和运维的成本[8]。

3 实践与测试

上海市防汛信息中心运维管理云平台采用松耦合、多集群、高可用部署模式,所需要的组件模块都按照松耦合的方式建设,并且每个组件模块都在多台服务器上进行互备互援的主主模式部署。

通过坚持自动化、服务化、产品化的运维管理设计原则,完成了运维管理云平台的构建。在运维人数不变的情况下,平台支撑的项目和业务应用数量增长了 3 倍,完成的资源自动化全生命周期管理不计其数,成功实现智能运维的阶段目标。

从运维管理云平台的业务连续性、数据安全性和周期性备份 3 个方面,利用 20 个高可用性测试点对运维管理云平台新架构的高可用性进行了验证,验证了新云平台架构在业务连续性、数据安全性和周期性备份方面的完整能力。

应用层应用的集群部署方式,确保了应用自身的高可用性;平台层提供的多模高可用和快照功能,确保了运维管理云平台在发生服务器异常断电断网,甚至虚拟机镜像文件被破坏的情况下,上层应用服务虚拟机可以进行重启迁移或者快照恢复,保证了应用业务的连续性(虚拟机在 2 min 内可以完成重启迁移及快照恢复);数据层将应用的虚拟机镜像文件与重要数据分离开,且网络链路自身的冗余和高可用性搭建,保证了应用数据读写的连续性和速度(网络存储双机头在 45 s 内完成网络文件系统服务切换,不会对应用服务的连续性造成影响)。

运维管理云平台松耦合的架构特点,使承载应用服务的虚拟机只提供计算功能,应用的重要文件和数据保存在外挂 iSCSI 磁盘中。应用虚拟机的镜像文件通过平台层的备份和存储设备的 Sync Mirror等功能提高安全性保障。

数据周期性备份可以结合运维管理云平台实际业务的需要,从虚拟机整体、系统内部和应用级 3 个层次进行备份策略的制定,确保运维管理云平台数据的不丢失和正常恢复(虚拟机镜像文件完成初次备份的时间为分钟级,且可以正常恢复)。

4 结语

上海市防汛信息中心对软件定义数据中心架构进行了实地部署测试,并验证通过本设计架构的高可用性。对面向防汛业务的软件定义数据中心运维管理进行考察和实践可知,数据中心建设的重点是确保关键业务数据和应用程序、平台、网络等的高可用性。软件定义数据中心架构的设计、部署、测试充分论证了架构的有效性和高可用性,但是在测试过程中暴露出的智能策略方面的不足还需要继续进行改进,以满足云平台及其中运行的业务应用整体上线的需求。

实践证明,软件定义数据中心架构能够很好地解决现阶段防汛业务数据中心日常生产过程中的管理瓶颈问题,可为构建面向防汛业务的运维管理云平台提供示范与参考,也可为将来防汛类业务在软件定义数据中心架构下的运行和维护积累经验。后续将在更高的平台层面研究软件定义数据中心对防汛类全业务的支撑和服务模式。

猜你喜欢

防汛数据中心运维
酒泉云计算大数据中心
夏季防洪防汛
浅析数据中心空调节能发展趋势
防汛当前莫添乱
关于建立“格萨尔文献数据中心”的初步构想
运维技术研发决策中ITSS运维成熟度模型应用初探
防汛,就是要和隐患“对着干”
风电运维困局
杂乱无章的光伏运维 百亿市场如何成长
淮委组织开展2017年防汛抢险联合演练