超算云作业调度系统EHPC镜像集成实现方法
文献发布时间:2024-04-18 20:01:30
技术领域
本发明涉及云计算系统作业调度技术领域,具体而言,涉及一种超算云作业调度系统EHPC镜像集成实现方法。
背景技术
EHPC(High Performance Computing)弹性高性能计算机集群是由计算、存储和网络三种产品组成的集群,以云平台设施为基础,基于计算机上多个处理器或集群中多个计算机的硬件资源、计算系统和环境,将大规模的计算任务分成许多小任务,并分发给每个服务器并行计算。
EHPC弹性高性能计算中的集群是高性能并行计算的资源集,由云平台弹性计算实例组成,包括调度管理集群资源的高性能调度器和运营业务所需的软件堆栈,以解决大规模的科学、工程和业务问题。
构建EHPC高性能计算系统的主要目的就是提高运算速度,EHPC集群适用于高性能计算场景。要达到每秒万亿次级的计算速度,对系统的处理器、内存带宽、运算方式、系统I/O、存储等方面的要求都十分高,这其中的每一个环节都将直接影响到系统的运算速度,这类集群主要解决大规模科学问题的计算和海量数据的处理,如科学研究、气象预报、计算模拟、军事研究、生物制药、基因测序、图像处理、生命科学、CAE仿真模拟、海洋气象、影视渲染、石油勘探、深度学习、测绘地理等。
高性能计算用户为了获得HPC集群计算能力,需要花费大量人力物力财力在服务器购买、运维、软件开发和软件许可上。有了EHPC,企业就能快速获得高性能计算集群能力,高性能计算调度能力和软件能力,按需组建自己的“云上超算中心”,再也不用一次性巨额资金投入,从而帮助降低计算成本,提高计算灵活性。
然而,基于openstack的EHPC集群具有弹性特征,新建立节点必须要求快速启动,或者快速销毁。为了加快启动速度,采取镜像内预装好所有环境和软件的策略以达到启动镜像便可使用的目的,因此对EHPC专属镜像制作的性能提出了更高的需求。
但是,现有技术的EHPC镜像制作中存在常见的以下缺点和难点问题:
缺乏定制化需求:对于一些特定的高性能计算应用,需要特定的镜像来满足特定的软硬件要求,导致云计算服务的成本较高,效率较低。
发明内容
鉴于此,本发明的目的在于提供一种超算云作业调度系统EHPC镜像集成实现的技术方案,使用diskimage-builder工具制作EHPC镜像,能够通过自定义方式和灵活的方法构建EHPC镜像,以解决现有技术的上述问题和缺点,满足特定的高性能计算应用需求。
本发明提供超算云作业调度系统EHPC镜像集成实现方法,采用云平台Openstack的diskimage-builder镜像制作工具,编写内置的elements元素,构建定制化的基于Slurm作业调度系统的EHPC镜像;
OpenStack是一个开源的云计算平台,通过一系列模块和服务提供了构建和管理云环境的能力,涵盖了计算、存储、网络、认证等方面的功能。它可以用于构建私有云、公有云和混合云环境,为用户提供弹性、可扩展的计算资源。
EHPC是将弹性计算和高性能计算相结合的概念,利用云计算的自动化和资源共享特性来提供灵活的高性能计算解决方案。
Slurm(Simple Linux Utility for Resource Management)是一个开源的集群和作业管理系统,广泛用于高性能计算(HPC)环境中。它提供了作业调度、资源管理、任务分配和监控等功能,用于有效地管理和协调集群中的计算资源,以实现高效的作业执行。
所述构建定制化的基于Slurm作业调度系统的EHPC镜像的方法包括以下步骤:
S1、选择Linux操作系统,在Linux操作系统上安装diskimage-builder镜像制作工具及一系列依赖;
Linux操作系统的Linux GUI是一种通过图形和图像来实现用户与计算机交互的界面,它包括桌面环境、窗口管理器、图形服务器等组件,使用户能够以直观的方式操作和控制计算机。
S2、配置Slurm作业调度系统运行的操作系统环境、网络配置和存储配置,包括:
S21、编写Slurm作业调度系统的bash脚本的变量00-check-slurm-user.bash,设置环境变量脚本,用于后续的脚本或命令使用该变量引用Slurm相关用户信息;
S22、编写Slurm作业调度系统的munge脚本的变量50-start-munge,启动munge工具脚本,保持EHPC集群中用户和计算节点之间的通信安全;
S23、编写Slurm作业调度系统的users脚本的变量41-add-slurm-users,提供munge,slurm这两个组和用户在linux系统中的脚本;
S24、编写Slurm作业调度系统的file脚本的变量43-create-slurm-file,提供Slurm需要的文件及文件夹脚本;
S25、编写Slurm作业调度系统的repo脚本的变量44-set-slurm-repo,保持能够找到Slurm软件的地方;
S3、在所述diskimage-builder镜像制作工具上执行包含disk-image-create命令的脚本,生成EHPC镜像。
进一步地,每个所述elements元素里包括以下元素内容:
root.d:创建或调整初始根文件系统内容;
environment.d:定义环境变量;
preinstall.d:安装前准备工作,如定义镜像版本号;
install.d:安装过程中执行脚本;
finalise.d:安装结束后执行脚本;
element-deps:保存依赖的元素列表(在执行这个元素之前先执行的该元素依赖的元素);
element-provides:保存该元素的别名列表(该元素提供哪些元素的功能,就是若执行该元素,其额外提供的元素就不会执行)。
进一步地,所述编写内置的elements元素的方法包括以下步骤:
S01、准备root根目录文件;
S02、编写diskimage-builder镜像制作工具的.d文件夹内容,用以定制化制作镜像。
进一步地,所述S3步骤之后还包括:
执行上传镜像命令测试生成的所述EHPC镜像,验证EHPC镜像制作是否成功。
进一步地,所述S3步骤的脚本中包含的disk-image-create命令包括:
disk-image-create-traw-o slurm.raw centos vm slurm,其中,-t表示设置创建完成后镜像文件的格式,-o表示设置镜像的名字,centos、vm、slurm是构建镜像时引用的元素element。
本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上述所述的超算云作业调度系统EHPC镜像集成实现方法的步骤。
本发明还提供一种计算机设备,所述计算机设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述所述的超算云作业调度系统EHPC镜像集成实现方法的步骤。
与现有技术相比,本发明的有益效果在于:
本发明设计基于diskimage-builder工具构建EHPC镜像的实现方法,提供更灵活、定制化的EHPC镜像集成,能够适应高性能计算的需求,为不同领域的高性能计算任务提供高效、一致和可靠的解决方案,将高性能计算应用程序和库集成到镜像中,减少用户在部署时的配置工作,降低了云计算成本,有效提升了云计算效率。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。
在附图中:
图1为本发明实施例构建定制化的基于Slurm作业调度系统的EHPC镜像的方法流程示意图;
图2为本发明实施例配置Slurm作业调度系统运行的操作系统环境、网络配置和存储配置的方法示意图;
图3为本发明实施例编写内置的elements元素的方法流程示意图;
图4为本发明实施例计算机设备的构成示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和产品的例子。
在本公开使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
下面对本发明实施例作进一步详细说明。
本发明实施例提供超算云作业调度系统EHPC镜像集成实现方法,采用云平台Openstack的diskimage-builder镜像制作工具,编写内置的elements元素,构建定制化的基于Slurm作业调度系统的EHPC镜像;
本实施例中,所述编写内置的elements元素的方法,参见图3所示,包括以下步骤:
S01、准备root根目录文件;
S02、编写diskimage-builder镜像制作工具的.d文件夹内容,用以定制化制作镜像。
每个所述elements元素里包括以下元素内容:
root.d:创建或调整初始根文件系统内容;
environment.d:定义环境变量;
preinstall.d:安装前准备工作,包括:定义镜像版本号;
install.d:安装过程中执行脚本;
finalise.d:安装结束后执行脚本;
element-deps:保存依赖的元素列表(在执行这个元素之前先执行的该元素依赖的元素);
element-provides:保存该元素的别名列表(该元素提供哪些元素的功能,就是若执行该元素,其额外提供的元素就不会执行)。
所述构建定制化的基于Slurm作业调度系统的EHPC镜像的方法,参见图1所示,包括以下步骤:
S1、选择Linux操作系统,在Linux操作系统上安装diskimage-builder镜像制作工具及一系列依赖;
Linux操作系统的Linux GUI是一种通过图形和图像来实现用户与计算机交互的界面,它包括桌面环境、窗口管理器、图形服务器等组件,使用户能够以直观的方式操作和控制计算机。
S2、配置Slurm作业调度系统运行的操作系统环境、网络配置和存储配置,参见图2所示,包括:
S21、编写Slurm作业调度系统的bash脚本的变量00-check-slurm-user.bash,设置环境变量脚本,用于后续的脚本或命令使用该变量引用Slurm相关用户信息;
S22、编写Slurm作业调度系统的munge脚本的变量50-start-munge,启动munge工具脚本,保持EHPC集群中用户和计算节点之间的通信安全;
S23、编写Slurm作业调度系统的users脚本的变量41-add-slurm-users,提供munge,slurm这两个组和用户在linux系统中的脚本;
S24、编写Slurm作业调度系统的file脚本的变量43-create-slurm-file,提供Slurm需要的文件及文件夹脚本;
S25、编写Slurm作业调度系统的repo脚本的变量44-set-slurm-repo,保持能够找到Slurm软件的地方;
Slurm(Simple Linux Utility for Resource Management)是一个开源的集群和作业管理系统,广泛用于高性能计算(HPC)环境中。它提供了作业调度、资源管理、任务分配和监控等功能,用于有效地管理和协调集群中的计算资源,以实现高效的作业执行。
S3、在所述diskimage-builder镜像制作工具上执行包含disk-image-create命令的脚本,生成EHPC镜像。
本实施例中,脚本中包含的disk-image-create命令为:
disk-image-create-traw-o slurm.raw centos vm slurm,其中,-t表示设置创建完成后镜像文件的格式,-o表示设置镜像的名字,centos、vm、slurm是构建镜像时引用的元素element。
OpenStack是一个开源的云计算平台,通过一系列模块和服务提供了构建和管理云环境的能力,涵盖了计算、存储、网络、认证等方面的功能。它可以用于构建私有云、公有云和混合云环境,为用户提供弹性、可扩展的计算资源。
本实施例中,所述S3步骤之后还包括:
执行上传镜像命令测试生成的所述EHPC镜像,验证EHPC镜像制作是否成功。
EHPC是将弹性计算和高性能计算相结合的概念,利用云计算的自动化和资源共享特性来提供灵活的高性能计算解决方案。
本实施例设计的基于diskimage-builder工具构建EHPC镜像的实现方法,提供更灵活、定制化的EHPC镜像集成,能够适应高性能计算的需求,为不同领域的高性能计算任务提供高效、一致和可靠的解决方案,将高性能计算应用程序和库集成到镜像中,减少用户在部署时的配置工作,降低了云计算成本,有效提升了云计算效率。
本发明实施例还提供一种计算机设备,图4是本发明实施例提供的一种计算机设备的结构示意图;参见附图图4所示,该计算机设备包括:输入装置23、输出装置24、存储器22和处理器21;所述存储器22,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器21执行,使得所述一个或多个处理器21实现如上述实施例提供的超算云作业调度系统EHPC镜像集成实现方法;其中输入装置23、输出装置24、存储器22和处理器21可以通过总线或者其他方式连接,图4中以通过总线连接为例。
存储器22作为一种计算设备可读写存储介质,可用于存储软件程序、计算机可执行程序,如本发明实施例所述的超算云作业调度系统EHPC镜像集成实现方法对应的程序指令;存储器22可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据设备的使用所创建的数据等;此外,存储器22可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件;在一些实例中,存储器22可进一步包括相对于处理器21远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置23可用于接收输入的数字或字符信息,以及产生与设备的用户设置以及功能控制有关的键信号输入;输出装置24可包括显示屏等显示设备。
处理器21通过运行存储在存储器22中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述的超算云作业调度系统EHPC镜像集成实现方法。
上述提供的计算机设备可用于执行上述实施例提供的超算云作业调度系统EHPC镜像集成实现方法,具备相应的功能和有益效果。
本发明实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如上述实施例提供的超算云作业调度系统EHPC镜像集成实现方法,存储介质是任何的各种类型的存储器设备或存储设备,存储介质包括:安装介质,例如CD-ROM、软盘或磁带装置;计算机系统存储器或随机存取存储器,诸如DRAM、DDR RAM、SRAM、EDO RAM,兰巴斯(Rambus)RAM等;非易失性存储器,诸如闪存、磁介质(例如硬盘或光存储);寄存器或其它相似类型的存储器元件等;存储介质可以还包括其它类型的存储器或其组合;另外,存储介质可以位于程序在其中被执行的第一计算机系统中,或者可以位于不同的第二计算机系统中,第二计算机系统通过网络(诸如因特网)连接到第一计算机系统;第二计算机系统可以提供程序指令给第一计算机用于执行。存储介质包括可以驻留在不同位置中(例如在通过网络连接的不同计算机系统中)的两个或更多存储介质。存储介质可以存储可由一个或多个处理器执行的程序指令(例如具体实现为计算机程序)。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上实施例所述的超算云作业调度系统EHPC镜像集成实现方法,还可以执行本发明任意实施例所提供的超算云作业调度系统EHPC镜像集成实现方法中的相关操作。
至此,已经结合附图所示的优选实施方式描述了本发明的技术方案,但是,本领域技术人员容易理解的是,本发明的保护范围显然不局限于这些具体实施方式。在不偏离本发明的原理的前提下,本领域技术人员可以对相关技术特征做出等同的更改或替换,这些更改或替换之后的技术方案都将落入本发明的保护范围之内。
以上所述仅为本发明的优选实施例,并不用于限制本发明;对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
- 一种大质量比较仪砝码校准装置
- 一种带有称重装置的微波炉
- 一种带有校准砝码的高精度称重装置
- 一种称重仪器用校准砝码的移取装置