System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于信息,具体涉及一种slurm集群服务化动态管理方法及系统、介质、产品。
技术介绍
1、随着云计算技术的迅速发展,越来越多的企业和科研机构将高性能计算(hpc)集群和分布式计算平台逐步迁移至云环境中,以充分利用云平台的弹性扩展、按需使用和资源共享等优势。特别是在大规模科研计算和复杂计算任务密集的行业,如生命科学、气象模拟、工程仿真和人工智能领域,云化的hpc集群不仅能够大幅降低硬件和运维成本,还能够快速适应用户的多样化需求。
2、在云化环境中,资源的动态管理、灵活调度以及多用户隔离等要求尤为重要。为了满足不同团队、项目和部门的计算需求,云平台需要能够提供高效的资源调度和任务管理能力,确保计算资源能够被不同用户按需分配、独立使用,并在资源需求波动时及时进行动态调整。而随着企业的业务增长和科研规模的扩展,单一的集群环境往往难以满足日益增长的多租户需求和动态计算任务。因此,如何通过云平台高效管理分布式计算资源,确保资源的最大化利用,并保证多用户的资源隔离和任务独立运行,成为了云化hpc集群管理中的核心问题。
3、目前,slurm作为一种开源的工作负载管理系统,已广泛应用于hpc集群和分布式系统的任务调度和资源管理。
4、尽管slurm作为一个开源、高效的工作负载管理工具,在大规模计算资源的调度和管理方面表现良好,但在多用户、多集群和云化的场景中,现有的slurm部署与管理模式仍存在许多不足,具体表现在以下几个方面:
5、(1)缺乏自动化扩展与缩减能力:在传统的slurm部署模
6、(2)多租户支持与隔离不足:slurm传统的集群管理方式是为一个或多个用户提供共享的计算资源池,缺乏对多租户环境的原生支持。在云化场景下,不同的用户、项目或团队需要在同一集群环境中进行任务的独立调度和资源使用,这就要求系统能够对不同用户的资源进行隔离,防止不同用户间的资源争用和任务干扰。传统的slurm架构虽然可以通过手动设置作业优先级、配额等方式来限制资源使用,但这种方式依赖于管理员的人工干预,难以高效应对大规模、多用户环境的动态需求。
7、(3)集群管理复杂且缺乏自动化能力:传统的slurm集群部署和管理通常需要集群管理员手动进行配置和调度。这种方式虽然在小规模集群中相对有效,但在大规模、复杂的集群环境中,手动管理和监控多个集群变得越来越复杂。例如,当一个节点或服务出现故障时,管理员需要手动诊断问题并执行修复操作,缺乏自动容错和自愈能力。对于云平台中的多集群环境,管理员需要同时管理多个slurm集群,增加了管理难度,降低了系统的可扩展性。
8、综上所述,随着多用户、多租户云化应用场景的出现,传统的slurm集群管理面临一些显著的挑战和不足,在面对大规模、多集群环境时,难以有效应对动态资源需求及任务调度的挑战,难以高效管理集群的扩展、节点调度和故障恢复,同时,作业调度也较为僵化,难以灵活应对多租户资源隔离和异构资源的需求。
技术实现思路
1、本专利技术的目的在于提供一种slurm集群服务化动态管理方法及系统、介质、产品,通过kubernetes operator引入对slurm集群的服务化动态管理方法,解决现有slurm集群在云化多用户环境下用户难以高效、自主构建和管理slurm集群的技术问题。
2、kubernetes作为一种成熟的容器编排平台,具备强大的自动化管理能力,而kubernetes operator能够扩展kubernetes api,自动化管理复杂的应用程序。结合kubernetes的自动化特性,使用operator实现在云化环境中对slurm多集群的动态管理,有助于提升资源利用率和集群管理效率。
3、基于此,本专利技术的技术方案是这样的:
4、一种slurm集群服务化动态管理方法,包括:
5、s1、基于kubernetesoperator提交自定义资源crd,定义slurm集群的配置信息;
6、s2、基于kubernetes operator实现自定义资源crd的自定义控制器,所述控制器根据调度策略进行计算节点的调度和调整,自动生成slurm集群所需的配置文件,部署slurm控制服务、slurm执行节点服务、slurm客户端、slurm监控服务、slurm数据库服务;其中所述slurm控制服务、slurm执行节点服务、slurm客户端、slurm数据库服务连接到pvc持久化存储;
7、s3、用户通过slurm客户端提交作业,并通过slurm监控服务了解作业状态;
8、s4、所述控制器监听所述自定义资源crd的变化,自动进行slurm集群的节点的扩展、缩减、故障恢复和监控操作;
9、s5、不再需要使用slurm集群时,通过删除所述自定义资源crd的方式来请求删除整个集群。
10、进一步的,步骤s1中所述配置信息包括slurm集群的节点数量、资源需求、以及调度策略。
11、进一步的,步骤s2所述计算节点的调度和调整方法包括:
12、s201、节点资源过滤,根据所述自定义资源crd中的资源需求对可用计算节点进行初步筛选;
13、s202、筛选出合适的计算节点后,根据排序规则对计算节点进行优先级排序;
14、s203、在优先级排序之后,通过设置节点标签表示计算节点是否被占用,实现节点独占分配;
15、s204、集群中的节点资源不足以满足资源需求时根据任务负载自动触发节点扩展,当资源需求减少时,自动缩减计算节点。
16、进一步的,步骤s2中,所述控制器以kubernetes deployment的方式部署slurm控制服务、slurm执行节点服务、slurm客户端、slurm监控服务、slurm数据库服务。
17、本专利技术另一方面还提出了一种slurm集群服务化动态管理系统,包括:
18、控制模块:作为核心管理组件,负责slurm集群的动态管理,通过监听自定义资源crd的变化,自动进行集群的扩展、缩减、故障恢复和监控操作;
19、k8s调度模块:负责利用kubernetes原生的调度功能部署和管理slurm控制服务、slurm执行节点服务、slurm客户端、slurm监控服务、slurm数据库服务;
20、slurm专用调度模块:负责根据所述自定义资源crd的资源需求以及调度策略进行计算节点的调度和调整;
21、所述k8s调度模块和所述slurm专用调本文档来自技高网...
【技术保护点】
1.一种Slurm集群服务化动态管理方法,其特征在于,包括:
2.根据权利要求1所述的Slurm集群服务化动态管理方法,其特征在于,步骤S1中所述配置信息包括Slurm集群的节点数量、资源需求、以及调度策略。
3.根据权利要求1所述的Slurm集群服务化动态管理方法,其特征在于,步骤S2所述计算节点的调度和调整方法包括:
4.根据权利要求1所述的Slurm集群服务化动态管理方法,其特征在于,步骤S2中,所述控制器以Kubernetes Deployment的方式部署Slurm控制服务、Slurm执行节点服务、Slurm客户端、Slurm监控服务、Slurm数据库服务。
5.一种Slurm集群服务化动态管理系统,其特征在于,包括:
6.根据权利要求5所述的Slurm集群服务化动态管理系统,其特征在于,所述自定义资源CRD定义Slurm集群的配置信息,所述配置信息包括Slurm集群的节点数量、资源需求、以及调度策略。
7.根据权利要求5所述的Slurm集群服务化动态管理系统,其特征在于,所述k8s调度模块以Kub
8.根据权利要求5所述的Slurm集群服务化动态管理系统,其特征在于,所述Slurm专用调度模块对计算节点的调度和调整包括:节点资源过滤,根据所述自定义资源CRD中的资源需求对可用计算节点进行初步筛选;筛选出合适的计算节点后,根据排序规则对计算节点进行优先级排序;在优先级排序之后,通过设置节点标签表示计算节点是否被占用,实现节点独占分配;集群中的节点资源不足以满足资源需求时根据任务负载自动触发节点扩展,当资源需求减少时,自动缩减计算节点。
9.一种计算机可读存储介质,所述存储介质存储有计算机程序,其特征在于,所述计算机程序用于执行如权利要求1-4任一项所述的Slurm集群服务化动态管理方法。
10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-4任一项所述的Slurm集群服务化动态管理方法。
...【技术特征摘要】
1.一种slurm集群服务化动态管理方法,其特征在于,包括:
2.根据权利要求1所述的slurm集群服务化动态管理方法,其特征在于,步骤s1中所述配置信息包括slurm集群的节点数量、资源需求、以及调度策略。
3.根据权利要求1所述的slurm集群服务化动态管理方法,其特征在于,步骤s2所述计算节点的调度和调整方法包括:
4.根据权利要求1所述的slurm集群服务化动态管理方法,其特征在于,步骤s2中,所述控制器以kubernetes deployment的方式部署slurm控制服务、slurm执行节点服务、slurm客户端、slurm监控服务、slurm数据库服务。
5.一种slurm集群服务化动态管理系统,其特征在于,包括:
6.根据权利要求5所述的slurm集群服务化动态管理系统,其特征在于,所述自定义资源crd定义slurm集群的配置信息,所述配置信息包括slurm集群的节点数量、资源需求、以及调度策略。
7.根据权利要求5所述的slurm集群服务化动态管理系统,其特征在于,所述k8s调度模块以kubernetes deploy...
【专利技术属性】
技术研发人员:李英俊,廖南海,吕冬兵,周龙,
申请(专利权)人:麒麟软件有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。