和荣,2,王小宁,肖海力
1.中国科学院计算机网络信息中心,北京 100190
2.中国科学院大学,北京 100190
高性能计算环境是现代社会科学研究、社会服务、经济活动中一种极为重要的战略工具。目前,高性能计算环境包括底层核心软件 SCE[1],实现了资源聚合和统一调度为用户提供了新型的服务模式;环境通用计算平台为用户提供方便的Portal[2],同时提供个性化服务;服务化开发平台提供 SCEAPI[3],支持跨平台和语言开发,应用平台可通过调用接口快速访问环境中资源。
中国科技云是《中国科学院“十三五”信息化发展规划》重点建设任务之一,目标是热情服务中国科技工作者,汇聚融合先进网络、高性能计算、科学数据、软件社区、信息资源,支撑信息化时代的科技创新,让计算与户数驱动科学发现。用户通过实名注册中国科技云通行证即可进入中国科技云门户[4]使用其提供的个性服务。
目前,高性能计算资源聚合服务的通用Portal采用网格账号登录使用而中国科技云门户通过通行证账号登录使用。另外,网站设计风格、规范各不相同。为快速在中国科技云门户中集成高性能计算服务,在账号认证和权限管理、页面对接、接口对接三方面进行了研究和实现。
高性能计算资源聚合服务主要是聚合国内优秀的高性能计算资源,为用户提供优质的高性能计算服务。
系统核心软件 SCE 是由中国科学院计算网络信息中心环境建设与运行业务室开发团队自主开发一套系统中间件,是中国科学院超级计算环境[5]的核心调度器和服务提供者。SCE 聚合了国内多个超级计算资源,屏蔽底层异构性,实现了资源的统一管理和调度,为用户提供便捷的计算服务。
图1 是 SCE的结构图。FS 是 SCE的前端服务,主要用于资源的接入与监控。通过定义 HPC的各种驱动,有效的屏蔽底层系统的差异;系统服务层 CS 是SCE 最核心的模块,提供了用户使用超级计算环境所必需的最基本的功能以及若干扩展功能;面向用户提供名命令行、Web Portal、GUI 等多种使用方式。
为更好的满足用户计算需求,方便快捷的提交作业任务并获取计算结果,我们设计开发了环境通用计算平台。针对用户提供个性化的高性能计算服务,以达到应用软件按需动态发布,支持用户定制计算软件和计算资源等个性化服务目标。图2 是通用计算平台的首页,用户可以直接点击查看应用或集群了解高性能计算环境,也可以通过搜索资源查找自己需要的信息。用户如果没有平台的账号可以通过扫描二维码申请账号,然后通过账号登录平台进而提交作业,使用环境中的资源。
作业提交页面如图3所示。头部导航栏列出所有可通过平台提交的计算软件,包括化学、生物等各种软件,如 VASP、Gaussian 等。
用户通过简单的操作即可提交一个作业。首先输入 CPU 核数和作业运行时间,然后上传输入文件,最后选择所需的资源,点击提交即可把作业交到环境中。作业提交之后可以通过点击历史作业查看作业的状态。
图1 SCE 结构图Fig.1 Structure of SCE
图2 通用计算平台首页Fig.2 Index of Computing Platform
服务化通用开发平台提供了访问科学计算环境的跨平台和语言的通用接口 SCEAPI,有效解决了应用程序访问计算环境的难题。SCEAPI 于2013年上线提供服务,目前已经有化学、材料、生物、地理等学科领域基于SCEAPI 开发了不同形式的应用程序,包括基于Web的专业社区和移动 APP 等。
SCEAPI 采用模块化、多层次的松耦合结构,提供简单易用的Web 服务 API。如图4所示,客户端为调用 API 开发接口的外部应用程序。开发人员可以根据自己的喜好选择开发语言,从而方便地开发自己的程序;服务端为客户端提供访问计算环境的简单易用的接口,包括用户管理、资源查询、作业操作和文件查询等功能。通过参数检查、安全检查保证用户的数据安全;基础服务提供服务端的运行环境,包括日志管理、缓存和容器组件。
中国科技云是基于云计算的国家信息化基础设施,是国内第一个服务科研人员的“云”。它把科学家要在各个网站上寻找的数据和计算工具整合在一个网站上,分门别类地提供给科学家,给科学家按需使用。
图3 应用提交页面Fig。3 Page of Submitting an Application
图4 SCEAPI 功能结构图Fig.4 Structure of SCEAPI
中国科技云门户于2018年4月正式上线,它以科技工作者为中心,以科研信息化资源统一调度和用户自服务为特色,通过技术创新和集成创新,将努力实现各类资源融合、智能运管和动态调度,以全新的模式为科技工作者提供安全、按需、智能化的云服务。如图5所示,用户通过实名注册中国科技云通行证,即可享受到全新的云服务包括获取网络传输、云计算、云存储等多项基础设施服务;上传共享在线运行科研软件;关联搜索科研信息资源等。
随着各大资源池建设的推进,中国科技云将不断丰富科技资源和信息服务,创新服务模式,及时响应科研工作者需求变化,全面践行为全国科技工作者服务的宗旨。
图5 中国科技云门户首页Fig.5 Index of CSTCloud Portal
前面介绍了高性能计算资源聚合服务和中国科技云,可以清晰的了解到高性能计算资源聚合服务采用网格账号登录使用而中国科技云门户通过通行证账号登录使用。另外,网站设计风格、规范各不相同。为快速在中国科技云门户中集成高性能计算服务,在账号认证和权限管理、页面对接、接口对接三方面进行了研究和实现。
为使得通行证账号登录后可直接进入高性能计算环境通用计算平台,主要考虑账号能够对接到网格账号并赋予相应的权限获取环境中的资源。
3.1.1 账号认证
账号认证模块需要实现以下功能:
(1)有效判断用户是否通过通行证登录并可获取用户身份
(2)通行证与网格账号绑定,记录映射关系
图6 是通行证访问 Portal 页面的具体流程。用户访问页面时首次判断是否登录,若未登录跳转到登录页面让用户登录;若已登录,判断是否与网格账号已绑定,绑定直接返回网格账号,否则判断是否具有网格账号,没有则创建新账号并实现绑定;已有网格账号则验证账号的有效性并实现绑定。账号绑定之后映射关系记录到数据库中,下次访问时可直接读取数据库判断用户信息,简化访问页面的流程。
3.1.1 权限管理
高性能计算环境通用计算平台中各个页面的显示数据都是通过调用后台 API 获取,访问不同的API 需要具有不同的权限,所以对通行证用户需要设置相应的权限并进行管理。
图6 通行证访问 Portal 页面流程Fig.6 Workflow of CSTCloud Passport to access Portal
根据目前通行证用户需要访问的接口,用户需要具有基本的查询、作业提交的功能,跟我们现在API权限的分组基本一致,所以管理功能采用目前 API的管理机制实现,对访问网址、访问具体接口都进行授权处理,保证数据的安全。
根据中国科技云工程制定的资源与服务网站的制作规范,对高性能计算资源聚合服务中的网页进行了修改,使其满足相应的规范。
具体修改工作如下:
1)修改域名,采用 cstcloud.cn的三级域名
2)修改网站头部,添加中国科技云 LOGO,并设置超链接
3)网站底部设置版权信息,备案号以及服务支持信息
4)网站色调,采用与科技云门户一直的色调进行设计
高性能计算环境通用计算平台采用 CAS[6]单点登录实现,根据 CAS的特点可方便地支持用户从任意页面点击登录即可进入之前浏览的页面。科技云门户也需要支持通行证用户登录后可直达平台中各个页面。
接入科技云通行证初期只实现了通行证用户登录后可以进入平台首页的功能,但无法直达其中的某一具体页面。为增加这一功能,在原有接入系统的基础上增加回调处理模块,记录用户点击登录的页面,在通行证登录完成后添加回调地址处理,保证用户登录之后回到原来的访问页面。
科技云门户会展示各类资源的统计信息,所以需要接入的各项服务以接口的形式给门户提供数据。目前,高性能计算资源聚合服务提供的接口并不能完全满足科技云的需求,需要开发新的接口,实现通行证登录下即可获取数据的功能。
按照目前科技云门户需要展示的信息,我们设计并实现了两个接口,面向用户的历史资源使用统计信息接口和面向特定权限账号的用户机时按月统计接口。接口采用 Jersey[7]框架实现,延续SCEAPI的风格,返回 JSON 格式数据。其中,包括接口的返回码和数据。返回码代表此次访问是否正确。
为实现快速集成,把账号认证和权限管理模块进一步通用化并开发了一个资源接入系统,方便第三方平台快速的接入到高性能计算环境并使用其中的资源。页面和接口模块根据科技云的需求修改或新增接口实现相应功能。
图7 是资源接入系统的结构图。
图7 接入系统结构图Fig.7 Structure of Access System
图8 是高性能计算资源聚合服务集成在中国科技云门户中的效果图。用户通过中国科技云通行证登录科技云后,点击高性能计算服务即可进入到相关页面提交或者查询作业。页面按照科技云工程的规范进行了修改,在整体风格上保持与科技云同步一致。图9是新增的接口的示例图。由图可以看出接口返回JSON格式数据,方便易读。
图8 高性能计算服务集成于科技云门户效果图Fig.8 High Performance Computing Service integrated to CSTCloud Portal
图9 新增接口示例Fig.9 Interface
高性能计算环境是现代社会科学研究、社会服务、经济活动中一种极为重要的战略工具。高性能计算环境包括底层核心软件 SCE、环境通用计算平台和服务化开发平台。中国科技云通过汇聚融合先进网络、高性能计算、科学数据、软件社区、信息资源,支撑信息化时代的科技创新,让计算与户数驱动科学发现。用户通过实名注册中国科技云通行证即可进入中国科技云门户使用其提供的个性服务。
目前,高性能计算资源聚合服务的通用 Portal和中国科技云门户登录方式、网站设计风格、规范各不相同。为快速在中国科技云门户中集成高性能计算服务,在账号认证和权限管理、页面对接和接口对接三方面进行了研究和实现。通过实现账号、页面和接口三个模块,用户只要注册中国科技云通行证即可登录科技云门户从而使用高性能计算服务。