CN113448678A - 应用信息生成方法、部署方法及装置、***、存储介质 - Google Patents

应用信息生成方法、部署方法及装置、***、存储介质 Download PDF

Info

Publication number
CN113448678A
CN113448678A CN202010215274.8A CN202010215274A CN113448678A CN 113448678 A CN113448678 A CN 113448678A CN 202010215274 A CN202010215274 A CN 202010215274A CN 113448678 A CN113448678 A CN 113448678A
Authority
CN
China
Prior art keywords
node
information
nodes
application
configuring
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.)
Pending
Application number
CN202010215274.8A
Other languages
English (en)
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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN202010215274.8A priority Critical patent/CN113448678A/zh
Publication of CN113448678A publication Critical patent/CN113448678A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

应用信息生成方法、部署方法及装置、***、存储介质,其中,所述应用信息生成方法包括:基于应用部署到运行实体集群的运行实体组成,配置节点信息,所述节点信息适于描述运行实体的静态化信息;基于节点之间的依赖和节点的部署顺序,配置节点之间的节点关系信息;根据配置得到的节点信息以及节点之间的节点关系信息,生成所述应用的描述文件,所述应用的描述文件包括所述节点信息以及所述节点关系信息。采用上述方案,能够实现应用的自动部署和可重复部署,从而可以提高部署效率,并可减少人工操作带来的部署失误。

Description

应用信息生成方法、部署方法及装置、***、存储介质
技术领域
本说明书实施例涉及计算机技术领域,尤其涉及应用信息生成方法、部署方法及装置、***、存储介质。
背景技术
容器(Container)作为一种运行实体,是一个标准的软件单元,它将应用的代码和依赖打包在一起,实现在多种环境中一致化部署。容器采用轻量级虚拟化技术,可以在物理机或者虚拟机上运行,工业界广泛采用容器技术,将应用以单个或者多个容器部署,以充分利用资源,发挥规模效应,降低单服务的成本。多个容器作为一个整体或者作为多个独立应用提供服务,这些容器以及容器运行时需要的各种云资源构成了容器集群。通过容器集群管理技术,基于容器之上可以实现对大量应用的持续开发、集成、部署和生命周期的管理。
当前,将一个大型应用部署到容器集群时,整个应用从开始部署到正式提供服务,需要多次人工干预,部署效率低下。此外,人工操作容易出现部署失误。
发明内容
有鉴于此,本说明书实施例提供一种应用信息生成方法、部署方法及装置、***、存储介质,能够实现应用的自动部署和可重复部署,从而可以提高部署效率,并可减少人工操作带来的部署失误。
本说明书实施例的一个方面,提供了一种应用信息生成方法,包括:
基于应用部署到运行实体集群的运行实体组成,配置节点信息,所述节点信息适于描述运行实体的静态化信息;
基于节点之间的依赖和节点的部署顺序,配置节点之间的节点关系信息;
根据配置得到的节点信息以及节点之间的节点关系信息,生成所述应用的描述文件,所述应用的描述文件包括所述节点信息以及所述节点关系信息。
可选地,所述基于应用部署到运行实体集群的运行实体组成,配置节点信息,所述节点信息适于描述运行实体的静态化信息,包括:
基于应用部署到容器集群的容器组成,配置节点信息,所述节点信息适于描述容器的静态化信息。
可选地,所述基于应用部署到容器集群的容器组成,配置节点信息,包括:
基于应用部署到容器集群的容器组成,配置得到相应类型的节点,以及配置所述节点的属性信息。
可选地,所述基于应用部署到容器集群的容器组成,配置得到相应类型的节点,包括:
对于应用部署到容器集群后的一个Pod或任务,配置为服务节点;
对于应用中使用的中间件,配置为中间件节点;
对于应用部署过程中需要执行的任务,配置为功能性节点。
可选地,所述配置所述节点的属性信息包括:
配置所述节点的基本属性信息,所述基本属性信息包括以下至少一种:
节点名称;
镜像仓库;
镜像版本。
可选地,所述配置所述节点的属性信息,还包括:配置所述节点的以下至少一种扩展属性信息:
资源属性信息,适于描述所述节点需要分配的资源的限额和配额;
存储属性信息,适于描述所述节点使用的物理存储空间信息;
环境属性信息,适于描述需要注入到容器的环境变量;
网络属性信息,适于描述容器的网络配置信息。
可选地,所述基于节点之间的依赖和节点的部署顺序,配置节点之间的节点关系信息,包括:
基于节点之间的依赖和节点的部署顺序,构建节点之间的节点连线,配置所述节点连线的属性信息。
可选地,所述构建节点之间的节点连线,包括以下任意一种:
在具有依赖关系的节点之间,构建单箭头连线,箭头指向的节点先部署;
在具有依赖关系的节点之间,构建单箭头连线,箭头指向的节点后部署。
可选地,所述配置所述节点连线的属性信息,包括:
基于所述节点连线连接的第一节点和第二节点之间的执行动作特征,配置所述节点连线的属性信息。
可选地,所述基于所述节点连线连接的第一节点和第二节点之间的执行动作特征,配置所述节点连线的属性信息,包括以下至少一种:
当所述第一节点的属性信息需要注入所述第二节点时,配置所述节点连线的属性信息包括:属性注入;
当所述第一节点需要对所述第二节点执行初始化操作时,配置所述节点连线的属性信息包括:初始化执行。
可选地,所述方法还包括:采用预设的可视化模块展示相应类型的节点和节点的属性信息,其中,采用与节点类型相应的节点模块展示配置得到的相应类型的节点;采用节点属性模块展示选中的节点的属性信息。
可选地,所述基于节点之间的依赖和节点的部署顺序,配置节点之间的节点连线,配置所述节点连线的属性信息,包括:
将配置得到的节点载入编辑器中,基于节点之间的依赖和节点之间的部署顺序,在所述编辑器中绘制节点连线,以及配置所述节点连线的属性信息。
可选地,所述根据配置得到的节点信息以及节点之间的节点关系信息,生成所述应用的描述文件,包括:
基于可视化模块展示的节点以及绘制的节点之间的节点连线所形成的应用描述图,生成所述应用的描述文件。
本说明书实施例的另一方面,提供了一种应用部署方法,所述方法包括:
获取所述应用的描述文件,所述应用的描述文件包括节点信息以及节点关系信息,其中,所述节点信息适于描述运行实体的静态化信息,所述节点关系信息适于描述节点间的依赖关系;
根据所述描述文件中的节点关系信息确定部署节点的顺序,按照顺序获取节点信息,根据所述节点信息进行部署,并根据节点关系信息执行任务;
在所述节点关系信息中对应的节点部署完成后,确定所述节点信息中是否还存在未部署节点,并对节点信息中存在的未部署节点进行部署,直至所述节点信息中的所有节点均部署至预设运行实体集群。
可选地,所述节点信息适于描述以下至少一种运行实体的静态化信息:
容器;
虚拟机;
物理服务器;
虚拟服务器。
可选地,所述节点信息包括相应类型的节点及所述节点的属性信息,所述节点关系信息包括节点连线及所述节点连线的属性信息;所述根据所述描述文件中的节点关系信息确定部署节点的顺序,按照顺序获取节点信息,根据所述节点信息进行部署,并根据节点关系信息执行任务,包括:
根据所述描述文件中的节点连线确定部署节点的顺序,按照顺序获取节点信息,根据所述节点信息进行部署,并根据节点连线信息执行任务。
本说明实施例的另一方面,提供了另一种应用部署方法,包括:
基于应用部署到运行实体集群的运行实体组成,配置节点信息,所述节点信息适于描述运行实体的静态化信息;
基于节点之间的依赖关系和节点的部署顺序,配置节点之间的节点关系信息,所述节点关系信息适于描述节点间的依赖关系;
根据配置得到的节点信息和节点之间的关系信息,生成所述应用的描述文件,所述应用的描述文件包括所述节点信息以及所述节点关系信息;
解析所述描述文件;
根据所述描述文件将所述应用部署至预设运行实体集群。
可选地,所述根据所述描述文件将所述应用部署至预设运行实体集群,包括:
根据所述描述文件中的节点关系信息确定部署节点的顺序,按照顺序获取节点信息,根据所述节点信息进行部署,并根据节点关系信息执行任务;
在所述节点关系信息中对应的节点部署完成后,确定所述节点信息中是否还存在未部署节点,并对存在的未部署节点进行部署,直至所述节点信息中的所有节点均部署至所述预设运行实体集群。
可选地,所述节点信息包括相应类型的节点及所述节点的属性信息,所述节点关系信息包括节点连线及所述节点连线的属性信息;所述根据所述描述文件中的节点关系信息确定部署节点的顺序,按照顺序获取节点信息,根据所述节点信息进行部署,并根据节点关系信息执行任务,包括:
根据所述描述文件中的节点连线确定部署节点的顺序,按照顺序获取节点信息,根据所述节点信息进行部署,并根据节点连线信息执行任务。
可选地,所述基于应用部署到运行实体集群的运行实体组成,配置节点信息,所述节点信息适于描述运行实体的静态化信息,包括:
基于应用部署到容器集群的容器组成,配置节点信息,所述节点信息适于描述容器的静态化信息。
可选地,所述基于应用部署到容器集群的容器组成,配置节点信息,包括:
基于应用部署到容器集群的容器组成,配置得到相应类型的节点,以及配置所述节点的属性信息。
可选地,所述基于节点之间的依赖和节点的部署顺序,配置节点之间的节点关系信息,包括:
基于节点之间的依赖和节点的部署顺序,构建节点之间的节点连线,配置所述节点连线的属性信息。
可选地,所述方法还包括:采用预设的可视化模块展示相应类型的节点和节点的属性信息;其中,采用与节点类型相应的节点模块展示配置得到的相应类型的节点;采用节点属性模块展示选中的节点的属性信息。
可选地,所述基于节点之间的依赖和节点的部署顺序,配置节点之间的节点连线,配置所述节点连线的属性信息,包括:
将配置得到的节点载入编辑器中,基于节点之间的依赖和节点之间的部署顺序,在所述编辑器中绘制节点连线,以及配置所述节点连线的属性信息。
本说明书实施例的另一方面,还提供了一种应用信息生成装置,所述装置包括:
节点信息配置单元,适于基于应用部署到运行实体集群的运行实体组成,配置节点信息,所述节点信息适于描述运行实体的静态化信息;
节点关系信息配置单元,适于基于节点之间的依赖和节点的部署顺序,配置节点之间的节点关系信息;
描述文件生成单元,适于根据配置得到的节点信息以及节点之间的节点关系信息,生成所述应用的描述文件,所述应用的描述文件包括所述节点信息以及所述节点关系信息。
可选地,所述节点信息配置单元,适于基于应用部署到容器集群的容器组成,配置节点信息,所述节点信息适于描述容器的静态化信息。
可选地,所述节点信息配置单元,适于基于应用部署到容器集群的容器组成,配置得到相应类型的节点,以及配置所述节点的属性信息。
可选地,所述节点关系信息配置单元,适于基于节点之间的依赖和节点的部署顺序,构建节点之间的节点连线,配置所述节点连线的属性信息。
可选地,所述节点信息配置单元还包括:可视化展示子单元,适于采用预设的可视化模块展示相应类型的节点和节点的属性信息,所述可视化展示单元包括:
节点模块,适于展示配置得到的相应类型的节点;
节点属性模块,适于展示选中的节点的属性信息。
可选地,所述节点关系信息配置单元还包括:节点连线编辑器,适于获取配置得到的节点,基于节点之间的依赖和节点之间的部署顺序,绘制节点连线,以及配置所述节点连线的属性信息。
可选地,所述描述文件生成单元还包括第一解析子单元,适于解析基于所述可视化展示单元展示的节点以及所述节点连线编辑器绘制的节点之间的节点连线所形成的应用描述图,生成所述应用的描述文件。
本说明书实施例的又一方面,还提供了一种应用部署装置,所述装置包括:
描述文件获取单元,适于获取所述应用的描述文件,所述应用的描述文件包括节点信息以及节点关系信息,其中,所述节点信息适于描述运行实体的静态化信息,所述节点关系信息适于描述节点之间的依赖关系;
部署单元,适于根据所述描述文件中的节点关系确定部署节点的顺序,按照顺序获取节点信息,根据所述节点信息进行部署,并根据节点关系信息执行任务;并在所述节点关系信息中对应的节点部署完成后,确定所述节点信息中是否还存在为部署节点,并对节点信息中存在的未部署节点进行部署,直至所述节点信息中的所有节点均部署至预设运行实体集群。
本说明书实施例的又一方面,提供了一种应用部署***,所述***包括:
应用信息生成装置,适于基于应用部署到运行实体集群的运行实体组成,配置节点信息,所述节点信息适于描述运行实体的静态化信息;以及基于节点之间的依赖关系和节点的部署顺序,配置节点之间的节点关系信息,所述节点关系信息适于描述节点间的依赖关系;
描述文件生成装置,适于基于配置得到的节点信息和节点之间的关系信息,生成所述应用的描述文件,所述应用的描述文件包括所述节点信息以及所述节点关系信息;
应用部署装置,适于解析所述描述文件生成装置生成的描述文件,并根据所述描述文件将所述应用部署至预设运行实体集群。
本说明书实施例还提供了一种集群管理***,包括存储器和处理器,所述存储器和处理器通过通信接口进行通信,所述存储器上存储有可在所述处理器上运行的计算机指令,所述处理器运行所述计算机指令时执行前述任一实施例所述方法的步骤。
本说明书实施例还提供了一种计算机可读存储介质,其上存储有计算机指令,所述计算机指令运行时执行前述任一实施例所述方法的步骤。
采用本说明书实施例的应用信息生成方案,首先,基于应用部署到运行实体集群的运行实体组成,配置节点信息,并基于节点之间的依赖和节点的部署顺序,配置节点之间的节点关系信息,之后,根据配置得到的节点信息以及节点之间的节点关系信息,可以自动生成所述应用的描述文件。采用本说明书实施例的应用信息生成方案,将应用切分为各个节点,采用节点信息描述容器,基于节点关系信息确定节点间的依赖关系和节点的部署顺序,基于所述应用的描述文件,可以在新的运行实体集群部署所述应用,或者在原运行实体集群重复部署,可以实现应用的自动部署和重复部署,因此可以提高应用部署效率。此外通过自动部署,可以避免应用部署过程中人工操作带来的失误。
进一步地,基于应用部署到容器集群的容器组成,配置得到相应类型的节点,以及配置所述节点的属性信息,通过对节点按照类型进行分类,可以如实反映容器的特性,且通过容器的属性信息可以描述容器的静态化信息,因此基于配置得到的相应类型的节点以及所述节点的属性信息生成所述应用的描述文件,即可根据所述描述文件可以自动进行部署,故可以提高应用部署效率。
进一步地,基于节点之间的依赖和节点的部署顺序,构建节点之间的节点连线,配置所述节点连线的属性信息,因此基于配置得到的节点连线和所述节点连线的属性信息生成所述应用的描述文件,可以自动确定节点间的依赖关系和节点的部署顺序,故可以根据所述应用的描述文件实现自动部署和重复部署,故可以提高应用的部署效率,且可避免人工部署的失误。
进一步地,在应用信息生成过程中,采用预设的可视化模块展示相应类型的节点和节点的属性信息,便于用户规划分析,故可以提高应用信息生成效率,提升用户交互体验。
进一步地,通过将配置得到的节点载入编辑器中,基于节点之间的依赖和节点之间的部署顺序,在所述编辑器中绘制节点连线,以及配置所述节点连线的属性信息,可以得到所述应用的应用描述图,直观描述所述应用对应的容器及容器的依赖关系,可以降低应用信息生成过程中的复杂度,提升用户交互体验。
采用本说明书实施例的应用部署方法,可以根据应用的描述文件中的节点关系信息确定部署节点的顺序,按照顺序获取节点信息,根据所述节点信息进行部署,并根据节点关系信息执行任务,在所述节点关系信息中对应的节点部署完成后,确定所述节点信息中是否还存在未部署节点,并对节点信息中存在的未部署节点进行部署,直至所述节点信息中的所有节点均部署至预设运行实体集群,从而可以实现所述应用的自动部署,提高应用部署效率。而且,对于复杂度高的大型应用,还可以降低部署的错误率。
附图说明
图1示出了本说明书实施例中一种容器应用场景示意图;
图2示出了本说明书实施例中一种应用信息生成方法的流程图;
图3示出了本说明书实施例中一种节点模块示意图;
图4示出了本说明书实施例中一种节点属性模块示意图;
图5示出了本说明书实施例中一种节点连线属性模块示意图;
图6示出了本说明书实施例中一种应用信息生成场景的交互界面示意图;
图7示出了本说明书实施例中一种应用部署方法的流程图;
图8示出了本说明书实施例中另一种应用部署方法的流程图;
图9示出了本说明书实施例中一种应用信息生成装置的结构示意图;
图10示出了本说明书实施例中一种应用部署装置的结构示意图;
图11示出了本说明书实施例中一种应用部署***的结构示意图;
图12示出了本说明书实施例中一种应用部署场景示意图;
图13示出了本说明书实施例中一种集群管理***的结构示意图。
具体实施方式
本说明书实施例中所指的应用是传统的单体应用,应用本身除了服务代码以外,还使用了许多中间件来完成服务的提供。
为向用户提供服务,可以将应用部署于多个运行实体形成的运行实体集群上。例如,可以将应用部署于容器集群。又如,可以将应用部署于虚拟机、物理服务器或者虚拟服务器(例如云计算厂商提供的云服务器)之上。
为实现应用部署,本说明书实施例提供了相应的应用信息生成方案和应用部署方案。具体而言,一方面,将应用切分为各个节点,采用节点信息描述容器,基于应用部署到运行实体集群的运行实体组成,配置节点信息,并基于节点之间的依赖和节点的部署顺序,配置节点之间的节点关系信息,之后,根据配置得到的节点信息以及节点之间的节点关系信息,自动生成所述应用的描述文件。另一方面,可以根据所述应用的描述文件中的节点关系信息确定节点部署顺序,按照顺序获取节点信息,根据所述节点信息进行部署,并根据节点关系信息执行任务,在所述节点关系信息中对应的节点部署完成后,确定所述节点信息中是否还存在未部署节点,并对节点信息中存在的未部署节点进行部署,直至所述节点信息中的所有节点均部署至预设运行实体集群,整个部署过程无须人工干预,可以实现所述应用的自动部署,提高应用部署效率。而且,对于复杂度高的大型应用,还可以降低部署的错误率。
为使本领域技术人员更好地理解和实现本说明书实施例,以下以将应用部署于容器集群为例进行详细描述。首先对涉及到的一些技术术语进行简单介绍。
容器(Container)是一个标准的软件单元,它将应用的代码和依赖打包在一起,应用运行在容器中,容器为应用提供基础环境和服务设施。容器可以包括通过镜像创建的运行时实例(runtime instance),且在一个服务器节点上可以运行多个容器。镜像可以包括容器应用打包的标准格式文件,在容器中部署应用时以指定镜像。
容器集群(Container Cluster),多个容器对外作为一个整体或者作为多个独立应用提供服务,这些容器以及容器运行时需要的各种云资源构成了容器集群。云资源可以包括服务器节点、负载均衡、存储以及专有网络等资源。
为管理好容器集群,可以采用容器集群管理***,如采用Kubernets、Swarm、Apache Mesos等容器集群管理***,让应用能够实现在容器集群中持续开发、集成和部署。
其中,Kubernets是一个开源的,用于管理云平台中多个主机上的容器化的应用。Swarm是Docker(一个开源的应用容器引擎)官方提供的一款集群管理工具,其主要作用是把若干台Docker主机抽象为一个整体,并且通过一个入口统一管理这些Docker主机上的各种Docker资源。Apache Mesos是一个分布式***的管理软件,对集群的资源进行分配和管理。
Pod是Kubernetes创建或部署的最小单位。一个Pod封装一个或多个应用容器、存储资源、一个独立的网络IP以及管理控制容器运行方式的策略选项。同一个Pod上的容器共享存储、网络资源。
服务器节点用于部署和管理容器,它既可以是虚拟机实例,也可以是物理机实例。服务器节点上可以安装容器运行环境和包管理器。
任务(Job)创建一个或多个Pod并确保指定数量的Pod成功终止。任务是一次性的,任务执行完成便会清理它自身创建的Pod。
参照图1所示的本说明书实施例中一种容器应用场景示意图,一个Pod 11可以封装一个容器12,通过Pod 11可以将容器12部署于服务器节点13,包括服务器节点13在内的各种云资源构成容器集群14。
目前,基于容器集群能够做到简单易用、灵活弹性,秒级部署。通过容器管理服务,可以对容器集群进行管理,并将传统的单体应用容器化改造部署到容器集群中。在部署过程中首先需要分析将应用切分成多少个容器,然后分析容器间的依赖关系,按照依赖关系顺序部署容器,部分容器部署完成后还需要初始化操作。对于复杂应用,例如单个应用被划分为数十个甚至上百个容器的时候,重复部署需要面对同等复杂度的操作,因此部署效率低下。此外人为部署容易出现错误,会引入更高的错误率。
针对上述问题,本说明书实施例提供了相应的应用信息生成方案和应用部署方案。以下参照附图,通过具体应用场景对本说明书实施例进行详细描述。
参照图2所示的一种应用信息生成方法的流程图,以下通过具体步骤详细说明。
S21,基于应用部署到容器集群的容器组成,配置节点信息,所述节点信息适于描述容器的静态化信息。
在具体实施中,可以基于应用部署到容器集群的容器组成,配置得到相应类型的节点,以及配置所述节点的属性信息。
在本说明书一些实施例中,根据容器特性,可以将节点分为以下三种类型:服务节点、中间件节点和功能性节点。其中,对于应用部署到容器集群后的一个Pod或任务,配置为服务节点;对于应用中使用的中间件,配置为中间件节点;对于应用部署过程中需要执行的任务,配置为功能性节点。
在具体实施中,各种类型的节点根据节点属性的差异,可以进一步分为子类型,例如,中间件节点可以包括数据库节点;又如,功能性节点可以包括任务节点。根据应用的复杂度,子类型也可以进一步划分,例如任务节点可以包括初始化节点、属性注入节点等等。
需要说明的是,功能性节点仅在应用部署过程中存在,在应用部署完成后并不存在,而服务节点和中间件节点在应用部署完成后继续在容器集群中存在。
可以理解的是,随着应用逻辑的扩展或变化,可能需要对节点具体划分的类型进行相应扩展或变化,以上节点类型分类仅为示例性说明,并不用于限定本发明的保护范围。
在具体实施中,可以通过节点的属性信息描述容器的静态化信息。在本说明书实施例中,可以配置节点的基本属性信息以及基本属性信息之外的一些扩展属性信息。
其中,所述节点的基本属性信息可以包括节点名称、镜像仓库、镜像版本等其中至少一种属性参数。可以理解的是,以上仅为示例性说明,可以理解的是,节点的基本属性信息为所有节点共有的描述信息,可以根据所有节点的共有属性设置基本属性信息中的具体属性参数。
在本说明书一些实施例中,可以配置所述节点的以下至少一种扩展属性信息:
资源属性信息,适于描述所述节点需要分配的资源的限额和配额。在Kubernetes里面,Pod是最小的原子调度单位,这就意味着,所有和调度和资源管理有关的属性,应该都是属于Pod对象的字段,而在这些字段中,最重要的部分就是Pod的CPU和内存配置,因此,在资源属性信息中,可以配置中央处理器(Central Processing Unit,CPU)、内存等分配的资源。
存储属性信息,适于描述所述节点使用的物理存储空间信息。作为具体示例,存储属性信息可以描述节点使用的磁盘的信息,如磁盘类型、读写类型、磁盘空间大小等。
环境属性信息,适于描述需要注入到容器的环境变量。在具体实施中,环境属性信息可以由一系列的键值对构成。
网络属性信息,适于描述容器的网络配置信息。网络属性信息中可以包括但不限于网络类型信息、端口映射信息、网络协议信息等。
可以理解的是,扩展属性信息的类型及具体属性参数并不限于以上示例,可以根据不同类型节点的特点设置不同的扩展属性信息及具体的扩展属性参数。
S22,基于节点之间的依赖和节点的部署顺序,配置节点之间的节点关系信息。
在具体实施中,可以基于节点之间的依赖和节点的部署顺序,构建节点之间的节点连线,配置所述节点连线的属性信息。
在本说明书一些实施例中,采用如下方式构建节点之间的节点连线:在具有依赖关系的节点之间,构建单箭头连线,箭头指向的节点先部署。在本说明书另一些实施例中,采用如下方式构建节点之间的节点连线:在具有依赖关系的节点之间,构建单箭头连线,箭头指向的节点后部署。可以理解的是,除了采用箭头方向描述节点连线连接的节点的部署顺序,也可以采用其他的方式描述,例如按照节点部署顺序将节点连线连接的节点进行标号,通过节点连线端点的序号大小表征节点部署顺序。
在具体实施中,可以采用如下方式配置所述节点连线的属性信息:基于所述节点连线连接的第一节点和第二节点之间的执行动作特征,配置所述节点连线的属性信息。
在本说明书一些实施例中,节点连线的属性可以分为属性注入和初始化执行。其中,属性注入,是指将一个节点的属性通过注入到另一个节点的属性中,例如,在服务节点A中需要知道应用的数据库B(应用的数据库为中间件节点)的数据库名称、账号和密码等属性信息,以进行登录操作,则通过数据库节点B和服务节点A之间的节点连线,数据库节点B的这些属性信息则会注入到所述服务节点A中。初始化操作,是指对指定节点做初始化动作。例如,通过功能性节点C与数据库节点B之间的节点连线BC,在部署所述功能性节点A时,会对数据库节点B做初始化操作,例如,执行初始化结构化查询语言(Structured QueryLanguage,SQL)数据库操作。因此,在具体实施中,当所述节点的属性信息需要注入所述第二节点时,配置所述节点连线的属性信息包括:属性注入;当所述第一节点需要对所述第二节点执行初始化操作时,配置所述节点连线的属性信息包括:初始化执行。
可以理解的是,节点连线的属性信息并不限于以上示例,具体可以节点之间的依赖关系设置节点属性信息。
S23,根据配置得到的节点信息以及节点之间的节点关系信息,生成所述应用的描述文件,所述应用的描述文件包括所述节点信息以及所述节点关系信息。
通过节点信息和节点之间的节点关系信息,可以将应用部署的内容记录下来,之后,可以采用步骤S23生成所述应用的描述文件。
在具体实施中,应用的描述文件可以采用JSON、YAML等格式。其中,JSON(JavaScript Object Notation,JS对象简谱)是一种轻量级的数据交换格式。它是基于ECMAScript(欧洲计算机协会制定的JS规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。而YAML是“YAML Ain’t aMarkup Language”(YAML不是一种标记语言)的递归缩写。在开发这种语言时,YAML的意思其实是:“Yet Another Markup Language”(仍是一种标记语言),但为了强调这种语言以数据作为中心,而不是以标记语言为重点,而用反向缩略语重命名。
在具体实施中,配置的节点信息和节点关系信息等配置信息可以是标准格式,也可以是非标准格式。若配置信息是标准格式,可以预设应用的描述文件模板,待用户通过配置将相应的节点信息和节点关系信息输入后,即可自动生成相应应用的描述文件;若配置信息是非标准格式,可以解析用户配置的信息,并转化为预设的标准化格式的应用描述文件。
采用上述步骤,生成所述应用的描述文件后,通过解析所述应用的描述文件,即可实现应用的自动部署,详细部署过程可以参见下文描述。
采用上述实施例的应用信息生成方案,首先,基于应用部署到容器集群的容器组成,配置节点信息,并基于节点之间的依赖和节点的部署顺序,配置节点之间的节点关系信息,之后,根据配置得到的节点信息以及节点之间的节点关系信息,可以自动生成所述应用的描述文件。采用本说明书实施例的应用信息生成方案,将应用切分为各个节点,采用节点信息描述容器,基于节点关系信息确定节点间的依赖关系和节点的部署顺序,基于所述应用的描述文件,可以在新的容器集群部署所述应用,或者在原容器集群重复部署,可以实现应用的自动部署和重复部署,因此可以提高应用部署效率。此外通过自动部署,可以避免应用部署过程中人工操作带来的失误。
此外,基于应用部署到容器集群的容器组成,配置得到相应类型的节点,以及配置所述节点的属性信息,通过对节点按照类型进行分类,可以如实反映容器的特性,且通过容器的属性信息可以描述容器的静态化信息,因此基于配置得到的相应类型的节点以及所述节点的属性信息生成所述应用的描述文件,即可根据所述描述文件可以自动进行部署,故可以提高应用部署效率。
而基于节点之间的依赖和节点的部署顺序,构建节点之间的节点连线,配置所述节点连线的属性信息,因此基于配置得到的节点连线和所述节点连线的属性信息生成所述应用的描述文件,可以自动确定节点间的依赖关系和节点的部署顺序,故可以根据所述应用的描述文件实现自动部署和重复部署,故可以提高应用的部署效率,且可避免人工部署的失误。
在应用信息生成过程中,为便于用户进行规划分析,配置节点信息和节点关系信息,提升用户交互体验,可以通过应用信息可视化配置方式进行配置。为使本领域技术人员更好地理解和实施应用信息可视化配置方案的原理,以下通过具体实施例进行详细介绍。
在本说明书一些实施例中,可以采用预设的可视化模块展示相应类型的节点和节点的属性信息。其中,可以采用与节点类型相应的节点模块展示配置得到的相应类型的节点;采用节点属性模块展示选中的节点的属性信息。
如图3所示,本说明书实施例提供了一种节点模块示意图,其中,节点模块30包括:服务节点控件31、中间件节点控件32和功能性节点控件33,用户可以基于容器的具体组成,在展示的节点模块30中选择相应类型的节点,从而可以实现节点类型信息的配置。例如,通过点击服务节点控件31,即可构建一个服务节点,通过点击中间件节点控件32,同样可以构建一个中间件节点。
如图4所示,本说明书实施例还提供了一种节点属性模块示意图,其中,节点属性模块40包括基本属性信息控件41、资源属性信息控件42、存储属性信息控件43、环境属性信息控件44和网络属性信息控件45,用户点击相应属性信息控件,即可打开相应属性信息的配置界面对具体的属性参数进行配置。
在具体实施中,当用户通过节点模块创建一个节点后,或者对于已经创建的节点,在选中所述已创建节点后,可以通过节点属性模块展示选中的节点的属性信息,用户可以进一步通过所述节点属性模块配置或者修改所述节点的属性信息。在配置过程中,用户可以根据容器的实际情况,仅配置其中部分属性信息,对于不涉及的属性信息,可以不输入任何信息。
在通过节点模块和节点属性模块完成节点信息配置后,可以进一步配置所述节点关系信息。如前实施例所述,节点关系信息具体可以包括节点连线以及节点连线属性信息。其中,为提升用户交互体验,节点连线属性信息亦可通过可视化模块展示。参照图5所示的节点连线属性模块示意图,其中,节点连线属性模块50包括属性注入控件51和初始化执行控件52,用户点击节点连线属性模块中的相应控件,即可配置节点连线的属性信息为相应属性。
在具体实施中,可以通过预设的编辑器进行节点关系信息配置。例如,可以将配置得到的节点载入流式编辑器中,基于节点之间的依赖和节点之间的部署顺序,在所述编辑器中绘制节点连线,以及配置所述节点连线的属性信息。如前实施例所述,可以采用单箭头作为节点连线,箭头指向的节点可以先部署。
为使本领域技术人员更好地理解和实现本说明书实施例中所述的可视化配置方式,以下通过一个具体应用场景的交互界面进行说明。
参照图6所示的应用信息生成场景的交互界面示意图,交互界面60中包括节点模块61、节点属性模块62以及流式编辑器63。其中,节点模块61中包含一系列已配置节点,服务节点A1,中间件节点B1~B6,以及功能性节点C1,节点属性模块62展示了服务节点A1的属性信息,包括基本属性信息621、资源属性信息622、存储属性信息623、环境属性信息624和网络属性信息625。其中:基本属性信息621包括:节点名称、镜像仓库、镜像版本等;资源属性信息622包括资源限额和资源配额等;存储属性信息623包括磁盘类型、读写类型、磁盘空间大小等信息;环境属性信息624包括:键(key)以及对应的值(value),其中,通过点击“+”可以添加相应的键值对,通过点击“-”可以清除已创建的键值对;网络属性信息625包括网络类型信息(如公网访问/内网访问)、端口映射信息(外部端口、容器端口、网络协议(如传输控制协议(Transmission Control Protocol,TCP))等。在配置过程中,通过点击“
Figure BDA0002424183820000151
”可以展开相应的配置选项。
在流式编辑器63中,可以添加已构建的节点,并绘制节点连线,配置节点连线属性信息。如图6所示,在流式编辑器63中,在已构建的服务节点A1、中间件节点B6以及功能性节点C1之间,基于节点之间的依赖和节点的部署顺序,可以绘制节点连线a和节点连线b,并配置节点连线a的属性为属性注入;配置节点连线b的属性为初始化执行。在具体实施中,可以通过可视化视图的方式实时展示所绘制的节点的属性信息和节点连线的属性信息。
采用上述方式,可以依次绘制出应用的所有节点及节点之间的连线,形成所述应用的应用描述图。进而可以基于可视化模块展示的节点以及绘制的节点之间的节点连线所形成的应用描述图,生成所述应用的描述文件。在具体实施中,可以在绘制出所述应用所涉及的所有节点及节点连线后,再生成所述应用的描述文件,也可以基于已绘制的部分节点及节点连线,生成所述应用相应部分的描述文件,也即可以边配置所述应用的节点信息和节点关系信息,边生成相应的描述文件。
通过将配置得到的节点载入编辑器中,基于节点之间的依赖和节点之间的部署顺序,在所述编辑器中绘制节点连线,以及配置所述节点连线的属性信息,可以得到所述应用的应用描述图,从而可以直观地描述所述应用对应的容器及容器的依赖关系,因此可以降低应用信息生成过程中的复杂度,提升用户交互体验。
以下为所生成的一描述文件示例:
descriptionName:test application
node:
-type:app node
basic information:
name:application
images:
version:
resources:
limits:
cpu:250m
memory:1024Mi
requests:
cpu:125m
memory:512Mi
storage:
storageClass:
accessMode:
size:
environment:{}
-type:middleware node
subType:mysql
basic information:
name:mysql
-type:job node
subType:init
basic information:
name:init
nodeRelation:
-fromNode:application
toNode:mysql
relationType:Attribute injection
-fromNode:init
toNode:mysql
relationType:init execution
在上述JSON格式的描述文件示例中,描述了三个节点:名称为application的服务节点,名称为mysql的中间件MySQL数据库节点以及名称为init的任务初始化节点。其中,服务节点application和中间件节点mysql之间存在着属性注入的连线,中间件节点和功能性节点init之间存在着初始化执行的节点连线。
更具体而言,在上述应用的描述文件中,服务节点application的资源属性信息(resources)配置为:服务节点application需要分配的资源限额中,CPU限额为250m,即250个微核(milicores),内存限额为1024Mi。需要说明的是,CPU资源以cpus为单位,允许小数值,可以用后缀m来表示mili,因此250mcpu表示0.25个cpu的计算能力。内存资源的单位是字节(bytes),其中,Kubernetes支持使用Ei、Pi、Ti、Gi、Mi、Ki(或者E、P、T、G、M、K)的方式来作为bytes的值。而服务节点application需要分配的资源配额中,请求分配的cpu资源为125m,即0.125个cpu的计算能力,内存资源为512Mi,因此需要为所述服务节点application分配的最低配额为:0.125个cpu的计算能力,512Mi的内存资源。在这一应用的描述文件示例中,服务节点application的存储属性信息(storage)和环境属性信息(environment)为空,未进行相关资源的配置。
在上述应用的描述文件示例中,配置的节点还包括:类型为中间件节点(middleware node),子类型为mysql的节点,由其基本属性信息(basic information)可知,该中间节节点的名称为mysyl;类型为任务节点(job node),子类型为初始化节点(init)的节点,由其基本属性信息可知,该任务节点的名称为init。
从上述应用的描述文件示例可知,所述应用的描述文件中节点之间的关系信息如下:从服务节点application至中间件节点mysql的节点连线,节点连线的属性信息为属性注入,以及从任务节点init至中间件节点mysql的节点连线,节点连线的属性信息为初始化执行。
因此,通过解析上述应用的描述文件示例,并根据解析出的节点信息和节点关系信息,可以实现应用的自动部署。
以上给出了基于容器集群的应用信息生成方法,在具体实施中,所述容器集群可以是kubernets、Swarm、Apache Mesos等多种类型的容器集群。
为将应用部署于虚拟机、物理服务器、虚拟服务器等任意一种或多种类型的运行实体集群上,可以采用节点信息描述虚拟机、物理服务器、虚拟服务器等其中任意一种或多种运行实体的静态化信息,采用与为将应用部署于容器集群之上类似的方法,生成应用信息,此处不再一一例述。
如前所述,本说明书实施例可以实现应用的自动部署,具体而言,可以获取所述应用的描述文件,所述应用的描述文件包括节点信息以及节点关系信息,其中,所述节点信息适于描述运行实体的静态化信息,所述节点关系信息适于描述节点间的依赖关系;然后根据所述描述文件中的节点关系信息确定部署节点的顺序,按照顺序获取节点信息,根据所述节点信息进行部署,并根据节点关系信息执行任务;在所述节点关系信息中对应的节点部署完成后,确定所述节点信息中是否还存在未部署节点,并对节点信息中存在的未部署节点进行部署,直至所述节点信息中的所有节点均部署至预设运行实体集群。
在具体实施中,基于应用待部署的运行实体的类型,所述节点信息适于描述以下至少一种运行实体的静态化信息:
容器;
虚拟机;
物理服务器;
虚拟服务器。
为使本领域技术人员更好地理解和实现自动部署流程,以下以将应用部署至容器集群这一具体应用场景为例,通过具体步骤进行详细说明。
参照图7所示的一种应用部署方法的流程图,本说明书实施例可以采用如下步骤对应用进行自动部署:
S71,获取所述应用的描述文件,所述应用的描述文件包括节点信息以及节点关系信息,其中,所述节点信息适于描述容器的静态化信息,所述节点关系信息适于描述节点间的依赖关系。
在具体实施中,所述节点信息可以包括相应类型的节点及所述节点的属性信息,所述节点关系信息包括节点连线及所述节点连线的属性信息。应用描述文件的具体结构、描述方式和生成方式可以参见前述应用信息生成方法实施例中的具体介绍,此处不再赘述。
在具体实施中,可以解析所述应用的描述文件,获得所述应用的描述文件描述的具体的节点信息和节点关系信息。
S72,根据所述描述文件中的节点关系信息确定部署节点的顺序,按照顺序获取节点信息,根据所述节点信息进行部署,并根据节点关系信息执行任务。
在具体实施中,可以根据所述描述文件中的节点连线确定部署节点的顺序,按照顺序获取节点信息,根据所述节点信息进行部署,并根据节点连线信息执行任务。
通过步骤S72,可以将所述应用对应的所有具有依赖关系的节点,按照顺序部署完成。
S73,在所述节点关系信息中对应的节点部署完成后,确定所述节点信息中是否还存在未部署节点,并对节点信息中存在的未部署节点进行部署,直至所述节点信息中的所有节点均部署至预设容器集群。
在具体实施中,应用所划分的所有节点中,部分节点之间可能不存在依赖关系,因此根据节点关系信息,通过步骤S72将所有具有依赖关系的节点部署完成后,可以再核查节点信息中涉及到的不存在依赖关系的节点,并按照所述不存在依赖关系的节点按照节点信息部署完成。
采用上述实施例的应用部署方法,可以根据应用的描述文件中的节点关系信息确定部署节点的顺序,按照顺序获取节点信息,根据所述节点信息进行部署,并根据节点关系信息执行任务,在所述节点关系信息中对应的节点部署完成后,确定所述节点信息中是否还存在未部署节点,并对节点信息中存在的未部署节点进行部署,从而可以实现所述应用的自动部署,提高应用部署效率。而且,对于复杂度高的大型应用,还可以降低部署的错误率。
例如,通过解析上述应用的描述文件的代码示例,可以获得其中包括三个节点,名称分别为:名称为application的服务节点,名称为mysql的中间件MySQL数据库节点以及名称为init的任务初始化节点。所述应用的描述文件中节点之间的关系信息如下:从服务节点application至中间件节点mysql的节点连线,节点连线的属性信息为属性注入,以及从任务节点init至中间件节点mysql的节点连线,节点连线的属性信息为初始化执行。
则根据解析得到的节点信息和节点关系信息,按照所述应用的描述文件,可以按照如下方式对应用进行部署:
基于服务节点application与中间件节点mysql的节点连线以及任务节点init与中间件节点mysql的节点连线可知,先部署中间件节点mysql,服务节点application与中间件节点mysql的节点连线的属性信息为属性注入,任务节点init与中间件节点mysql的节点连线的属性信息为初始化执行,因此,应先对中间件节点mysql做初始化执行操作,之后,将中间件节点mysql的属性信息注入到服务节点application中,之后,部署服务节点application,在确定节点信息中不存在其他未部署节点时,即可完成应用部署。
上述应用部署过程中,包括节点部署完成后的初始化等操作,无须人为干预,因此可以提高应用部署效率,尤其是对于复杂应用,例如将单个应用切分为数十个甚至上百个容器时,容器之间的关系复杂度大大增加,重复部署时需要面对同等复杂度的操作,采用本说明书实施例中的应用部署方法,可以实现应用的高效部署和重复部署,且可以避免人为部署过程中的输入或操作错误,降低部署错误率。
本说明书实施例还提供了另一种应用部署的方法,如图8所示,具体可以采用如下步骤:
S81,基于应用部署到运行实体集群的运行实体组成,配置节点信息,所述节点信息适于描述运行实体的静态化信息。
在具体实施中,运行实体具体可以为容器、虚拟机、物理服务器、虚拟服务器等其中至少一种。基于待部署的运行实体的类型,所述节点信息适于描述待部署的容器、虚拟机、物理服务器、虚拟服务器等其中至少一种运行实体的静态化信息。
以部署于容器集群示例,所述节点信息适于描述容器的静态化信息,所述节点信息可以包括相应类型的节点及所述节点的属性信息,可以基于应用部署到容器集群的容器组成,配置得到相应类型的节点,以及配置所述节点的属性信息。在本说明书一些实施例中,根据容器特性,可以将节点分为以下三种类型:服务节点、中间件节点和功能性节点。其中,对于应用部署到容器集群后的一个Pod或任务,配置为服务节点;对于应用中使用的中间件,配置为中间件节点;对于应用部署过程中需要执行的任务,配置为功能性节点。
在具体实施中,可以通过节点的属性信息描述容器的静态化信息。在本说明书实施例中,可以配置节点的基本属性信息以及基本属性信息之外的一些扩展属性信息。
其中,所述节点的基本属性信息可以包括节点名称、镜像仓库、镜像版本等其中至少一种属性参数。
在本说明书一些实施例中,可以配置所述节点的以下至少一种扩展属性信息:资源属性信息、存储属性信息、环境属性信息和网络属性信息,各扩展属性信息的特征及实现的具体属性参数可以参见前述应用信息生成方法实施例中的具体示例,此处不再展开描述。
S82,基于节点之间的依赖关系和节点的部署顺序,配置节点之间的节点关系信息,所述节点关系信息适于描述节点间的依赖关系。
在具体实施中,所述节点关系信息包括节点连线及所述节点连线的属性信息。
在具体实施中,可以基于节点之间的依赖和节点的部署顺序,构建节点之间的节点连线,配置所述节点连线的属性信息。作为一具体示例,可以基于节点之间的依赖和节点的部署顺序,构建节点之间的节点连线,配置所述节点连线的属性信息。
S83,根据配置得到的节点信息和节点之间的关系信息,生成所述应用的描述文件,所述应用的描述文件包括所述节点信息以及所述节点关系信息。
在具体实施中,配置的节点信息和节点关系信息等配置信息可以是标准格式,也可以是非标准格式。若配置信息是标准格式,可以预设应用的描述文件模板,待用户通过配置将相应的节点信息和节点关系信息输入后,即可自动生成相应应用的描述文件;若配置信息是非标准格式,可以解析用户配置的信息,并转化为预设的标准化格式的应用描述文件。
S84,解析所述描述文件。
在具体实施中,可以获取所述描述文件采用的格式,解析得到所述描述文件中的具体内容,例如包括节点信息及节点关系信息等。
S85,根据所述描述文件将所述应用部署至预设的运行实体集群。
在具体实施中,可以根据所述描述文件中的节点关系信息确定部署节点的顺序,按照顺序获取节点信息,根据所述节点信息进行部署,并根据节点关系信息执行任务;在所述节点关系信息中对应的节点部署完成后,确定所述节点信息中是否还存在未部署节点,并对存在的未部署节点进行部署,直至所述节点信息中的所有节点均部署至所述预设运行实体集群。
作为一具体实现示例,可以根据所述描述文件中的节点连线确定部署节点的顺序,按照顺序获取节点信息,根据所述节点信息进行部署,并根据节点连线信息执行任务。
在具体实施中,开发人员可以先对先对应用进行规划,例如可以将一个应用划分为多少个容器以及采用的具体容器类型,即可根据划分的容器的静态化信息配置相应类型的节点和节点的属性信息,并可以基于节点的依赖和部署顺序,配置节点关系信息,如可以配置节点连线以及节点连线的属性信息,具体可以通过步骤S81和步骤S82实现,在配置完成后,通过步骤S83可以基于配置的节点信息及节点关系信息,自动生成应用的描述文件。步骤S81~S83的具体实现方式可以参见前述应用信息生成方法实施例中的描述。之后,通过步骤S84~S85,即可实现应用的自动部署,以及在同一应用集群的重复部署。本实施例中的应用部署方法的具体步骤可以参见前述应用部署方法实施例中的介绍,此处不再展开描述。
为提升用户操作体验,降低应用部署复杂度,作为可选方案示例,可以采用预设的可视化模块展示相应类型的节点和节点的属性信息;其中,采用与节点类型相应的节点模块展示配置得到的相应类型的节点;采用节点属性模块展示选中的节点的属性信息。为实现可视化交互,可以通过编辑器实现节点关系信息的配置,例如,可以将配置得到的节点载入编辑器中,基于节点之间的依赖和节点之间的部署顺序,在所述编辑器中绘制节点连线,以及配置所述节点连线的属性信息。通过可视化模块构建节点及节点关系信息的方式可以参见附图3至附图6以及前述相应实施例的介绍。
为使本领域技术人员更好地理解和实施本说明书实施例中的应用部署方案,以下对可以实现前述应用信息生成方法以及应用部署方法的相应装置和***进行对应介绍。
本说明书实施例提供了一种应用信息生成装置,如图9所示的应用信息生成装置的结构示意图,其中,应用信息生成装置90可以包括:节点信息配置单元91、节点关系信息配置单元92和描述文件生成单元93,其中:
节点信息配置单元91,适于基于应用部署到运行实体集群的运行实体组成,配置节点信息,所述节点信息适于描述运行实体的静态化信息;
节点关系信息配置单元92,适于基于节点之间的依赖和节点的部署顺序,配置节点之间的节点关系信息;
描述文件生成单元93,适于根据配置得到的节点信息以及节点之间的节点关系信息,生成所述应用的描述文件,所述应用的描述文件包括所述节点信息以及所述节点关系信息。
采用上述应用信息生成装置90,通过节点信息配置单元91,基于应用部署到容器集群的容器组成,配置节点信息,并通过节点关系信息配置单元92,基于节点之间的依赖和节点的部署顺序,配置节点之间的节点关系信息,之后,描述文件生成单元93可以根据配置得到的节点信息以及节点之间的节点关系信息,可以自动生成所述应用的描述文件。
由上可知,采用应用信息生成装置90,可以将应用切分为各个节点,采用节点信息描述容器,基于节点关系信息确定节点间的依赖关系和节点的部署顺序,基于所述应用的描述文件,可以在新的容器集群部署所述应用,或者在原容器集群重复部署,可以实现应用的自动部署和重复部署,因此可以提高应用部署效率。此外通过自动部署,可以避免应用部署过程中人工操作带来的失误。
在本说明书一些实施例中,所述节点信息配置单元91,适于基于应用部署到容器集群的容器组成,配置节点信息,所述节点信息适于描述容器的静态化信息。
在具体实施中,所述节点信息配置单元91,适于基于应用部署到容器集群的容器组成,配置得到相应类型的节点,以及配置所述节点的属性信息。
在具体实施中,所述节点关系信息配置单元92,适于基于节点之间的依赖和节点的部署顺序,构建节点之间的节点连线,配置所述节点连线的属性信息。
在具体实施中,所述节点信息配置单元91还可以包括:可视化展示子单元911,适于采用预设的可视化模块展示相应类型的节点和节点的属性信息,所述可视化展示子单元911可以包括:
节点模块9111,适于展示配置得到的相应类型的节点;
节点属性模块9112,适于展示选中的节点的属性信息。
在具体实施中,所述节点关系信息配置单元92还可以包括:节点连线编辑器921,适于获取配置得到的节点,基于节点之间的依赖和节点之间的部署顺序,绘制节点连线,以及配置所述节点连线的属性信息。
在具体实施中,所述描述文件生成单元93,还可以包括第一解析子单元931,适于基于所述可视化展示子单元911展示的节点以及所述节点连线编辑器921绘制的节点之间的节点连线所形成的应用描述图,生成所述应用的描述文件。
本说明书实施例还提供了相应的应用部署装置,参照图10所示的应用部署装置的结构示意图,其中,应用部署装置100可以包括:描述文件获取单元101和部署单元102,其中:
所述描述文件获取单元101,适于获取所述应用的描述文件,所述应用的描述文件包括节点信息以及节点关系信息,其中,所述节点信息适于描述运行实体的静态化信息,所述节点关系信息适于描述节点之间的依赖关系;
所述部署单元102,适于根据所述描述文件中的节点关系确定部署节点的顺序,按照顺序获取节点信息,根据所述节点信息进行部署,并根据节点关系信息执行任务;并在所述节点关系信息中对应的节点部署完成后,确定所述节点信息中是否还存在为部署节点,并对节点信息中存在的未部署节点进行部署,直至所述节点信息中的所有节点均部署至所述预设运行实体集群。
在具体实施中,所述描述文件获取单元101可以包括第二解析子单元1011,通过获取所述应用的描述文件的具体格式,可以将所述描述文件转换为所述部署装置100可以识别的信息,包括节点信息和节点关系信息等,进而可以由所述部署单元102按照解析出的节点信息和节点关系信息进行部署。
采用应用部署装置100,可以根据应用的描述文件中的节点关系信息确定部署节点的顺序,按照顺序获取节点信息,根据所述节点信息进行部署,并根据节点关系信息执行任务,在所述节点关系信息中对应的节点部署完成后,确定所述节点信息中是否还存在未部署节点,并对节点信息中存在的未部署节点进行部署,从而可以实现所述应用的自动部署,提高应用部署效率。而且,对于复杂度高的大型应用,还可以降低部署的错误率。
为实现应用规划和部署的一体化,本说明书实施例还提供了一种应用部署***,参照图11所示的应用部署***的结构示意图,其中,应用部署***110可以包括:应用信息生成装置111、描述文件生成装置112和应用部署装置113,其中:
所述应用信息生成装置111,适于基于应用部署到运行实体集群的运行实体组成,配置节点信息,所述节点信息适于描述运行实体的静态化信息;以及基于节点之间的依赖关系和节点的部署顺序,配置节点之间的节点关系信息,所述节点关系信息适于描述节点间的依赖关系;
所述描述文件生成装置112,适于基于配置得到的节点信息和节点之间的关系信息,生成所述应用的描述文件,所述应用的描述文件包括所述节点信息以及所述节点关系信息;
所述应用部署装置113,适于解析所述描述文件生成装置生成的描述文件,并根据所述描述文件将所述应用部署至预设运行实体集群。
在具体实施中,所述应用信息生成装置111和所述描述文件生成装置112的具体实现可以参见前述应用信息生成装置实施例中相应功能单元的具体应用。所述应用部署装置112的具体应用可以参见前述应用部署装置实施例的介绍,此处不再详述。
采用上述应用部署***110,将应用切分为各个节点,采用节点信息描述容器,基于节点关系信息确定节点间的依赖关系和节点的部署顺序,基于所述应用的描述文件,可以在新的容器集群部署所述应用,或者在原容器集群重复部署,可以实现应用的自动部署和重复部署,因此可以提高应用部署效率。此外通过自动部署,可以避免应用部署过程中人工操作带来的失误。
参照图12所示的一种应用部署场景示意图,可以采用前述实施例采用的应用信息生成装置根据应用部署到容器集群的容器组成,生成应用描述文件,并采用本说明书前述实施例的应用部署装置和应用部署***将应用部署到容器集群120中。
如图12所示,基于应用1部署到容器集群的容器组成,可以配置得到对应的服务节点A11、A12和中间件节点M11、M12,通过解析应用1对应的描述文件,最终将服务节点A11、A12和中间件节点M11部署到容器集群120上。其中,将服务节点A11和中间件节点M11部署到服务器节点1上,将服务节点A12部署到服务器节点3上,将中间件节点M12部署到服务器节点N上。
继续参照图12,基于应用2部署到容器集群的容器组成,可以配置得到对应的服务节点A21、A22以及功能性节点J21,通过解析应用2对应的描述文件,最终将服务节点A21、A22以及功能性节点J21均部署到容器集群120上。其中,将服务节点A21部署到服务器节点2上,将服务节点A22部署到服务器节点2和服务器节点N上,将中间件节点M21部署到服务器节点N上,将功能性节点J21部署到服务器节点3上。另如图12所示,每个节点均封装于一个独立的Pod中。
本说明书实施例还提供了相应的集群管理***,参照图13所示的集群管理***的结构示意图,集群管理***130可以包括存储器131和处理器132,所述处理器132可以和存储器131通过通信接口如总线进行通信,所述存储器131上存储有可在所述处理器上运行的计算机指令,其中,所述处理器132运行所述计算机指令时适于执行前述任一实施例所述方法的步骤,具体可以参见前述方法实施例,此处不再详述。
在具体实施中,所述集群管理***还可以包括显示器133或者通过扩展接口外接显示器(未示出),所述处理器132适于通过显示接口与所述显示器133进行通信,所述显示器133可以图形化展示节点信息和节点关系信息。
在具体实施中,所述集群管理***还可以包括输入设备134,所述处理器132适于通过通信接口与所述输入设备134通信,所述输入设备134适于响应于输入指令,配置所述节点信息和节点关系信息。
在具体实施中,所述输入设备134可以为键盘、鼠标、触控设备、语音输入设备、手势输入设备等任意一种或多种类型的输入设备。
本说明书实施例还提供了一种计算机可读存储介质,其上存储有计算机指令,所述计算机指令运行时可以执行前述任一实施例所述方法的步骤。具体步骤可以参见前述实施例及对应附图,此处不再赘述。
在具体实施中,所述计算机可读存储介质可以包括例如任何合适类型的存储器单元、存储器设备、存储器物品、存储器介质、存储设备、存储物品、存储介质和/或存储单元,例如,存储器、可移除的或不可移除的介质、可擦除或不可擦除介质、可写或可重写介质、数字或模拟介质、硬盘、软盘、光盘只读存储器(CD-ROM)、可刻录光盘(CD-R)、可重写光盘(CD-RW)、光盘、磁介质、磁光介质、可移动存储卡或磁盘、各种类型的数字通用光盘(DVD)、磁带、盒式磁带等。
计算机指令可以包括通过使用任何合适的高级、低级、面向对象的、可视化的、编译的和/或解释的编程语言来实现的任何合适类型的代码,例如,源代码、编译代码、解释代码、可执行代码、静态代码、动态代码、加密代码等。
需要说明的是,在本说明书实施例中,所述“其他车道”是指非车道,即车辆不能通行的车道。
虽然本说明书实施例披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本说明书实施例的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。

Claims (35)

1.一种应用信息生成方法,其特征在于,包括:
基于应用部署到运行实体集群的运行实体组成,配置节点信息,所述节点信息适于描述运行实体的静态化信息;
基于节点之间的依赖和节点的部署顺序,配置节点之间的节点关系信息;
根据配置得到的节点信息以及节点之间的节点关系信息,生成所述应用的描述文件,所述应用的描述文件包括所述节点信息以及所述节点关系信息。
2.根据权利要求1所述的方法,其特征在于,所述基于应用部署到运行实体集群的运行实体组成,配置节点信息,所述节点信息适于描述运行实体的静态化信息,包括:
基于应用部署到容器集群的容器组成,配置节点信息,所述节点信息适于描述容器的静态化信息。
3.根据权利要求1所述的方法,其特征在于,所述基于应用部署到容器集群的容器组成,配置节点信息,包括:
基于应用部署到容器集群的容器组成,配置得到相应类型的节点,以及配置所述节点的属性信息。
4.根据权利要求3所述的方法,其特征在于,所述基于应用部署到容器集群的容器组成,配置得到相应类型的节点,包括:
对于应用部署到容器集群后的一个Pod或任务,配置为服务节点;
对于应用中使用的中间件,配置为中间件节点;
对于应用部署过程中需要执行的任务,配置为功能性节点。
5.根据权利要求3所述的方法,其特征在于,所述配置所述节点的属性信息包括:
配置所述节点的基本属性信息,所述基本属性信息包括以下至少一种:
节点名称;
镜像仓库;
镜像版本。
6.根据权利要求5所述的方法,其特征在于,所述配置所述节点的属性信息,还包括:配置所述节点的以下至少一种扩展属性信息:
资源属性信息,适于描述所述节点需要分配的资源的限额和配额;
存储属性信息,适于描述所述节点使用的物理存储空间信息;
环境属性信息,适于描述需要注入到容器的环境变量;
网络属性信息,适于描述容器的网络配置信息。
7.根据权利要求3-6任一项所述的方法,其特征在于,所述基于节点之间的依赖和节点的部署顺序,配置节点之间的节点关系信息,包括:
基于节点之间的依赖和节点的部署顺序,构建节点之间的节点连线,配置所述节点连线的属性信息。
8.根据权利要求7所述的方法,其特征在于,所述构建节点之间的节点连线,包括以下任意一种:
在具有依赖关系的节点之间,构建单箭头连线,箭头指向的节点先部署;
在具有依赖关系的节点之间,构建单箭头连线,箭头指向的节点后部署。
9.根据权利要求7所述的方法,其特征在于,所述配置所述节点连线的属性信息,包括:
基于所述节点连线连接的第一节点和第二节点之间的执行动作特征,配置所述节点连线的属性信息。
10.根据权利要求9所述的方法,其特征在于,所述基于所述节点连线连接的第一节点和第二节点之间的执行动作特征,配置所述节点连线的属性信息,包括以下至少一种:
当所述第一节点的属性信息需要注入所述第二节点时,配置所述节点连线的属性信息包括:属性注入;
当所述第一节点需要对所述第二节点执行初始化操作时,配置所述节点连线的属性信息包括:初始化执行。
11.根据权利要求7所述的方法,其特征在于,还包括:
采用预设的可视化模块展示相应类型的节点和节点的属性信息,其中,采用与节点类型相应的节点模块展示配置得到的相应类型的节点;采用节点属性模块展示选中的节点的属性信息。
12.根据权利要求11所述的方法,其特征在于,所述基于节点之间的依赖和节点的部署顺序,配置节点之间的节点连线,配置所述节点连线的属性信息,包括:
将配置得到的节点载入编辑器中,基于节点之间的依赖和节点之间的部署顺序,在所述编辑器中绘制节点连线,以及配置所述节点连线的属性信息。
13.根据权利要求12所述的方法,其特征在于,所述根据配置得到的节点信息以及节点之间的节点关系信息,生成所述应用的描述文件,包括:
基于可视化模块展示的节点以及绘制的节点之间的节点连线所形成的应用描述图,生成所述应用的描述文件。
14.一种应用部署方法,其特征在于,包括:
获取所述应用的描述文件,所述应用的描述文件包括节点信息以及节点关系信息,其中,所述节点信息适于描述运行实体的静态化信息,所述节点关系信息适于描述节点间的依赖关系;
根据所述描述文件中的节点关系信息确定部署节点的顺序,按照顺序获取节点信息,根据所述节点信息进行部署,并根据节点关系信息执行任务;
在所述节点关系信息中对应的节点部署完成后,确定所述节点信息中是否还存在未部署节点,并对节点信息中存在的未部署节点进行部署,直至所述节点信息中的所有节点均部署至预设运行实体集群。
15.根据权利要求14所述的方法,其特征在于,所述节点信息适于描述以下至少一种运行实体的静态化信息:
容器;
虚拟机;
物理服务器;
虚拟服务器。
16.根据权利要求14或15所述的方法,其特征在于,所述节点信息包括相应类型的节点及所述节点的属性信息,所述节点关系信息包括节点连线及所述节点连线的属性信息;所述根据所述描述文件中的节点关系信息确定部署节点的顺序,按照顺序获取节点信息,根据所述节点信息进行部署,并根据节点关系信息执行任务,包括:
根据所述描述文件中的节点连线确定部署节点的顺序,按照顺序获取节点信息,根据所述节点信息进行部署,并根据节点连线信息执行任务。
17.一种应用部署方法,其特征在于,包括:
基于应用部署到运行实体集群的运行实体组成,配置节点信息,所述节点信息适于描述运行实体的静态化信息;
基于节点之间的依赖关系和节点的部署顺序,配置节点之间的节点关系信息,所述节点关系信息适于描述节点间的依赖关系;
根据配置得到的节点信息和节点之间的关系信息,生成所述应用的描述文件,所述应用的描述文件包括所述节点信息以及所述节点关系信息;
解析所述描述文件;
根据所述描述文件将所述应用部署至预设运行实体集群。
18.根据权利要求17所述的方法,其特征在于,所述根据所述描述文件将所述应用部署至预设运行实体集群,包括:
根据所述描述文件中的节点关系信息确定部署节点的顺序,按照顺序获取节点信息,根据所述节点信息进行部署,并根据节点关系信息执行任务;
在所述节点关系信息中对应的节点部署完成后,确定所述节点信息中是否还存在未部署节点,并对存在的未部署节点进行部署,直至所述节点信息中的所有节点均部署至所述预设运行实体集群。
19.根据权利要求18所述的方法,其特征在于,所述节点信息包括相应类型的节点及所述节点的属性信息,所述节点关系信息包括节点连线及所述节点连线的属性信息;所述根据所述描述文件中的节点关系信息确定部署节点的顺序,按照顺序获取节点信息,根据所述节点信息进行部署,并根据节点关系信息执行任务,包括:
根据所述描述文件中的节点连线确定部署节点的顺序,按照顺序获取节点信息,根据所述节点信息进行部署,并根据节点连线信息执行任务。
20.根据权利要求17至19任一项所述的方法,其特征在于,所述基于应用部署到运行实体集群的运行实体组成,配置节点信息,所述节点信息适于描述运行实体的静态化信息,包括:
基于应用部署到容器集群的容器组成,配置节点信息,所述节点信息适于描述容器的静态化信息。
21.根据权利要求20所述的方法,其特征在于,所述基于应用部署到容器集群的容器组成,配置节点信息,包括:
基于应用部署到容器集群的容器组成,配置得到相应类型的节点,以及配置所述节点的属性信息。
22.根据权利要求21所述的方法,其特征在于,所述基于节点之间的依赖和节点的部署顺序,配置节点之间的节点关系信息,包括:
基于节点之间的依赖和节点的部署顺序,构建节点之间的节点连线,配置所述节点连线的属性信息。
23.根据权利要求22所述的方法,其特征在于,还包括:采用预设的可视化模块展示相应类型的节点和节点的属性信息;其中,采用与节点类型相应的节点模块展示配置得到的相应类型的节点;采用节点属性模块展示选中的节点的属性信息。
24.根据权利要求23所述的方法,其特征在于,所述基于节点之间的依赖和节点的部署顺序,配置节点之间的节点连线,配置所述节点连线的属性信息,包括:
将配置得到的节点载入编辑器中,基于节点之间的依赖和节点之间的部署顺序,在所述编辑器中绘制节点连线,以及配置所述节点连线的属性信息。
25.一种应用信息生成装置,其特征在于,包括:
节点信息配置单元,适于基于应用部署到运行实体集群的运行实体组成,配置节点信息,所述节点信息适于描述运行实体的静态化信息;
节点关系信息配置单元,适于基于节点之间的依赖和节点的部署顺序,配置节点之间的节点关系信息;
描述文件生成单元,适于根据配置得到的节点信息以及节点之间的节点关系信息,生成所述应用的描述文件,所述应用的描述文件包括所述节点信息以及所述节点关系信息。
26.根据权利要求25所述的装置,其特征在于,所述节点信息配置单元,适于基于应用部署到容器集群的容器组成,配置节点信息,所述节点信息适于描述容器的静态化信息。
27.根据权利要求25所述的装置,其特征在于,所述节点信息配置单元,适于基于应用部署到容器集群的容器组成,配置得到相应类型的节点,以及配置所述节点的属性信息。
28.根据权利要求25至27任一项所述的装置,其特征在于,所述节点关系信息配置单元,适于基于节点之间的依赖和节点的部署顺序,构建节点之间的节点连线,配置所述节点连线的属性信息。
29.根据权利要求28所述的装置,其特征在于,所述节点信息配置单元还包括:可视化展示子单元,适于采用预设的可视化模块展示相应类型的节点和节点的属性信息,所述可视化展示单元包括:
节点模块,适于展示配置得到的相应类型的节点;
节点属性模块,适于展示选中的节点的属性信息。
30.根据权利要求29所述的装置,其特征在于,所述节点关系信息配置单元还包括:节点连线编辑器,适于获取配置得到的节点,基于节点之间的依赖和节点之间的部署顺序,绘制节点连线,以及配置所述节点连线的属性信息。
31.根据权利要求30所述的装置,其特征在于,所述描述文件生成单元还包括第一解析子单元,适于解析基于所述可视化展示单元展示的节点以及所述节点连线编辑器绘制的节点之间的节点连线所形成的应用描述图,生成所述应用的描述文件。
32.一种应用部署装置,其特征在于,包括:
描述文件获取单元,适于获取所述应用的描述文件,所述应用的描述文件包括节点信息以及节点关系信息,其中,所述节点信息适于描述运行实体的静态化信息,所述节点关系信息适于描述节点之间的依赖关系;
部署单元,适于根据所述描述文件中的节点关系确定部署节点的顺序,按照顺序获取节点信息,根据所述节点信息进行部署,并根据节点关系信息执行任务;并在所述节点关系信息中对应的节点部署完成后,确定所述节点信息中是否还存在为部署节点,并对节点信息中存在的未部署节点进行部署,直至所述节点信息中的所有节点均部署至预设运行实体集群。
33.一种应用部署***,其特征在于,包括:
应用信息生成装置,适于基于应用部署到运行实体集群的运行实体组成,配置节点信息,所述节点信息适于描述运行实体的静态化信息;以及基于节点之间的依赖关系和节点的部署顺序,配置节点之间的节点关系信息,所述节点关系信息适于描述节点间的依赖关系;
描述文件生成装置,适于基于配置得到的节点信息和节点之间的关系信息,生成所述应用的描述文件,所述应用的描述文件包括所述节点信息以及所述节点关系信息;
应用部署装置,适于解析所述描述文件生成装置生成的描述文件,并根据所述描述文件将所述应用部署至预设运行实体集群。
34.一种集群管理***,包括存储器和处理器,所述存储器和处理器通过通信接口进行通信,所述存储器上存储有可在所述处理器上运行的计算机指令,其特征在于,所述处理器运行所述计算机指令时执行权利要求1至24任一项所述方法的步骤。
35.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,所述计算机指令运行时执行权利要求1至24任一项所述方法的步骤。
CN202010215274.8A 2020-03-24 2020-03-24 应用信息生成方法、部署方法及装置、***、存储介质 Pending CN113448678A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010215274.8A CN113448678A (zh) 2020-03-24 2020-03-24 应用信息生成方法、部署方法及装置、***、存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010215274.8A CN113448678A (zh) 2020-03-24 2020-03-24 应用信息生成方法、部署方法及装置、***、存储介质

Publications (1)

Publication Number Publication Date
CN113448678A true CN113448678A (zh) 2021-09-28

Family

ID=77807454

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010215274.8A Pending CN113448678A (zh) 2020-03-24 2020-03-24 应用信息生成方法、部署方法及装置、***、存储介质

Country Status (1)

Country Link
CN (1) CN113448678A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113986396A (zh) * 2021-11-10 2022-01-28 重庆紫光华山智安科技有限公司 一种基于分布式服务的集中配置方法、***、设备及介质
CN114253628A (zh) * 2021-12-22 2022-03-29 金蝶软件(中国)有限公司 一种中间件的自动部署装置及自动部署方法
WO2023109349A1 (zh) * 2021-12-17 2023-06-22 北京字跳网络技术有限公司 一种组节点的导出、导入方法及装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113986396A (zh) * 2021-11-10 2022-01-28 重庆紫光华山智安科技有限公司 一种基于分布式服务的集中配置方法、***、设备及介质
CN113986396B (zh) * 2021-11-10 2023-06-06 重庆紫光华山智安科技有限公司 一种基于分布式服务的集中配置方法、***、设备及介质
WO2023109349A1 (zh) * 2021-12-17 2023-06-22 北京字跳网络技术有限公司 一种组节点的导出、导入方法及装置
CN114253628A (zh) * 2021-12-22 2022-03-29 金蝶软件(中国)有限公司 一种中间件的自动部署装置及自动部署方法

Similar Documents

Publication Publication Date Title
US11948003B2 (en) System and method for automated production and deployment of packaged AI solutions
US20160188450A1 (en) Automated application test system
US8589864B2 (en) Automating the creation of an application provisioning model
CN113448678A (zh) 应用信息生成方法、部署方法及装置、***、存储介质
US11089000B1 (en) Automated source code log generation
US11061739B2 (en) Dynamic infrastructure management and processing
US20210406071A1 (en) Managed integration of constituent services of multi-service applications
WO2021228036A1 (en) Modification of codified infrastructure for orchestration in multi-cloud environment
US11941413B2 (en) Managed control plane service
US10452371B2 (en) Automating enablement state inputs to workflows in z/OSMF
US20220188101A1 (en) Shape-based code comparisons
CN113656001A (zh) 平台组件开发方法、装置、计算机设备及存储介质
US9117177B1 (en) Generating module stubs
US20200403881A1 (en) Data center cartography bootstrapping from process table data
Fehlmann et al. A framework for automated testing
CN111324332A (zh) 大数据任务的处理方法及***、电子设备、存储介质
Bhattacharjee et al. Cloudcamp: A model-driven generative approach for automating cloud application deployment and management
Stüber et al. A Cloud-native Implementation of the Simulation as a Service-Concept Based on FMI
Akue et al. Integrating an online configuration checker with existing management systems: Application to CIM/WBEM environments
Di Martino et al. Methodologies for cloud portability and interoperability
Madushan Cloud Native Applications with Ballerina: A guide for programmers interested in developing cloud native applications using Ballerina Swan Lake
Samson et al. Automatic generation of test oracles from component based software architectures
Erbel Scientific workflow execution using a dynamic runtime model
US20230306149A1 (en) Management of virtual representations in a computing environment using unique identifiers
US11645193B2 (en) Heterogeneous services for enabling collaborative logic design and debug in aspect oriented hardware designing

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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40059940

Country of ref document: HK