本发明专利技术提供一种基于容器云的高性能计算集群创建方法和系统,所述方法包括:由管理员通过Docker分别封装高性能计算集群管理服务、调度服务以及存储服务的容器,并上传到容器云平台的镜像仓库;接收用户对高性能计算集群的创建请求;根据所述创建请求确定所述高性能计算集群的计算资源需求量;根据所述计算资源需求量调用容器云平台接口完成高性能计算资源的组合配置,并创建高性能计算集群。本发明专利技术实现高性能计算集群自动化配置,简化部署运维难度,用户只需要专注于高性能计算业务;同时支持多个版本的作业管理软件,满足不同用户的多样性需求;通过容器化提供用户资源池隔离机制,各个用户运行任务时互不干扰,安全性较传统技术高。
A method and system of creating high performance computing cluster based on container cloud
【技术实现步骤摘要】
一种基于容器云的高性能计算集群创建方法和系统
本专利技术涉及高性能计算
,尤其涉及一种基于容器云的高性能计算集群创建方法和系统。
技术介绍
需求的膨胀推动着技术变革,高性能计算作为计算机科学的一个分支,致力于开发高性能计算机和运行在高性能计算机上的应用软件。回顾历史,高性能计算作为一个强大的计算工具,与科学研究的发展密不可分。一方面,科学研究对计算能力永无止境的需求促进了高性能计算技术向前发展;另一方面,高性能计算技术的每一次巨大进步都为科学研究提供了全新的手段。HPC主要聚焦在仿真、物理化学、生命科学、渲染、勘探和气象等领域,上层HPC集群应用环境也比较固定。如今,随着云计算的普及,HPC在各个层面也在逐渐发生变化,和云计算的结合也越来越紧密,各个云服务厂商都陆续推出基于云的高性能计算解决方案。现有的高性能计算集群存在如下缺陷:(1)集群配置部署复杂不易管理。典型的高性能计算集群应用软件栈通常包含但不仅限于,MPI库、作业管理软件以及分布式文件系统等。(2)没法在同一个节点同时支持多个版本的集群应用软件,以及高性能应用的开发集成环境。(3)不支持多租户,用户资源分配繁琐,没有用户资源池隔离机制。(4)基于虚拟化的高性能计算集群计算、存储以及网络性能较物理性能都存在不同程度的折损。
技术实现思路
为了解决上述至少一个技术问题,本专利技术提出了一种基于容器云的高性能计算集群创建方法和系统。为了实现上述目的,本专利技术第一方面提出一种基于容器云的高性能计算集群创建方法,所述方法包括:由管理员通过Docker分别封装高性能计算集群管理服务、调度服务以及存储服务的容器,并上传到容器云平台的镜像仓库;接收用户对高性能计算集群的创建请求;根据所述创建请求确定所述高性能计算集群的计算资源需求量;根据所述计算资源需求量调用容器云平台接口完成高性能计算资源的组合配置,并创建高性能计算集群。进一步的,接收用户对高性能计算集群的创建请求,具体包括:由API服务子系统接收用户对高性能计算集群的创建请求,并验证所述创建请求的相关参数是否合法;如果相关参数合法,则所述API服务子系统调用数据库接口初始化集群信息到数据库;所述API服务子系统通过RPC接口发送集群创建请求到调度子系统。优选的,所述相关参数包括所要创建的高性能计算集群所在容器云平台、集群登陆节点用户名、集群登陆的密钥对、集群类型、集群镜像、所需资源大小、SLURM版本中的任意一种或多种。进一步的,根据所述创建请求确定所述高性能计算集群的计算资源需求量,具体包括:由调度子系统接收到API服务子系统发送过来的集群创建请求;所述调度子系统将高性能计算集群需求的资源按CPU、内存以及存储累加后,对比现有计算资源总量;如果现有计算资源总量满足高性能计算集群需求的资源,则挑选出当前任务最少的执行子系统节点,并发送集群创建请求到选中的执行子系统节点。进一步的,根据所述计算资源需求量调用容器云平台接口完成高性能计算资源的组合配置,并创建高性能计算集群,具体包括:由执行子系统接收所述调度子系统发送的集群创建请求;所述执行子系统将集群创建需求的资源参数结构化成Cloudtest的API规范格式;通过调用Cloudtest的资源创建请求批量创建所需资源,完成资源准备子任务;根据批量创建所需资源执行Ansible部署,完成HPC集群软件部署子任务。进一步的,通过调用Cloudtest的资源创建请求批量创建所需资源,具体包括:创建用户自定义的CPU配置、内存大小组合容器作为登陆节点,并注入指定的密钥对公钥到所述登陆节点的容器;创建用户指定的CPU配置、内存大小组合的容器作为计算节点;将用户所指定大小的共享文件存储分别加载至所述登陆节点和所述计算节点的所有容器。进一步的,在完成资源准备子任务之后,所述方法还包括:将所述登陆节点的容器的IP地址和/或域名写入所述数据库中;在接收到用户的登录请求时,验证用户提供的密钥对私钥是否与预存在容器中的密钥对公钥是否匹配,如果匹配,则允许用户登陆进入容器查看部署状态,如果不匹配,则拒绝用户登录进入容器查看部署状态。本专利技术第二方面还提出一种基于容器云的高性能计算集群创建系统,用于实现上述的基于容器云的高性能计算集群创建方法,所述基于容器云的高性能计算集群创建系统包括HPC容器管理调度子系统和容器云平台;所述HPC容器管理调度子系统,用于接收用户对高性能计算集群的创建请求;根据所述创建请求确定所述高性能计算集群的计算资源需求量;并根据所述计算资源需求量调用容器云平台接口完成高性能计算资源的组合配置,并创建高性能计算集群;所述容器云平台,通过各种容器组合配置高性能计算集群,其包括镜像仓库,所述镜像仓库收录由管理员通过Docker分别封装高性能计算集群管理服务、调度服务以及存储服务的容器镜像,所述容器镜像用于生成相应的容器。进一步的,所述HPC容器管理调度子系统包括API服务子系统、调度子系统和执行子系统,且所述API服务子系统、所述调度子系统和所述执行子系统之间分别通过RPC通信;所述API服务子系统,用于接收用户对高性能计算集群的创建请求,并验证所述创建请求的相关参数是否合法,并在相关参数合法时,调用数据库接口初始化集群信息到数据库;所述调度子系统,用于接收到所述API服务子系统发送过来的集群创建请求,将高性能计算集群需求的资源按CPU、内存以及存储累加后,对比现有计算资源总量,当现有计算资源总量满足高性能计算集群需求的资源时,则挑选出当前任务最少的执行子系统节点并发送集群创建请求;所述执行子系统,用于接收所述调度子系统发送的集群创建请求,将集群创建需求的资源参数结构化成Cloudtest的API规范格式,通过调用Cloudtest的资源创建请求批量创建所需资源,完成资源准备子任务,根据批量创建所需资源执行Ansible部署,完成HPC集群软件部署子任务。进一步的,所述基于容器云的高性能计算集群创建系统还包括外部认证系统,所述外部认证系统用于协助所述API服务子系统完成对相关参数的合法性进行验证。本专利技术实现高性能计算集群自动化配置,简化部署运维难度,用户只需要专注于高性能计算业务;同时支持多个版本的作业管理软件,满足不同用户的多样性需求,具有很强的实用性和扩展性;支持多租户,通过容器化提供用户资源池隔离机制,各个用户运行任务时互不干扰,安全性较传统技术高;相比于基于虚拟化的高性能计算集群,性能折损小。本专利技术的附加方面和优点将在下面的描述部分中给出,部分将从下面的描述中变得明显,或通过本专利技术的实践了解到。附图说明图1示出了本专利技术一种基于容器云的高性能计算集群创建系统的框图;图2示出了本专利技术一种基于容器云的高性能计算集群创建方法的流程图;本文档来自技高网...
【技术保护点】
1.一种基于容器云的高性能计算集群创建方法,其特征在于,所述方法包括:/n由管理员通过Docker分别封装高性能计算集群管理服务、调度服务以及存储服务的容器,并上传到容器云平台的镜像仓库;/n接收用户对高性能计算集群的创建请求;/n根据所述创建请求确定所述高性能计算集群的计算资源需求量;/n根据所述计算资源需求量调用容器云平台接口完成高性能计算资源的组合配置,并创建高性能计算集群。/n
【技术特征摘要】
1.一种基于容器云的高性能计算集群创建方法,其特征在于,所述方法包括:
由管理员通过Docker分别封装高性能计算集群管理服务、调度服务以及存储服务的容器,并上传到容器云平台的镜像仓库;
接收用户对高性能计算集群的创建请求;
根据所述创建请求确定所述高性能计算集群的计算资源需求量;
根据所述计算资源需求量调用容器云平台接口完成高性能计算资源的组合配置,并创建高性能计算集群。
2.根据权利要求1所述的一种基于容器云的高性能计算集群创建方法,其特征在于,接收用户对高性能计算集群的创建请求,具体包括:
由API服务子系统接收用户对高性能计算集群的创建请求,并验证所述创建请求的相关参数是否合法;
如果相关参数合法,则所述API服务子系统调用数据库接口初始化集群信息到数据库;
所述API服务子系统通过RPC接口发送集群创建请求到调度子系统。
3.根据权利要求2所述的一种基于容器云的高性能计算集群创建方法,其特征在于,所述相关参数包括所要创建的高性能计算集群所在容器云平台、集群登陆节点用户名、集群登陆的密钥对、集群类型、集群镜像、所需资源大小、SLURM版本中的任意一种或多种。
4.根据权利要求1所述的一种基于容器云的高性能计算集群创建方法,其特征在于,根据所述创建请求确定所述高性能计算集群的计算资源需求量,具体包括:
由调度子系统接收到API服务子系统发送过来的集群创建请求;
所述调度子系统将高性能计算集群需求的资源按CPU、内存以及存储累加后,对比现有计算资源总量;
如果现有计算资源总量满足高性能计算集群需求的资源,则挑选出当前任务最少的执行子系统节点,并发送集群创建请求到选中的执行子系统节点。
5.根据权利要求1所述的一种基于容器云的高性能计算集群创建方法,其特征在于,根据所述计算资源需求量调用容器云平台接口完成高性能计算资源的组合配置,并创建高性能计算集群,具体包括:
由执行子系统接收所述调度子系统发送的集群创建请求;
所述执行子系统将集群创建需求的资源参数结构化成Cloudtest的API规范格式;
通过调用Cloudtest的资源创建请求批量创建所需资源,完成资源准备子任务;
根据批量创建所需资源执行Ansible部署,完成HPC集群软件部署子任务。
6.根据权利要求5所述的一种基于容器云的高性能计算集群创建方法,其特征在于,通过调用Cloudtest的资源创建请求批量创建所需资源,具体包括:
创建用户自定义的CPU配置、内存大小组合容器作为登陆节点,并注入指定的密钥对公钥到所述登陆节点的容器;
创建用户指定的CPU配置、内...
【专利技术属性】
技术研发人员:王宇,曹雪,
申请(专利权)人:湖南舜康信息技术有限公司,
类型:发明
国别省市:湖南;43
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。