CN114385126B - 一种基于K8s的多租户深度学习模型研发系统及方法 - Google Patents

一种基于K8s的多租户深度学习模型研发系统及方法 Download PDF

Info

Publication number
CN114385126B
CN114385126B CN202210291793.1A CN202210291793A CN114385126B CN 114385126 B CN114385126 B CN 114385126B CN 202210291793 A CN202210291793 A CN 202210291793A CN 114385126 B CN114385126 B CN 114385126B
Authority
CN
China
Prior art keywords
service
resource
deep learning
information
module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202210291793.1A
Other languages
English (en)
Other versions
CN114385126A (zh
Inventor
王英龙
杨美红
王春晓
张俭
吴晓明
赵志刚
郭莹
李传涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shandong Computer Science Center National Super Computing Center in Jinan
Original Assignee
Shandong Computer Science Center National Super Computing Center in Jinan
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shandong Computer Science Center National Super Computing Center in Jinan filed Critical Shandong Computer Science Center National Super Computing Center in Jinan
Priority to CN202210291793.1A priority Critical patent/CN114385126B/zh
Publication of CN114385126A publication Critical patent/CN114385126A/zh
Application granted granted Critical
Publication of CN114385126B publication Critical patent/CN114385126B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Stored Programmes (AREA)

Abstract

本发明属于资源调度技术领域,提供了一种基于K8s的多租户深度学习模型研发系统及方法,基于Docker、K8s等主流技术,针对不同租户的深度学习模型研发需求,通过微服务总线、微服务控制器和资源服务组件等统一数据、接口、资源标准,建立基于K8s的隔离空间,实现数据存储、模型设计、模型训练、模型评估、模型发布的自动化容器集群环境搭建和参数配置,支持资源管理、用户管理、权限管理、项目管理、数据管理、模型管理等操作,帮助用户快速高效地进行深度学习模型研发,解决了资源监控、自定义模型构建等方面不完善的问题,极大地提高AI应用开发的效率和资源利用率,满足多种业务场景的需求。

Description

一种基于K8s的多租户深度学习模型研发系统及方法
技术领域
本发明属于资源调度技术领域,尤其涉及一种基于K8s的多租户深度学习模型研发系统及方法。
背景技术
本部分的陈述仅仅是提供了与本发明相关的背景技术信息,不必然构成在先技术。
随着行业大数据的开放,人工智能发展突飞猛进,越来越多的工程师涌入人工智能算法研究中来,但这些工程师将大量的时间用在了搭建研发测试平台,调试数据加工环境上面,同时由于深度学习训练的神经网络模型和数据越来越大,单个设备的GPU和内存已经不能满足模型训练的需要,GPU集群服务器、分布式训练技术等要求更是严重制约了人工智能领域的深度发展,给科研工作者们造成了巨大的负担。
同时,现有的深度学习模型研发系统存在以下技术问题:
(1)传统的平台技术架构数据格式不统一、接口标准不统一,系统模块间耦合度较高,不利于应用、模块横向扩展;
(2)目前公开的AI开发平台大多是通过内置模型提供给无算法基础的用户使用,对用户自定义的模型训练支持不够,不能满足多种业务场景的需求。
发明内容
为了解决上述背景技术中存在的至少一项技术问题,本发明提供一种基于K8s的多租户深度学习模型研发方法及系统,其具备完整的架构设计,支持多租,通过微服务总线进行信息收发、标准化数据/接口/资源格式、定义模板等,通过消息路由、微服务控制器、数据库服务组件和资源服务组件调度Mysql数据库和Kubernetes资源,实现深度学习模型研发的全生命周期管理,并对超大规模容器集群进行监控,能够极大地提高AI应用开发的效率和资源利用率,满足多种业务场景的需求。
为了实现上述目的,本发明采用如下技术方案:
本发明的第一个方面提供一种基于K8s的多租户深度学习模型研发系统,包括:资源层、业务层以及应用层;
所述业务层包括微服务总线、消息路由、微控制服务器以及资源服务组件;
所述微服务总线用于通过消息路由将应用层的命令信息发送至微服务控制器,所述微服务控制器根据消息路由发送的命令信息进行数据库服务组件和资源服务组件的调度;
所述资源层包括NFS存储服务器、Kubernetes集群以及Mysql数据库服务器;
所述数据库服务组件和Mysql数据库服务器连接,所述数据库服务组件用于对Mysql数据库服务器的中存储的数据进行增删改查操作;
所述资源服务组件包括多个微服务模块,各个微服务模块分别和K8s集群中各个用户自定义资源交互,用于K8s大规模容器集群计算资源和存储资源的调度。
本发明的第二个方面提供一种基于K8s的多租户深度学习模型研发方法,包括:
获取多租户的命令信息;
根据命令信息进行数据库服务组件和资源服务组件的调度;
所述数据库服务组件和Mysql数据库服务器连接,所述数据库服务组件对Mysql数据库服务器的中存储的数据进行增删改查操作;
所述资源服务组件包括多个微服务模块,各个微服务模块分别和K8s集群中各个用户自定义资源交互,进行K8s大规模容器集群计算资源和存储资源的调度。
与现有技术相比,本发明的有益效果是:
(1)本发明通过微服务总线进行信息收发、标准化数据/接口/资源格式、定义模板等,通过消息路由、微服务控制器、数据库服务组件和资源服务组件调度Mysql数据库和K8s资源,并对超大规模容器集群进行监控,能够极大地提高AI应用开发的效率和资源利用率,易于扩展。
(2)本发明具备完整的架构设计,以有一定技术基础的中小微企业应用为场景,支持多租,为每个租户创建不同的命名空间和统一的存储,实现租户间的隔离。
(3)本发明实现深度学习模型研发的全生命周期管理,可增加多种深度学习框架的模型开发,满足多种业务场景的需求。
附图说明
构成本发明的一部分的说明书附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。
图1是本发明实施例一中系统整体架构图;
图2是本发明实施例一中系统环境部署;
图3是本发明实施例一中多租户用户初始化流程示意图;
图4是本发明实施例一中微服务总线工作流程示意图;
图5是本发明实施例一中微服务控制器划分示意图。
具体实施方式
下面结合附图与实施例对本发明作进一步说明。
应该指出,以下详细说明都是例示性的,旨在对本发明提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本发明所属技术领域的普通技术人员通常理解的相同含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本发明的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
术语解释:
K8s:kubernetes,简称K8s,是用8代替8个字符"ubernete"而成的缩写。是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效(powerful),Kubernetes提供了应用部署,规划,更新,维护的一种机制。
Namespace是命名空间,k8s的基础组件;
Deployment是无状态应用部署控制器,Job是一次性任务控制器,StatefulSet是有状态应用部署控制器,它们是k8s的常用控制器类型。
PersistentVolumeClaim(PVC)是k8s的持久化存储卷声明,是声明定义存储数据使用的请求,被挂载到Pod中进行使用;PersistentVolume(PV)是k8s的持久化存储卷,用于定义存储数据的方式,是由集群管理员定义的集群资源中的对象,StorageClass是动态存储类,用于标记存储资源和性能,根据PVC的需求动态供给合适的PV资源。
NFS是一种文件存储系统;Docker是一种应用容器引擎。
实施例一
本发明的多租户深度学习模型研发系统提供多种人工智能框架运行环境及一键部署。
为保证系统环境支持多样化环境部署,采用基于容器的技术方案,为提供大规模分布式模型训练,确保容器集群的高效、稳定、运维便捷,采用基于K8s容器管理技术进行系统架构的研发,并在此架构的基础上,完成数据存储、模型设计、模型训练、模型评估以及模型发布等全流程模型研发功能的实现。
如图1所示,本实施例提供一种基于K8s的多租户深度学习模型研发系统,包括:资源层、业务层以及应用层;
所述资源层包括NFS存储服务器、K8s集群以及Mysql数据库服务器;
所述业务层包括微服务总线、消息路由、微控制服务器、资源服务组件以及数据库服务组件;
所述微服务总线用于通过消息路由将应用层的命令信息发送至微服务控制器,所述微服务控制器根据消息路由发送的命令信息进行数据库服务组件和资源服务组件的调度。
所述微服务控制器根据消息路由发送的命令信息进行数据库服务组件和资源服务组件的调度包括:
所述数据库服务组件和Mysql数据库服务器连接,所述Mysql数据库服务器中存储用户、项目以及K8s资源的元数据信息,所述数据库服务组件用于对Mysql数据库服务器的中存储的数据进行增删改查操作;
所述资源服务组件包括多个微服务模块,各个服务模块分别和K8s集群中各个K8sCRD(Custom Resources Definition,用户自定义资源)交互,用于K8s大规模容器集群计算资源和存储资源的调度。
所述应用层用于为AI模型研发人员使用,包括租户模块和管理员模块,所述租户模块用于为租户提供资源监控、项目管理、数据管理以及模型全流程研发工作;所述管理员模块用于为管理员对用户、项目、数据、模型以及K8s集群资源进行监管。
其中,所述NFS存储服务器中存储的数据以PersistentVolume隔离,通过StorageClass挂载到相应Pod中,使Pod数据与NFS服务器数据完全同步,便于用户对数据进行处理;
所述K8s集群用于存放镜像、容器等信息资源。
如图2所示,本发明的多租户深度学习模型研发系统的部署环境要求为1台K8smaster节点,至少2台K8s node节点,1台NFS存储服务器,1台应用服务器,1台数据库服务器,K8s节点最好是带有GPU的,这种部署方式有利于资源扩展,也便于进行分布式模型训练的评估。当然,应用服务器和数据库服务器可以共用1台,或者直接部署到K8s master节点上。
如图3所示,作为一种或多种实施例,所述各个服务模块分别和K8s集群中各个K8sCRD交互,具体包括:采用基于K8s Namesapce的软隔离,为每个注册用户系统为每个注册用户分配Namespace和初始化数据存储空间,并配置资源规模和安全策略;
所述微服务总线收到用户注册信息后,将用户注册信息进行分类标准化后通过消息路由分发至微服务控制器,所述微服务控制器将任务提交至对应的服务模块,所述服务模块包括Namespace服务模块以及PersistentVolumeClaim模块;
所述Namespace服务模块将命令提交至于K8s中创建Namesapce用于配置资源规模和安全策略;
所述Persistent Volume Claim模块用于将命令提交至K8s中创建Namesapce下的PVC和PV,为每个注册用户分配Namespace和初始化数据存储空间。
其中,Namespace是K8s创建多租户的基础构件,可用于表示租户的资源所有权。
PersistentVolumeClaim(PVC):持久化存储卷声明,是声明定义存储数据使用的请求,被挂载到Pod中进行使用。
PersistentVolume(PV):持久化存储卷,定义存储数据的方式,是由集群管理员定义的集群资源中的对象。
本发明考虑到K8s多租户的安全隔离一直是容器集群应用的关键问题,在多租户集群中,需要在一定范围内对不同的租户提供尽可能的解决方案,最大程度的保护租户间资源的安全。
在隔离方式上,一般分为软隔离和硬隔离,软隔离允许不同租户在同一K8s集群下共享资源,硬隔离需要为每个租户创建各自的K8s集群。因此,本实施例根据实际业务需求,我们采用基于K8s Namesapce的软隔离。
所述用程序方式实现K8s创建Namespace和PersistentVolumeClaim,可通过调用开源代码库pkg.go.dev的方法:
(K8s.ClientSet).CoreV1.Namespace().Create(name)
(K8s.ClientSet).CoreV1.PersistentVolumeClaims (namespace).Create(name)
这样的目的是在K8s中配置了StorageClass,系统创建PVC后会自动创建PV,并与PVC关联,让用户在NFS中有了属于自己的数据存储空间。
如图4所示,作为一种或多种实施例,所述微服务总线还用于根据应用层的命令信息提供对应的服务,具体包括:
所述微服务总线接收应用层的模型训练表单,适配来自多个应用系统的表单信息,根据多个应用系统的表单参数信息进行消息分类,根据消息分类结果提供对应的服务。
所述根据多个应用系统的表单参数信息进行消息分类,根据消息分类结果提供对应的服务,具体包括:
若消息分类结果为第一类分类结果,将模型训练的表单基本信息标准化为模板类,包括用户ID、模型训练名称、镜像配置信息、环境配置信息、模型训练时间等,提交到数据库服务组件,在数据库中保存用户本次深度学习模型训练模板。
若消息分类结果为第二类分类结果,将模型训练的表单容器配置信息标准化为yaml格式,包括镜像配置信息(镜像名称、启动脚本、内存容量、CPU核数、GPU个数)和环境配置信息(自定义环境变量),提交到资源服务组件,调用kubernetes的Job控制器(一次性任务控制器),运行模型训练任务。
所述表单参数信息通过定制模板,转化为标准格式,发送到消息队列,由消息路由接收并分发。
如图5所示,作为一种或多种实施例,所述微服务控制器根据消息路由发送的命令信息进行数据库服务组件和资源服务组件的调度中,微服务控制器包括多个控制模块,所述控制模块根据K8s组件进行划分,根据系统的要求,通过配置可以增加新的控制器。
对应的划分结果如下表1所示:
表1 微服务控制器模块划分表
模块 功能 备注
User Controller 用户管理 用户、权限信息管理
Application Controller 项目管理 项目信息管理
Model Controller 模型管理 模型信息管理
Cluster Controller 集群管理 集群创建、删除、监控管理
Namespace Controller 命名空间管理 命名空间创建、删除、监控管理
PersistentVolumeClaim Controller PVC管理 PVC创建、删除、监控管理
PersistentVolume Controller PV管理 PV删除、监控管理
Deployment Controller 模型设计管理 模型评估管理 Jupyter创建、删除、监控管理 Tensorboard创建、删除、监控管理
Job Controller 模型训练管理 Tensorflow创建、删除、监控管理
StatefulSet Controller 模型发布管理 KFServing创建、删除、监控管理
作为一种或多种实施例,所述资源服务组件包括多个微服务模块,具体可以划分为Cluster、Namespace、PersistentVolumeClaim、PersistentVolume、Deployment、Job、StatefulSet等微服务模块,是Controller的具体实现,各模块相互独立,可以通过配置新增,负责与K8s CRD交互,在应用层实现数据存储、模型设计、模型训练、模型评估、模型发布的功能。
所述租户模块包括资源监控模块、用户管理模块、项目管理模块、数据管理模块、模型设计模块、模型训练模块、模型评估模块以及模型发布模块。
其中,①数据存储功能首先由PersistentVolumeClaim模块完成初始化,与PersistentVolume关联,并在数据库中记录下用户PersistentVolume的ID号。应用层负责实现数据的上传下载,业务层负责完成模型设计、训练、评估、发布的统一调用。
②模型设计功能由Deployment模块负责Jupyter Notebook环境的容器化创建和部署,用户即可通过应用层调用Jupyter环境,在其中记录代码,运行代码,查看结果,可视化数据并查看输出结果。模型设计的程序文件和运行产生的数据都存到用户PersistentVolume中,便于模型训练模块直接使用。
③模型训练功能由Job模块负责Tensorflow深度学习工具的分布式容器创建和部署,训练完成后自动关闭。这里需要用户在应用层配置worker、ps数量,由K8s Job完成TensorFlow分布式集群拓扑的构建。模型训练的程序文件和运行产生的数据都存到用户PersistentVolume中,便于模型评估模块直接使用。
④模型评估功能由Deployment模块负责Tensorboard环境的容器化创建和部署,TensorBoard是TensorFlow提供的一组可视化工具,可以帮助开发者方便的理解、调试、优化TensorFlow 程序。模型评估通过PersistentVolume的数据,获取Tensorflow运行的日志文件,可视化显示Tensorflow的运行结果。
⑤模型发布功能由StatefulSet负责KFServing环境的容器化创建和部署。首先将训练好的模型在KF Server中上线,然后由客户端通过gRPC和RESTful API两种方式同KFServer端进行通信,并获取服务。
本发明通过基于Docker、K8s等主流技术,针对不同租户的深度学习模型研发需求,通过微服务总线统一进行信息收发、格式转换、模板定义等,通过微服务控制器和资源服务组件等建立基于K8s Namespace和Persistent Volume的隔离空间,实现数据存储、模型设计、模型训练、模型评估、模型发布的自动化容器集群环境搭建和参数配置,支持资源管理、用户管理、权限管理、项目管理、数据管理、模型管理等操作,帮助用户快速高效地进行深度学习模型研发。
实施例二
本实施例提供一种基于K8s的多租户深度学习模型研发方法,包括:
获取多租户的命令信息;
根据命令信息进行数据库服务组件和资源服务组件的调度;
所述数据库服务组件和Mysql数据库服务器连接,所述数据库服务组件对Mysql数据库服务器的中存储的数据进行增删改查操作;
所述资源服务组件包括多个微服务模块,各个微服务模块分别和K8s集群中各个用户自定义资源交互,进行K8s大规模容器集群计算资源和存储资源的调度。
所述各个微服务模块分别和K8s集群中各个用户自定义资源交互,包括:基于K8sNamesapce的软隔离,为每个注册用户系统为每个注册用户分配Namespace和初始化数据存储空间,并配置资源规模和安全策略。
所述为每个注册用户系统为每个注册用户分配Namespace和初始化数据存储空间,并配置资源规模和安全策略包括:
微服务总线收到用户注册信息后,将用户注册信息进行分类标准化后通过消息路由分发至微服务控制器,所述微服务控制器将任务提交至对应的服务模块,所述服务模块包括Namespace服务模块以及Persistent Volume Claim模块;
所述Namespace服务模块将命令提交至于K8s中创建Namesapce用于配置资源规模和安全策略;
所述Persistent Volume Claim模块将命令提交至K8s中创建Namesapce下的PVC和PV,为每个注册用户分配Namespace和初始化数据存储空间。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (8)

1.一种基于K8s的多租户深度学习模型研发系统,其特征在于,包括:资源层、业务层以及应用层;
所述业务层包括微服务总线、消息路由、微服务控制器以及资源服务组件;
所述微服务总线用于通过消息路由将应用层的命令信息发送至微服务控制器,所述微服务控制器根据消息路由发送的命令信息进行数据库服务组件和资源服务组件的调度;
所述资源层包括NFS存储服务器、K8s集群以及Mysql数据库服务器;
所述数据库服务组件和Mysql数据库服务器连接,所述数据库服务组件用于对Mysql数据库服务器的中存储的数据进行增删改查操作;
所述资源服务组件包括多个微服务模块,各个微服务模块分别和K8s集群中各个用户自定义资源交互,用于K8s大规模容器集群深度学习模型的计算资源和存储资源的调度;
所述微服务总线还用于根据应用层的命令信息提供对应的服务,具体包括:
所述微服务总线接收应用层的模型训练表单,适配来自多个应用系统的表单信息,根据表单参数信息进行消息分类,根据消息分类结果提供对应的服务,具体包括:
若消息分类结果为第一类,将模型训练的表单基本信息标准化为模板类,包括用户ID、模型训练名称、镜像配置信息、环境配置信息以及模型训练时间,提交到数据库服务组件,在数据库中保存用户本次深度学习模型训练模板;
若消息分类结果为第二类,将模型训练的表单容器配置信息标准化为yaml格式,包括镜像配置信息和环境配置信息,提交到资源服务组件,调用kubernetes的Job控制器,运行模型训练任务。
2.根据权利要求1所述的一种基于K8s的多租户深度学习模型研发系统,其特征在于,所述应用层用于为AI模型研发人员使用,包括租户模块和管理员模块,所述租户模块用于为租户提供资源监控、项目管理、数据管理以及模型全流程研发工作;所述管理员模块用于为管理员对用户、项目、数据、模型以及K8s集群资源进行监管。
3.根据权利要求1所述的一种基于K8s的多租户深度学习模型研发系统,其特征在于,所述各个微服务模块分别和K8s集群中各个用户自定义资源交互,包括:基于K8sNamesapce的软隔离,为每个注册用户系统为每个注册用户分配Namespace和初始化数据存储空间,并配置资源规模和安全策略。
4.根据权利要求3所述的一种基于K8s的多租户深度学习模型研发系统,其特征在于,所述为每个注册用户系统为每个注册用户分配Namespace和初始化数据存储空间,并配置资源规模和安全策略包括:
微服务总线收到用户注册信息后,用于将用户注册信息进行分类标准化后通过消息路由分发至微服务控制器,所述微服务控制器用于将任务提交至对应的服务模块,所述服务模块包括Namespace服务模块以及Persistent Volume Claim模块;
所述Namespace服务模块用于将命令提交至于K8s中创建Namesapce用于配置资源规模和安全策略;
所述Persistent Volume Claim模块用于将命令提交至K8s中创建Namesapce下的PVC和PV,为每个注册用户分配Namespace和初始化数据存储空间。
5.根据权利要求1所述的一种基于K8s的多租户深度学习模型研发系统,其特征在于,所述资源服务组件包括多个微服务模块,具体划分为Cluster、Namespace、PersistentVolumeClaim、PersistentVolume、Deployment、Job、StatefulSet微服务模块。
6.一种基于K8s的多租户深度学习模型研发方法,其特征在于,包括:
获取多租户的命令信息;
根据命令信息进行数据库服务组件和资源服务组件的调度;
所述数据库服务组件和Mysql数据库服务器连接,所述数据库服务组件对Mysql数据库服务器的中存储的数据进行增删改查操作;
所述资源服务组件包括多个微服务模块,各个微服务模块分别和K8s集群中各个用户自定义资源交互,进行K8s大规模容器集群深度学习模型的计算资源和存储资源的调度;
根据命令信息提供对应的服务,具体包括:
接收应用层的模型训练表单,适配来自多个应用系统的表单信息,根据表单参数信息进行消息分类,根据消息分类结果提供对应的服务,具体包括:
若消息分类结果为第一类,将模型训练的表单基本信息标准化为模板类,包括用户ID、模型训练名称、镜像配置信息、环境配置信息以及模型训练时间,提交到数据库服务组件,在数据库中保存用户本次深度学习模型训练模板;
若消息分类结果为第二类,将模型训练的表单容器配置信息标准化为yaml格式,包括镜像配置信息和环境配置信息,提交到资源服务组件,调用kubernetes的Job控制器,运行模型训练任务。
7.根据权利要求6所述的一种基于K8s的多租户深度学习模型研发方法,其特征在于,所述各个微服务模块分别和K8s集群中各个用户自定义资源交互,包括:基于K8sNamesapce的软隔离,为每个注册用户系统为每个注册用户分配Namespace和初始化数据存储空间,并配置资源规模和安全策略。
8.根据权利要求7所述的一种基于K8s的多租户深度学习模型研发方法,其特征在于,所述为每个注册用户系统为每个注册用户分配Namespace和初始化数据存储空间,并配置资源规模和安全策略包括:
微服务总线收到用户注册信息后,将用户注册信息进行分类标准化后通过消息路由分发至微服务控制器,所述微服务控制器将任务提交至对应的服务模块,所述服务模块包括Namespace服务模块以及Persistent Volume Claim模块;
所述Namespace服务模块将命令提交至于K8s中创建Namesapce用于配置资源规模和安全策略;
所述Persistent Volume Claim模块将命令提交至K8s中创建Namesapce下的PVC和PV,为每个注册用户分配Namespace和初始化数据存储空间。
CN202210291793.1A 2022-03-24 2022-03-24 一种基于K8s的多租户深度学习模型研发系统及方法 Active CN114385126B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210291793.1A CN114385126B (zh) 2022-03-24 2022-03-24 一种基于K8s的多租户深度学习模型研发系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210291793.1A CN114385126B (zh) 2022-03-24 2022-03-24 一种基于K8s的多租户深度学习模型研发系统及方法

Publications (2)

Publication Number Publication Date
CN114385126A CN114385126A (zh) 2022-04-22
CN114385126B true CN114385126B (zh) 2022-06-21

Family

ID=81204846

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210291793.1A Active CN114385126B (zh) 2022-03-24 2022-03-24 一种基于K8s的多租户深度学习模型研发系统及方法

Country Status (1)

Country Link
CN (1) CN114385126B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115037749B (zh) * 2022-06-08 2023-07-28 山东省计算中心(国家超级计算济南中心) 一种大规模微服务智能多资源协同调度方法及系统
CN115129216B (zh) * 2022-06-29 2024-08-09 北京达美盛软件股份有限公司 一种跨组织的数据配置管理方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112000448A (zh) * 2020-07-17 2020-11-27 北京计算机技术及应用研究所 基于微服务架构的应用管理方法
CN112527349A (zh) * 2020-12-02 2021-03-19 航天科工网络信息发展有限公司 动态部署策略优化及持续部署业务保障系统
CN113176875A (zh) * 2021-05-12 2021-07-27 同济大学 一种基于微服务的资源共享服务平台架构

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10740112B2 (en) * 2017-09-30 2020-08-11 Oracle International Corporation Leveraging microservice containers to provide tenant isolation in a multi-tenant API gateway
CN108881446B (zh) * 2018-06-22 2021-09-21 深源恒际科技有限公司 一种基于深度学习的人工智能平台系统
US10824462B2 (en) * 2018-11-15 2020-11-03 Netapp, Inc. Methods and systems for providing cloud based micro-services
CN109508238A (zh) * 2019-01-05 2019-03-22 咪付(广西)网络技术有限公司 一种用于深度学习的资源管理系统及方法
CN111507476A (zh) * 2019-01-31 2020-08-07 伊姆西Ip控股有限责任公司 部署机器学习模型的方法、设备和计算机程序产品
US11269728B2 (en) * 2019-03-20 2022-03-08 International Business Machines Corporation Scalable multi-framework multi-tenant lifecycle management of deep learning applications
US11516254B2 (en) * 2019-06-20 2022-11-29 Juniper Networks, Inc. Controlling access to microservices within a multi-tenancy framework
US11347558B2 (en) * 2019-12-09 2022-05-31 Nutanix, Inc. Security-aware scheduling of virtual machines in a multi-tenant infrastructure
US11757732B2 (en) * 2020-05-21 2023-09-12 Sap Se Personalized serverless functions for multitenant cloud computing environment

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112000448A (zh) * 2020-07-17 2020-11-27 北京计算机技术及应用研究所 基于微服务架构的应用管理方法
CN112527349A (zh) * 2020-12-02 2021-03-19 航天科工网络信息发展有限公司 动态部署策略优化及持续部署业务保障系统
CN113176875A (zh) * 2021-05-12 2021-07-27 同济大学 一种基于微服务的资源共享服务平台架构

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
谢剑刚.基于 Kubernetes 的数据库技术课程远程实验平台.《信息技术与信息化》.2021,204-206. *

Also Published As

Publication number Publication date
CN114385126A (zh) 2022-04-22

Similar Documents

Publication Publication Date Title
CN114385126B (zh) 一种基于K8s的多租户深度学习模型研发系统及方法
US6915338B1 (en) System and method providing automatic policy enforcement in a multi-computer service application
JP5102543B2 (ja) 情報技術インフラストラクチャを動的にプロビジョニングするための方法
CN107370796B (zh) 一种基于Hyper TF的智能学习系统
CN103703724A (zh) 一种资源发放方法
CN111274223A (zh) 一种一键部署大数据和深度学习容器云平台及其构建方法
CN110489204A (zh) 一种基于容器集群的大数据平台架构系统
CN111343219B (zh) 计算服务云平台
CN110489205A (zh) 一种基于容器集群的教育服务架构系统
CN108848132A (zh) 一种基于云的配电调度主站系统
CN115357198B (zh) 存储卷的挂载方法及装置、存储介质及电子设备
CN112437129A (zh) 集群的管理方法及集群的管理装置
CN112115611A (zh) 一种协同仿真管理系统
CN112114785A (zh) 一种基于微服务的数字孪生体构建方法和系统
CN108563787A (zh) 一种数据中心综合管理系统的数据交互管理系统及方法
CN113014653B (zh) 一种服务于分布式实验教学环境的在线教育云平台
CN113515267A (zh) 一种基于工业物联网的PaaS平台
CN111752539B (zh) Bi服务集群系统及其搭建方法
CN115237547B (zh) 一种非侵入式hpc计算集群的统一容器集群托管系统和方法
CN114745377B (zh) 边缘云集群服务系统及实现方法
CN113824801B (zh) 一种智能融合终端统一接入管理组件系统
CN114615268A (zh) 基于Kubernetes集群的服务网络、监控节点、容器节点及设备
CN114579364A (zh) 一种基于混合云的云原生数据库备份方法
CN110515595B (zh) 一种航空电子分布式管理系统的资源建模及管理方法
CN113434268A (zh) 一种工作流分布式调度管理系统和方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant