随着地震勘探技术的不断发展,对计算能力的要求越来越高,大规模并行计算和异构协同计算成为常态,但是在各个地球物理数据处理、解释中心,一直存在以下问题:
第一,业务成本居高不下。软、硬件投资耗费高,由于机构设置靠前服务的需要,往往需要重复购置设备。
第二,资源分散能效差。资源配置呈小而散的特点,设备“孤岛”现象突出,资源无法共享,导致利用率低下,浪费严重。
第三,管理难度大、复杂度高。资源分散导致管理分散,专业化水平参差不齐、问题多,设备运维、统计分析的自动化手段不足。
第四,用户使用体验差。对工作场所、终端设备限制多,移动工作困难,软件之间的协同工作支持不利。
GeoEast-iEco云计算管理系统就是针对上述问题而开发的一套帮助勘探业务向云计算模式(SaaS)转型的软件生态架构(图 1),通过集中管理各类硬件、软件、数据等资源,达到资源共享、数据集中、应用整合、管理统一的目的。该系统向上支撑各种勘探软件,向下管理存储、计算以及网络等各种资源,搭建企业级私有云和公有云,打通勘探、开发等各个生产环节,从而形成勘探专业应用一体化云计算系统[1-2]。
GeoEast-iEco云计算管理系统涵盖了海量资源管理和监控、基于服务质量(QoS)保障的弹性作业调度、用户管理、应用软件管理,采用远程可视化技术提供SaaS模式的云服务。针对海量异构资源,实现了一键式安装、资源自动发现、批量配置和管理以及最高可达秒级的实时监控,规模达2000节点以上。在资源汇聚的基础上实现了弹性作业系统调度,资源紧张时保证QoS,资源充足时提高利用效率,最大化共享资源。同时,统一管理软件资源和用户,在确保用户体验的同时汇聚用户的各种资源,避免浪费。最后针对部署在云中的应用,采用远程可视化技术使用户在任何时间、任何地点、任何设备上访问部署在云中的服务[3-4]。该系统从逻辑构成上分为两大部分(图 2):前端逻辑主要包括访问门户;后端逻辑主要包括各类硬件资源信息的采集、监控以及全局调度。通过前、后端协作统筹调配用户、软件、硬件资源,达到物尽其用,对资源的使用情况实时监控和自动化运维,从而完成对软、硬件资源的全生命周期管理。
GeoEast-iEco云计算管理系统采用B/S应用的分层架构,其特点是业务逻辑、数据存储、界面展示互相分离,逻辑清晰(图 3)。接入层使用React、Bootstrap、JQuery+HTML5的主流架构,实现自适应布局、高效页面动态渲染、事件响应处理。业务逻辑层采用轻量级Java EE框架,利用目前行业内主流的SSH框架[5]:
(1) Struts,提供MVC分层架构,提供表示层支持和业务逻辑层的请求分发服务等[6];
(2) Spring,提供容器服务,系统内模块符合“控制反转”的架构思想,降低模块之间耦合;
(3) Hibernate,提供数据持久层的封装,降低数据库使用难度、复杂度,简化数据访问代码[7];
(4) MySQL数据库,作为业务逻辑的持久化层,利用关系型数据库的关联关系、结构化查询等特点构建业务逻辑的数据存储层。
2 登入方式及远程可视化GeoEast-iEco云计算管理系统实现了全Web风格的访问门户,其中集成了用户管理、软件管理、资源管理和监控、作业调度管理、远程可视化连接管理、统计分析等系统管理界面,系统管理员可以通过浏览器全面管理和控制系统;普通用户也可以通过浏览器使用处理、解释云服务ls-ltr(图 4)。用户可在任意终端(Linux或Windows)使用Web浏览器登陆云计算环境,选择应用软件,系统调度将根据可视化服务器的负载情况选择合适的登入节点,并将云桌面推送到用户终端,同时启动应用软件并恢复上次登入场景;处理用户可将批量作业提交到全局作业调度系统,全局作业调度系统根据调度策略以及资源状况,将作业发送到计算节点完成作业的处理运行,用户可以在云桌面查看作业的运行状态及结果[8]。
远程可视化技术是用户使用云环境软、硬件资源的基础,GeoEast-iEco云计算管理系统目前实现了基于DCV+VNC和VirtualGL+VNC以及Windows的Rdp方式的远程可视化。
在应用中,用户通过浏览器访问门户远程使用各类应用软件。通过将远端服务器上绘制的二、三维图形由网络传输到本地,用户可在任意终端随时随地开启应用进行体验,还能很好地支持多用户协同操作。通过有效利用现有可视化技术,云计算管理系统可很好地支持三维应用,对网络和终端的要求均较低,根据用户的实际工作环境在开启远程桌面时可选择单、双屏。该系统内置了可视化服务器的调度算法,用户启动远程应用时,根据系统的调度策略,为用户选择最合适的可视化服务器,自动实现负载均衡,借助于Linux系统的容器技术,在多用户环境下,隔离分配给用户的资源,避免不同用户之间应用的资源抢占和互相干扰。
3 硬件资源管理和监控目前,GeoEast-iEco云计算管理系统管理和实时监控的硬件资源包括可视化、计算服务器以及存储(图 5),可以处理2000节点以上的超大规模海量异构资源(支持异构)。通过部署在服务器上的常驻进程,云计算门户能够自动发现、注册各种服务器资源及其详细信息,并自动为服务器分组,简化系统管理员的配置管理工作。该系统能够实时监控服务器的CPU、内存、网络收发速率、磁盘读写速度等性能指标,依据这些监控数据实现对资源的有效调度。随着硬件技术的发展和不同应用需要,该系统支持对服务器的监控指标进行自定义扩展。
对于存储,根据GeoEast处理、解释应用的IO特征,云计算管理系统设计了独特的、适合地球物理勘探业务的存储性能检测方法,可以监控存储性能的不同时间粒度。在地震数据处理业务中,计算和存储长期存在“剪刀差”现象,多核化使该问题更严重。为了应对该问题对系统整体性能的影响,通过设置可模拟地震数据处理IO特征的“探针”脚本实时监控存储的负载,当存储性能达不到预期而出现负载过高时进行报警,并及时通知调度系统停止或减少该存储的使用,从而实现IO过载保护[9]。
依据数据库中存放的大量监控数据,云计算管理系统能够对系统中的服务器、集群、共享存储等各种硬件的运行性能以及使用情况、各个软件的使用情况进行不同时间粒度的统计、分析。系统管理员可以从很长的时间区间了解系统的整体情况,也可以选择较短的时间段分析某种软件出现异常时的硬件运行情况,协助排查问题,以供决策使用。
4 全局作业调度系统为使GeoEast-iEco云计算管理系统中海量硬件资源物尽其用,发挥最大的效能,必须借助于强大的全局作业调度系统。依据系统中资源监控的各项信息,调度系统可以掌握所有资源的实时状态,从而合理、有效调度各类资源为作业服务。
在实际应用中,作业调度不能只考虑作业的吞吐量,对租户而言QoS也非常重要。如果不限制租户的可用资源,那么租户将倾向于过度消耗资源,从而造成系统整体效能过差。因此GeoEast-iEco云计算管理系统调度的总目标是资源紧张时要保证服务质量,资源充足时提高利用效率,即同时具备资源静态划分和动态共享的特点。
GeoEast-iEco云计算管理系统的作业调度可以按软件、部门、项目、用户等各种维度调度,支持弹性调度,在资源紧张时为租户提供指定配额的资源,在资源充足时可以超配额的使用空闲资源(图 6)。因此,系统可以使用动态配额而不是划分的静态资源,从而实现最大化共享资源,提高服务质量和资源利用率[10-11]。
GeoEast-iEco云计算管理系统主要由资源管理与监控、用户管理、软件管理、远程可视化、批量作业调度、统计分析及数据管理等7大模块构成。资源管理与监控模块实现了资源自动发现、资源的批量配置管理、一键安装部署、自动化运维(图 7)、秒级监控、存储管理、服务器(图 8)和存储的监控(图 9)、故障报警等功能[12]。
软件管理模块能够整合大量的现有软件资源,统一管理,形成一个松散耦合的开放整体(图 10)。用户可以利用远程可视化技术访问使用系统中部署的软件资源。该系统不仅能支撑GeoEast软件,同样可以支撑其他第三方软件,无论这些软件是基于Linux还是Windows平台。
通过软件的基本信息注册和权限配置,系统管理员能够处理用户、软件和资源间复杂的分配关系,进行精细定制以适应不同的需要。但对于较小型、简单的环境,只需注册软件的基本信息,无需进行权限配置即可通过系统内置的缺省配置使用软件,简化系统管理员的操作。
用户管理模块实现了云门户和操作系统用户的统一信息和权限管理。每个云门户用户都映射为操作系统的真正用户。为了便于管理,可以对用户进行不同层次的逻辑划分,即划分为不同的部门以及用户组。云门户的每个用户必须有相应的用户角色,通过用户角色实现对用户的资源分配以及可使用的门户功能限制。基本的用户角色为系统管理员和普通用户,根据实际需要可以新建角色,并赋予不同的功能权限。
统计分析及数据管理模块提供服务器负载、集群负载(图 11)、存储统计及用户、设备(图 12)、应用连接统计,根据实际需要可按不同的时间粒度进行。
GeoEast-iEco云计算管理系统以“共享”为理念,可在规模、成本、便捷、体验和服务等多个方面带给用户切实的好处。
首先,在规模上,GeoEast-iEco云计算管理系统针对油气勘探、开发业务特点而设计,可高效管理海量异构资源,为大数据和大计算提供必备的物质条件,通过资源整合使用户单位有能力运作大型项目,提高市场竞争力。
其次,在成本上,GeoEast-iEco云计算管理系统实现了各种资源集中管理、统一调度,实现资源共享和最大化利用,能够显著降低硬件和软件投资,在项目运行过程中对资源按需分配、弹性伸缩,可以进一步缩短项目周期,有效降低业务成本。
第三,在用户体验方面,GeoEast-iEco云计算管理系统具备负载均衡、用户隔离能力,有效避免相互之间的影响,用户通过远程可视化访问部署在云中的服务,可以在任何时间、任何地点、任何设备上进行访问,让计算无所不在,让业务更加自由、连续和灵活。
第四,在便捷性方面,GeoEast-iEco云计算管理系统能够部署计算类、交互类或混合类等多学科、全流程的应用软件,集中对软件和硬件等资源进行管理,实现一站式服务。
云计算是未来的发展趋势,但是地震数据处理、解释业务从传统模式迈向云计算不仅仅是一个技术问题。业务要转型,不仅需要像GeoEast-iEco云计算管理系统这样的软件工具,还需要从基础设施、组织架构、运营管理等方面予以调整配合,从而使云计算更好地发挥作用,推动地震数据处理、解释业务迈进云计算的新时代!
[1] |
文佳敏、尚民强, 等. GeoEast新平台预研软件技术调研报告之——云计算及计算机硬件技术发展[R]. 东方地球物理公司物探技术研究中心, 2013.
|
[2] |
王宏琳, 罗国安. 国产地震处理解释软件的发展[J]. 石油地球物理勘探, 2010, 45(2): 299-305. WANG Honglin, LUO Guo'an. Seismic data process-ing and interpretation software progress in China[J]. Oil Geophysical Prospecting, 2010, 45(2): 299-305. |
[3] |
黄铠, 福克斯. 云计算与分布式系统: 从并行处理到物联网[M]. 北京: 机械工业出版社, 2013.
|
[4] |
易昌华, 李春芬, 胡素平, 等. 用互联网思维改进勘探组织模式[J]. 物探装备, 2018, 28(3): 141-144. YI Changhua, LI Chunfen, HU Suping, et al. Improving exploration organization model with inter-net thinking[J]. Equipment for Geophysical Prospect-ing, 2018, 28(3): 141-144. DOI:10.3969/j.issn.1671-0657.2018.03.001 |
[5] |
孙伟, 郝爱语, 张伟华. Restful Web Service在校园信息集成中的应用[J]. 软件, 2013, 34(8): 5-6. SUN Wei, HAO Aiyu, ZHANG Weihua. The applica-tion of Restful Web Service in the campus information integration[J]. Software, 2013, 34(8): 5-6. |
[6] |
张丽君, 齐建卓, 吴宏波. 基于MVC模式的Struts框架在Web系统开发中的应用[J]. 内蒙古大学学报(自然科学版), 2005, 36(1): 89-90. |
[7] |
顾丽红, 周涛. Hibernate性能优化研究[J]. 计算机工程与设计, 2008, 29(7): 1739-1741, 1744. GU Lihong, ZHOU Tao. Research on performance optimization of Hibernate[J]. Computer Engineering and Design, 2008, 29(7): 1739-1741, 1744. |
[8] |
黄埔, 耿红江, 杨光辉, 等. GeoEast系统在华北油田地质研究云计算平台的推广应用[J]. 石油地球物理勘探, 2017, 52(增刊1): 220-224. HUANG Pu, GENG Hongjiang, YANG Guanghui, et al. Application of GeoEast in the cloud computing platform of geological research in Huabei Oilfield[J]. Oil Geophysical Prospecting, 2017, 52(S1): 220-224. |
[9] |
赵长海, 晏海华, 王宏琳, 等. 面向地震数据处理的并行与分布式编程框架[J]. 石油地球物理勘探, 2010, 45(1): 146-155. ZHAO Changhai, YAN Haihua, WANG Honglin, et al. Seismic data processing oriented parallel and distributed programming frameword[J]. Oil Geophy-sical Prospecting, 2010, 45(1): 146-155. |
[10] |
罗刚, 陈继红, 孙孝萍, 等. 大规模异构集群地震作业调度与资源管理系统的设计与实现[J]. 石油地球物理勘探, 2017, 52(增刊2): 200-205. LUO Gang, CHEN Jihong, SUN Xiaoping, et al. Heterogeneous cluster scheduling and resource management system for a large number of seismic data processing jobs[J]. Oil Geophysical Prospecting, 2017, 52(S2): 200-205. |
[11] |
刘晓东, 赵晓芳, 金岩, 等. 企业私有云环境下面向高性能计算的资源弹性分配算法[J]. 高技术通讯, 2018, 28(8): 669-676. LIU Xiaodong, ZHAO Xiaofang, JIN Yan, et al. Quota-based resource elastic allocation algorithm for high performance computing under private cloud[J]. Chinese High Technology Letters, 2018, 28(8): 669-676. DOI:10.3772/j.issn.1002-0470.2018.08.001 |
[12] |
罗刚, 周坤. 孙孝萍. 云计算管理系统测试报告[R]. 东方地球物理公司物探技术研究中心, 2018.
|