四川气象高性能计算机及模式运行监控系统应用实践

2018-07-16 11:50马艳军
中低纬山地气象 2018年3期
关键词:省局高性能集群

吕 爽,马艳军,陈 琪

(1.高原与盆地暴雨旱涝灾害四川省重点实验室,四川 成都 610072;2.四川省气象探测数据中心, 四川 成都 610072;3.78127部队,四川 成都 610011)

1 引言

近年来极端天气和极端气候频发,自然气象灾害增多,都对气象行业的预报预警业务提出更高、更旺的需求;预报预警的准确率、时效性、精细化程度和服务水平都需要大幅度提高。相比传统的经验预报和统计预报,数值预报能够提供更加客观、定量、精细化的预报结果,而且能够大幅提高预报过程的自动化[1-3]。为加强对西南地区精细化天气预报业务的技术支撑,四川省气象局花费大量精力建立了西南区域数值预报模式系统(South West Center WRF ADAS Real-time Modeling System,SWC-WARMS),于2014年6月投入运行,并将产品面向全省及西南各省提供共享,且效果良好,目前产品已经成为预报员不可缺少的参考工具。要保证SWC-WARMS业务模式能够持续输出产品,一方面要保证承载SWC-WARMS模式及其备份系统业务运行的IBM和曙光高性能计算机系统稳定可靠,另一方面要保证模式应用系统的稳定性。然而高性能计算机系统架构复杂,一直以来缺乏一种直观有效的监控管理工具对其进行性能监视和资源管理。同时SWC-WARMS系统包括观测资料的预处理、客观分析、模式预报、后处理、气象可视化等多个环节,其工作流程极为复杂,需要采用合适的技术对其进行有效的监视和管理。综上所述,急需建设一套有用的监视管理系统来保证数值预报模式和计算环境的高可靠性和稳定性。

2 技术方法

基于Ganglia分布式监控技术进行研发,实时监视高性能计算机系统每个计算节点的运行状态、进程数量,按照不同时间粒度实时统计系统的CPU、内存、存储资源利用率、I/O负载、进程和内部网络流量情况。使管理员和用户能够方便、快捷的了解和掌握IBM和曙光高性能计算机系统的各项性能指标及资源使用情况,实现对计算资源性能的有效监视,为资源的合理分配和调度提供科学依据。梳理和研究SWC-WARMS数值预报系统的业务流程,基于SMS (Supervisor Monitor Scheduler)技术,实现对数值预报模式系统流程化的调度,对其整个运行过程实施有效的监控,在无人值守的情况下能够记录模式运行过程中各个关键节点状态,确保用户和管理员能够在第一时间准确的进行故障定位,保证业务模式的时效性要求。

3 技术实现

四川气象高性能计算机及模式运行监控系统包含两个子系统:省局高性能计算机性能监视子系统以及SWC-WARMS数值预报模式自动化监视管理子系统。

3.1 高性能计算机性能监视子系统

省局IBM PureFlex P460是刀片式高性能集群系统,其计算节点浮点峰值能力为26.35万亿次/s[4]。省局曙光TC5000集群系统包括28个计算节点,其计算节点理论浮点峰值性能为11.83万亿次/s[5]。

Ganglia是UC Berkeley发起的一个开源集群监视项目,设计用于测量数以千计的节点[3]。Ganglia的核心包含gmetad、gmond以及Web前端3部分,这3部分之间通过XDL(xml的压缩格式)或者XML格式传递监控数据,达到监控效果[6]。RRDtool是一个基于Perl的功能强大的数据存储和图形生成工具[4],使用RRD以所谓循环的格式来存储时间序列数据[7]。

3.1.1技术路线和结构设计结合省局IBM和曙光高性能计算机架构现状,采用Ganglia+RRDTool+Apache开源架构,进行研发,实现对曙光TC5000和IBM PureFlex P460的性能监视。省局高性能计算机性能监视子系统从结构上分为客户端、服务端和用户端3部分。如图1所示,将省局IBM和曙光高性能计算机被监视的计算节点作为客户端,系统研发多个脚本实时采集客户端的CPU、内存、硬盘、网络流量等度量数据以及服务器类型、操作系统版本信息,并发送给服务端;服务端将数据实时存储到rrdtool数据库中,并为数据统计和页面展示提供访问接口,在Web页面中通过提取并解析数据库中的数据,以图形方式实现对集群计算节点各项指标进行监控,从而直观的反映整个集群的性能。用户使用的个人计算机作为用户端,通过用户端的浏览器可以查看各个计算节点和整个高性能计算机系统的运行情况。系统功能主要包含两个方面:监视和统计。监视功能主要是监视每个计算节点的运行状态和资源使用情况,能够实时自动刷新;统计功能主要是统计不同时间粒度下集群及每个计算节点的计算、存储、网络流量等各种资源使用情况。

图1 高性能计算机性能监视子系统软件结构Fig.1 The software structure of high performance computer performance monitoring subsystem

3.1.2技术实现及监视结果在省局曙光TC5000集群中选择登陆节点node33作为Gmetad程序运行节点,即服务节点;node1至node28共计28个计算节点作为被监控节点,运行gmond程序,即客户端。在省局 IBM PureFlex P460集群中选择cda01n02作为Gmetad程序运行节点,即服务节点;cda01n[02-14]和cda02n[02-14]共计26个计算节点作为被监控节点,运行gmond程序,即客户端。由于曙光和IBM集群处理器结构和操作系统不同,故在两个集群中需要部署不同版本的Ganglia,并根据不同集群的编译环境进行本地化和二次开发。系统能够监视高性能计算机的34个性能指标,如下表1所示。

表1 高性能计算机性能监视子系统监视指标Tab.1 The index of high performance computer performance monitoring subsystem

如图2所示,省局曙光集群性能监视Web主页面上方,实时展示了集群的CPU核总数,在线主机和下线主机;最近15 min、5 min和1 min系统平均负载百分比。页面主体部分实时显示了整个集群所有被监控的计算节点状态,包括每个计算节点上个小时CPU资源使用情况、内存空间使用、网络流量、运行的进程数量等,系统管理员可以将这些监视结果信息作为参考依据,结合各个节点的资源使用情况,安排各个作业的提交顺序,避免出现大量节点繁忙,而部分节点完全空闲的状态,从而有效避免了用户排队等待时间过长问题,提高了集群使用效率。

图2 省局曙光集群性能监视主页面Fig.2 The monitoring page of Provincial Bureau Dawning Cluster performance

如图3,展示了过去1d中,2017年3月27日03时—2017年3月28日00时(GMT)时间段内, 曙光集群node1计算节点CPU利用率,可以看到,最高利用率达到89.34%,最低利用率为85.71,可以推断,此时间段内曙光集群node1一直处于高度繁忙状态。

图3 曙光集群CPU利用率(2017年3月27日03时—2017年3月28日00时(GMT))Fig.3 CPU utilization of Dawning Cluster (March 27, 2017 03∶00—March 28, 2017 00∶00(GMT))

如下图4所示,IBM集群性能监视界面实时呈现了整个集群各个计算节点上个小时平均负载状况。如图5所示,性能监视界面展示了IBM高性能集群cda02n14计算节点上个时次运行的进程数量和整个集群的进程数量,从而系统管理员可以直观的掌握各个计算节点在整个集群中的忙闲度,合理和客观的为用户分配资源。

图4 IBM 高性能集群系统监视页面Fig.4 The monitoring page of Provincial Bureau IBM Cluster performance

3.2 SWC-WARMS数值预报模式自动化监视管理子系统

3.2.1SMS技术SMS (Supervisor Monitor Scheduler)软件是一种功能化编程语言,是欧洲中心中期天气预报(ECWMF)开发的主要用于数值预报系统运行的一个基础软件。它提供了一个面向工作流的开发组件,用于描述工作过程,调度运行和监控管理。

3.2.2结构和设计基于SMS (Supervisor Monitor Scheduler)技术,采用客户端/服务器结构进行设计。服务器端:定义数值预报模式的业务流程,对这些作业进行调度和管理,收集所需要的监视信息,并通过远程调度的方式将数值预报模式提交到高性能计算机系统上运行。客户端:根据配置的参数对被控系统进行监控,用户通过客户端界面管理和监视数值预报模式业务系统的运行状态,出现异常情况则报警。

图5 IBM 高性能集群系统运行进程监视Fig.5 IBM high performance cluster system running process monitoring

设计思想是利用SMS 技术,对SWC-WARMS数值预报的流程做详尽的划分,将功能类似的SWC-WARMS模式模块组合在一起, 将复杂单一模块拆分成多个任务,设计程序实现IBM高性能计算机loadlevel作业调度系统与数值预报自动化接口的紧密结合,以图形化界面直观的显示模式运行流程,在出错的情况下,向维护人员提供模式系统出错的详细信息,从而将模式出错的概率和损失程度降低到最低,进而降低维护人员的工作强度。

3.2.3技术实现SWC-WARMS是西南区域气象中心最为重要的业务模式系统,该系统基于WRF(3.5.1)和ARPS5.3.3(ADAS)建立,中心经纬度:(32°N,100°E),分辨率为9 km,预报时效72 h,每6 h输出一次结果。对SWC-WARMS模式流程进行详细梳理:模式在世界时04时、10时、16时和22时自动启动,每次运行都包括预处理(preprocess)、资料预处理(arps )、adas同化观测和wps分析同化及主模式wrf运行和后处理postprocess。结合SWC-WARMS的实际业务特点,完成SWC-WARMS模式的流程化调度开发,运用了SMS触发机制(triggering),各模块之间密切关联,后一作业模块的运行依赖于前一模块的完成,只有在前一作业模块正常完成的情况下,才进行下一模块作业。SWC-WARMS模式自动化运行流程如下:SWC-WARMS模式定义文件SWCWARMS.def,定义了一个任务包(suite),包括sms文件和h文件,sms文件详细定义了模式的相关作业, h文件定义相关变量。用户通过CDP登录SMS服务器后,提交任务包定义文件SWCWARMS.def,即编译def文件,并发送给SMS系统。在重启动SMS后,启动作业包。通过SMS图形化窗口XCDP查看SWC-WARMS模式运行如图6所示。

图6 SWC-WARMS模式自动化管理流程图Fig.6 SWC-WARMS model automation management flow chart

4 应用效果分析

四川气象高性能计算机及模式运行监控系统自2016年1月投入业务使用后,运行稳定。系统研发成果目前是系统管理员和数值模式运维人员管理高性能集群和业务模式的重要工具。表2中各项指标是每年省局向中国气象局上报的高性能计算资源使用评估效益指标。从各项指标值来看,自从2016年初四川气象高性能计算机及模式运行监控系统上线之后,系统年平均可用率和CPU年平均利用率有所提高,同时由于监视工具的使用,使得系统软硬件故障能够得到及时发现和定位,2016年前后,高性能计算机系统故障影响业务时间明显有所下降。全国区域业务模式统一检验平台对四川SWC-WARMS模式检验的结果数据显示,2014—2017年,四川SWC-WARMS模式系统发生故障使产品推迟生成时间在30 min以上的几率分别为2.95%、2.83%、1.38%、1.23%呈逐年下降的趋势,自2016年开始,模式自动化监视管理工具的使用,实现了对SWC-WARMS流程化的调度监视,不仅能够快速发现故障,还可以从故障点实现断点续作,大大降低了业务模式的故障率,使得该项指标与2016年之前相比,大幅下降。

表2 高性能计算资源使用评估效益指标Tab.2 Performance evaluation index of high performance calculation of resource consumption

5 结束语

四川气象高性能计算机及模式运行监控系统的研发和使用有效保障了省局高性能计算机和数值预报模式的业务运行,对于充分发挥省局高性能计算资源使用效益具有重要的意义,保证了模式能够在规定时间内高效的向预报员提供产品,对于省局预报预测业务水平的提高也起到了一定的作用。

猜你喜欢
省局高性能集群
四级高级主办
海上小型无人机集群的反制装备需求与应对之策研究
一种无人机集群发射回收装置的控制系统设计
省局采取多种形式宣传新修订的《测绘法》
Python与Spark集群在收费数据分析中的应用
一款高性能BGO探测器的研发
勤快又呆萌的集群机器人
高性能砼在桥梁中的应用
一张纸的旅程
车位