在全球气候变暖的大背景下,极端天气气候事件的频发,将给人民群众的生命和财产安全带来威胁。为了应对气候变化带来的诸多挑战,各国气象部门纷纷加强了综合探测系统的建设。作为综合探测系统的一支重要力量,我国气象卫星风云一号、二号、三号系列,犹如太空的"千里眼",24小时监测着地球上的"风云变化"。
系统资源调动自动化是关键
从卫星上接收各种气象遥感数据到输出各种大气、海洋、陆地图像和定量应用产品,是一个非常复杂的过程,需要多台服务器协同工作。要让多台服务器自动、有条有理、像流水线一样井然有序地处理和运行,尤其是在多卫星条件下,作业流程或作业序列的启动和运行显得更加复杂多变,单靠人工干预,基本上无法完成所需要的作业调度任务,必须依靠自动化的负载调度系统,自动分配计算资源,实现资源调度的自动化。
根据风云气象卫星数据处理的特点,国家卫星气象中心认为负载调度子系统应该具备以下特点:
实现卫星数据处理总体流程调度、控制、管理。由于卫星数据处理是以实时运行的作业为序列,负载调度子系统首先需要跳出单个作业的处理和控制,确保卫星数据处理流程具有正确的调度序列和运行序列,同时也要确保流程运行的可控性、可见性和可管理性。
实现单个作业在多处理器、多机环境的有效和有序调度。卫星数据处理具有数据量大、运算量大等高性能计算的显著特点,需要相当高的计算能力。负载调度子系统必须能根据当前计算机系统的运行情况以及需要运行的作业的情况,根据事先定义好的调度策略,迅速高效地调度相应作业的运行。
通过对现有计算机系统使用效能和可扩展性分析,为业务系统的扩充以及现有系统的运行状况的改进提供参考依据。
Platform解决方案来助力
为实现对风云气象卫星数据处理的调度、监控、运行和管理,国家卫星气象中心与业界公认的分布式资源管理领域的领袖公司Platform合作,构建基于Platform公司作业调度解决方案的负载调度子系统,并将其作为了卫星气象中心运作的基础支撑工具。国家卫星气象中心认为,Platform 公司是集群系统管理软件领域的领导者,其LSF系列负载调度软件在国内外具有众多多的用户案例,在国防、教育、航空、航天、气象、电子等领域得到了广泛的应用。的用户案的用户案例,在国防、教育、航空、航天、气象、电子等领域得到了广泛的应用。
Platform作业调度解决方案包括Platform Process Manager、Platform LSF 两个模块。
Platform Process Manager是一套专业的工作流程管理系统,提供可视化的工作流程创建、编辑、运行和监控,极大地简化了大型复杂工作流程的定义、运行和管理问题。Platform Process Manager能提供卫星数据处理流程的定义、执行、实时监视和控制。用户通过Process Manager的客户端工具或用户定制的工具,创建、触发和管理卫星数据的处理流程。Process Manager后端的流程处理服务器响应来自客户端的请求,根据流程的触发条件启动流程,根据用户的指令控制流程运行,同时维护流程中所有作业的相互依赖关系。当流程中作业的运行条件满足时,Process Manager的服务将实际作业提交到LSF 管理的机群中。
Platform LSF 是一套专门针对气象、工程等高性能计算领域推出的机群管理系统,支持异构的、分布式Uinx/Linux,Windows计算环境,为用户提供可靠的机群管理、负载共享、复杂的作业管理及调度功能和大规模并行计算的能力。LSF 既可单独使用,也可以用作Platform Process Manager的资源管理和调度层,根据Process Manager的指令运行用户流程中的作业。利用Platform LSF 可以实现单个作业在多处理器、多机环境的有效和有序调度。此外,Platform LSF 还提供了可靠的机群管理、负载共享、复杂的作业管理及调度功能。
卫星数据处理自动化成现实
国家卫星气象中心利用Platform Process Manager实现了多卫星数据处理的自动化,以及复杂流程和子流程的实时控制和管理,同时还利用Platform LSF实现了计算资源的共享和负载平衡,确保了计算资源的高可靠和高可用,提升了作业调度的效率和计算资源利用的效率。
实现基于故障的容错与恢复。Platform LSF 支持外部资源的定义,从而可与关键业务的高可用系统无缝集成,支持关键业务的高可用。Platform LSF 及 Platform Process Manager支持主服务器的容错功能,在主服务器故障时,可自动切换到备份服务器,并继续调度作业的自动运行。在此其间,业务系统的运行不受影响。Platform LSF 及Platform Process Manager支持卫星处理流程的故障自动处理与恢复。在流程中的某个作业运行失败后,可以手动或自动地重新运行该作业,并让该流程继续运行。当某个计算节点故障或宕机时,其上运行的作业能自动恢复在其它节点上运行,实现多机切换后流程接续、自动恢复等功能。
实现 "抢占式"的调度策略。Platform 支持"抢占式" 调度策略。在资源紧张时,高优先级作业可以抢占正在运行的低优先级作业使用的资源并启动运行。低优先级作业将被挂起,直到有可用的资源时再继续运行。Platform LSF支持可定制的"抢占" 策略,管理人员可以根据任务的优先级以及系统的运行情况,定制相应的调度策略,确保重要的作业优先执行,同时又不牺牲已经运行作业的当前结果。Platform LSF根据系统负载情况和作业属性动态地调度资源,保证高时效和高精度作业的按时完成,并保证系统资源的充分使用。
实现基于流程的自动调度和处理。卫星数据处理不仅数据量大、处理流程复杂,需要根据时间、事件的不同触发不同的流程完成不同的任务;同时还具有时效性,每一批数据都必须在规定时间内完成,因此从某种意义上说,它还是一个实时系统。Platform Process Manager提供了可视化的工作流程创建、编辑、运行和监控,极大地简化大型复杂工作流程的定义、运行和管理问题。同时Platform Process Manager还可以根据时间、事件以及作业的不同状态对作业流程或子流程进行触发,从而可以根据卫星数据处理的不同情况进行不同的业务处理,实现生产流程处理的自动化。另一方面,Platform Process Manager 和 Platform LSF的有机结合,可以充分利用Platform Process Manager提供的复杂流程定义、流程在线监视和控制功能,同时利用Platform LSF 提供的灵活多样的作业自动调度和处理,根据系统资源情况和作业优先级,动态地调度作业运行,确保卫星数据处理流程的实时、高效。
实现基于时间窗的机器分组和多队列管理。该卫星数据处理平台可用于监测多个卫星,要求能够根据监测卫星的运行情况,提供基于时间窗的机器分组和多队列管理,从而可以根据系统运行需要,合理地调配资源。Platform LSF提供了基于时间窗的机器分组和多队列管理,可以根据系统运行的需要,比如可以根据监测卫星的数量、卫星数据处理的不同阶段配置不同的队列资源和机器分组,从而实现动态地进行系统配置,优化系统资源的使用,确保卫星数据处理的实时、高效。
实现基于数据分布的调度策略。卫星数据处理的数据量非常大,因此需要将不同卫星的数据分布在不同的机器上,在进行作业调度时,就需要根据不同机器上的数据分布情况进行相应的调度。Platform LSF支持机器分组,可以根据数据的分布动态地调度作业的运行,确保运行作业的分布与数据分布相一致。
实现全面的负载监控。Platform LSF能收集每台机器各种负载信息,并支持负载信息扩展,可以根据系统总体情况和设计需要,动态地设置系统资源情况,包括磁盘访问、主机情况、软件的许可证,用户数等。
中国气象局国家卫星气象中心副总设计师施进明表示,倘若离开了Platform LSF基于网格技术的自动化作业调度系统,是难以做到有条不紊地处理大量的卫星气象数据、让计算中心的计算资源利用率达到85%以上的。Platform LSF帮助国家卫星气象中心实现了计算资源的共享和负载平衡,确保了计算资源的高可靠和高可用。