CN116614358A - 一种云平台应用发布方法、装置、系统和计算机设备 - Google Patents

一种云平台应用发布方法、装置、系统和计算机设备 Download PDF

Info

Publication number
CN116614358A
CN116614358A CN202310567900.3A CN202310567900A CN116614358A CN 116614358 A CN116614358 A CN 116614358A CN 202310567900 A CN202310567900 A CN 202310567900A CN 116614358 A CN116614358 A CN 116614358A
Authority
CN
China
Prior art keywords
application
application environment
environment
resource
resource information
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
CN202310567900.3A
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.)
New H3C Big Data Technologies Co Ltd
Original Assignee
New H3C Big Data Technologies Co 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 New H3C Big Data Technologies Co Ltd filed Critical New H3C Big Data Technologies Co Ltd
Priority to CN202310567900.3A priority Critical patent/CN116614358A/zh
Publication of CN116614358A publication Critical patent/CN116614358A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • H04L41/082Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种云平台应用发布方法、装置、系统和计算机设备,方法包括:在云平台的数据库中更新并存储至少一个应用环境的相关资源信息,每个应用环境的相关资源信息包括:应用环境名称、必要介质资源和应用相关依赖资源以及三者之间的关联关系;当接收到来自客户端的应用发布请求时,根据应用发布请求中携带的第一应用环境名称,在至少一个应用环境的关联关系中确定其对应的第一必要介质资源或第一应用相关依赖资源;获取应用环境资源信息;将应用环境资源信息发送至应用管理模块,以使应用管理模块利用应用环境资源信息在主机客户端中发布应用包,简化用户对应用发布的操作流程,使得应用发布更简单、高效。

Description

一种云平台应用发布方法、装置、系统和计算机设备
技术领域
本发明涉及通信网络技术领域,尤其涉及一种云平台应用发布方法、装置、系统和计算机设备。
背景技术
随着云平台的快速发展,为应用系统的可视化统一运维管理提供了保证,因此,越来越多的应用系统选择上云平台服务。虽然目前针对每个应用的发布和托管能力已经被大部分云平台满足,但是由于应用系统的复杂性,导致每个应用的发布都需要依赖一些环境资源,比如包括必要介质资源和相关依赖资源等。
在应用发布时,不仅需要指定主机或容器集群作为承载应用的介质资源,同时还需要进行一系列配置来对接数据库、中间件、服务网关和负载均衡等资源,才能完成全部应用上云发布的流程。然而,针对每个应用的复杂配置虽然可以满足功能,但发布操作流程较长,每次发布应用时,用户需要自行相关资源的依赖配置。比如:用户需要自行查看并设置关联数据库中间件的地址和认证配置;以及用户需要自行将发布的应用注册到服务网关或负载均衡上等。
另外,当多个应用发布至同一套相关环境资源或相同配置依赖时,存在大量共性配置的重复操作,导致配置耗时长、应用发布效率低。
发明内容
有鉴于此,本发明提供了一种云平台应用发布方法、装置、系统和计算机设备,以解决目前应用发布耗时长、效率低的问题。
第一方面,本发明提供了一种云平台应用发布方法,应用于一种应用环境管理模块,该方法包括:
在云平台的数据库中更新并存储至少一个应用环境的相关资源信息,每个应用环境的相关资源信息包括:应用环境名称、必要介质资源和应用相关依赖资源,以及三者之间的关联关系;
当接收到来自客户端的应用发布请求时,根据应用发布请求中携带的第一应用环境名称,在至少一个应用环境的关联关系中确定其对应的第一必要介质资源或第一应用相关依赖资源;
获取与第一必要介质资源或第一应用相关依赖资源关联的应用环境资源信息;
将应用环境资源信息发送至应用管理模块,以使应用管理模块利用应用环境资源信息在客户端中发布应用包。
本实施例提供的方法简化应用发布流程,用户发布应用时仅需选择对应环境资源,平台帮助应用自动关联相关资源配置依赖,使得应用发布更简单、高效。
结合第一方面,在第一方面的一种可能的实施方式中,在云平台的数据库中更新并存储至少一个应用环境的相关资源信息,包括:接收客户端发送的消息体,消息体中包括:至少一个应用环境的环境名称、必要介质资源和应用相关依赖资源;根据所述消息体中内容确定每个应用环境的应用环境名称、必要介质资源和应用相关依赖资源之间的关联关系,并根据所述关联关系生成至少一个应用环境的相关资源信息;将生成的至少一个应用环境的相关资源信息写入和存储在云平台的数据库。本实施方式通过建立应用环境名称、必要介质资源和应用相关依赖资源之间的关联关系,为后续云平台发布、资源信息查找提供依据。
结合第一方面,在第一方面的另一种可能的实施方式中,方法还包括:检测所述云平台数据库中存储的必要介质资源和/或应用相关依赖资源是否发生更新,如果是,则从云平台中获取更新后的必要介质资源和/或应用相关依赖资源,并与至少一个应用环境的环境名称重新建立关联关系,以及将该重新建立的关联关系同步至云平台的数据库。本实施方式实现了云平台上必要介质资源或应用相关依赖资源的动态实时更新,从而为应用环境名称提供最新的应用环境资源信息。
结合第一方面,在第一方面的又一种可能的实施方式中,根据应用发布请求中携带的第一应用环境名称,确定其对应的第一必要介质资源或第一应用相关依赖资源,包括:根据第一应用环境名称,确定用户要发布的应用场景为以下任意一种:
主机应用场景;
容器集群应用场景;
应用相关依赖资源场景。
结合第一方面,在第一方面的又一种可能的实施方式中,获取与第一必要介质资源或第一应用相关依赖资源关联的应用环境资源信息,包括:当要发布的应用场景为主机应用场景的情况下,接收应用管理模块通过调用第一接口发送的第一调用请求;根据第一调用请求,从云平台数据库中获取与主机应用场景对应的主机地址和认证信息,确定主机地址和认证信息为应用环境资源信息。本实施方式实现了主机应用场景下,为客户端查找和提供主机应用场景对应的应用环境资源信息。
结合第一方面,在第一方面的又一种可能的实施方式中,获取与第一必要介质资源或第一应用相关依赖资源关联的应用环境资源信息,包括:当要发布的应用场景为容器集群应用场景的情况下,接收应用管理模块通过调用第二接口发送的第二调用请求;根据第二调用请求,从云平台数据库中获取与容器集群应用场景对应的容器集群地址和认证信息,确定容器集群地址和认证信息为应用环境资源信息。本实施方式实现了容器集群应用场景下,为客户端查找和提供容器集群应用场景对应的应用环境资源信息。
结合第一方面,在第一方面的又一种可能的实施方式中,获取与第一必要介质资源或第一应用相关依赖资源关联的应用环境资源信息,包括:当要发布的应用场景为应用相关依赖资源场景的情况下,接收应用管理模块通过调用第三接口发送的第三调用请求;根据第三调用请求,从云平台数据库中获取与应用相关依赖资源场景对应的应用相关依赖资源信息,确定应用相关依赖资源信息为应用环境资源信息。本实施方式实现了应用相关依赖资源应用场景下,为客户端查找和提供应用相关依赖资源应用场景对应的应用环境资源信息。
结合第一方面,在第一方面的又一种可能的实施方式中,方法还包括:接收来自客户端的查询请求,查询请求用于向云平台数据库查询已配置的应用环境、或查询指定应用环境名称所对应的应用环境资源信息;根据查询请求中携带的应用环境名称,从云平台数据库中存储的至少一个关联关系中查询与应用环境名称对应的应用环境资源信息;将查询的应用环境资源信息发送至客户端。
本实施方式中,通过建立应用环境名称、应用环境资源信息的对应关系,实现通过客户端请求,在云平台上自动查询应用环境资源信息的功能。
第二方面,本发明还提供了一种云平台应用发布方法,该方法可应用于一种应用管理模块,方法包括:
通过调用应用环境管理模块的接口接收应用环境资源信息,所述应用环境资源信息根据第一应用环境名称、第一必要介质资源和第一应用相关依赖资源之间的关联关系确定;
通过调用软件中心模块的接口获取本次发布的应用包或镜像信息;
利用所述应用环境资源信息,以及所述应用包或镜像信息在客户端中发布所述应用包。
结合第二方面,在第二方面的一种可能的实施方式中,应用环境管理模块的接口为接口API,如第一API,在主机应用场景的情况下,方法还包括:
通过第一API接口向应用管理模块发送的第一调用请求,第一调用请求用于请求从所述云平台数据库中获取与主机应用场景对应的主机地址和认证信息;
应用管理模块获取通过第一API确定的应用环境资源信息,所述应用环境资源信息包括主机地址和认证信息。
结合第二方面,在第二方面的另一种可能的实施方式中,在容器集群的情况下,方法还包括:通过第二API接口向应用管理模块发送的第二调用请求,第二调用请求用于请求从云平台数据库中获取与容器集群场景对应的容器集群地址和认证信息。
结合第二方面,在第二方面的又一种可能的实施方式中,在应用相关依赖资源场景应用场景的情况下,方法还包括:通过第三API接口向应用管理模块发送的第三调用请求,第三调用请求用于请求从云平台数据库中获取与应用相关依赖资源场景对应的应用相关依赖资源信息。
第三方面,本发明还提供了一种云平台应用发布装置,该装置包括:
第一更新模块,用于在云平台的数据库中更新并存储至少一个应用环境的相关资源信息,每个所述应用环境的相关资源信息包括:应用环境名称、必要介质资源和应用相关依赖资源,以及三者之间的关联关系;
第一接收模块,用于接收到来自客户端的应用发布请求;
第一处理模块,用于当所述第一接收模块接收到所述应用发布请求时,根据所述应用发布请求中携带的第一应用环境名称,在至少一个应用环境的所述关联关系中确定其对应的第一必要介质资源或第一应用相关依赖资源;以及获取与所述第一必要介质资源或所述第一应用相关依赖资源关联的应用环境资源信息;
第一发送模块,用于将所述应用环境资源信息发送至应用管理模块,以使所述应用管理模块利用所述应用环境资源信息在客户端中发布应用包。
第四方面,本发明还提供了一种云平台应用发布装置,该装置包括:
第二接收模块,用于通过调用应用环境管理模块的接口接收应用环境资源信息,应用环境资源信息根据第一应用环境名称、第一必要介质资源和第一应用相关依赖资源之间的关联关系确定;
第二处理模块,用于通过调用软件中心模块的接口获取本次发布的应用包或镜像信息;
发布模块,用于利用应用环境资源信息,以及应用包或镜像信息在客户端中发布应用包。
第五方面,本发明还提供了一种云平台应用发布系统,该系统包括客户端、应用环境管理模块、应用管理模块和云平台的数据库;
其中,应用环境管理模块基于客户端的配置在云平台的数据库中更新并存储至少一个应用环境的相关资源信息,每个应用环境的相关资源信息包括:应用环境名称、必要介质资源和应用相关依赖资源,以及三者之间的关联关系;
客户端向应用环境管理模块发送应用发布请求;
应用环境管理模块根据应用发布请求中携带的第一应用环境名称,在至少一个应用环境的关联关系中确定其对应的第一必要介质资源或第一应用相关依赖资源;获取与第一必要介质资源或第一应用相关依赖资源关联的应用环境资源信息,并将应用环境资源信息发送至应用管理模块;
应用管理模块通过调用应用环境管理模块的接口接收应用环境资源信息,通过调用软件中心模块的接口获取本次发布的应用包或镜像信息;
应用管理模块利用应用环境资源信息,以及应用包或镜像信息在客户端中发布应用包。
第六方面,本发明提供了一种计算机设备,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器中存储有计算机指令,处理器通过执行计算机指令,从而执行上述第一方面以及第二方面或其对应的任一实施方式的云平台应用发布方法。
另外,本发明提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机指令,计算机指令用于使计算机执行上述第一方面以及第二方面或其对应的任一实施方式的云平台应用发布方法。
本发明提供的方法、装置、系统和计算机设备,包含如下有益效果:
1、云平台运用该方案可以简化用户对应用发布的操作流程,用户发布应用时仅需选择对应环境资源,应用环境管理模块和平台为待发布应用自动关联相关资源配置依赖,使得应用发布更简单、高效。
2、当多应用发布依赖同一套应用环境资源时,可避免用户重复操作对接相同配置依赖。例如:多个应用发布均需要对接同一个数据库或注册中心等地址时,基于应用环境的发布方案,云平台根据获取用户选择的环境资源信息自动关联应用相关配置;从云平台数据库中直接获得当前应用环境所对应的应用环境资源信息,避免共性配置的复杂重复操作、提升应用发布上云效率。
3、本方法可以针对应用所依赖的应用环境资源合理规划,使得应用发布与依赖资源关系更加清晰和可视化。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种云平台应用发布的场景示意图;
图2是本发明实施例提供的一种云平台应用发布方法的流程示意图;
图3是本发明实施例提供的另一种云平台应用发布方法的流程示意图;
图4是本发明实施例提供的一种客户端配置应用环境以及上云存储方法的流程图;
图5是本发明实施例提供的一种资源信息查询方法的流程示意图;
图6是本发明实施例提供的一种云平台应用发布装置的结构框图;
图7是本发明实施例提供的另一种云平台应用发布装置的结构框图;
图8是本发明实施例提供的一种计算机设备的硬件结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请技术方案应用于一种容器服务平台,或容器云平台,比如PaaS(Platformas aService,平台即服务),它提供一个全面、灵活、经济高效的云平台,用于开发、运行和管理应用程序。
PaaS平台把应用程序的运行和开发环境作为一种服务模式提供。这种服务模式中用户能够利用PaaS平台开发、测试和部署应用程序。PaaS平台是实现软件即服务(SaaS)真正落地的核心应用环境;能够实现应用代码、配置、运行环境分离;并且提升软件开发交付效率,以及保障应用的稳定运行使用。
其中,PaaS包括基础设施(服务器、存储和网络),也包括中间件、开发工具、BI服务、数据库管理系统等。PaaS旨在支持完整的Web应用生命周期:构建、测试、部署、管理和更新。
其中,基础设施资源主要包括主机、网络、存储资源等。
主机:容器云平台的计算能力由节点(Node)提供,节点类型分为控制节点和容器节点,业务应用的容器组都运行在容器节点。节点可以是物理机或虚拟机,平台可根据业务需求组建一定规模的节点集群。容器云平台的节点管理需满足企业对集群运维监控的需求,支持实时查看集群资源使用情况和节点状态,查看任意节点上CPU和内存的消耗、容器组数及状态。并且提供对节点的全方位细粒度的资源监控如IOPS、磁盘吞吐、网卡流量,让用户一目了然所有节点资源状态。
网络:容器云平台的容器需要进行网络隔离或者网络连通,网络的管理功能需要支持标准的容器网络模型,还需要支持扩展的网络技术。以此来提供丰富的网络功能,更好的为业务服务提供最佳网络服务方案。不同的选择在网络性能、网络节点规模等方面各不相同,比如网络方案主要有Bridge网络模式、Host网络模式、Overlay网络模式等方案。容器调度管理应支持图形化管理网络,可减轻网络配置技术难度,弱化对指定硬件厂商的依赖。此外,网络通信安全方面应支持创建安全加密网络,保障网络通信信息安全。
存储:用于当容器崩溃重启时,存储容器中存放在磁盘的文件。另外,当在一个容器组中同时运行多个容器时,还用于存储这些容器之间共享文件。其中存储方案支持多种,比如采用Ceph、NFS、glusterfs等。
应用管理模块,用于应用管理。所谓应用管理是应用全生命周期管理。应用通常是一个独立完整的业务功能,一个应用可能由多个服务组件组成,对于微服务而言每个组件都可以独立于其他组件部署、启动、运行和治理。PaaS云平台为应用提供诸如一键式部署、健康检查、弹性扩缩、升级发布、资源管理、访问管理、监控管理等功能,从而保证应用的整体服务能力。
本发明提供了一种基于应用环境的PaaS云平台应用发布方案,其目的是优化发布流程,避免配置资源时负责重复操作,提高云平台应用包的发布能力。为了达到该目的,本发明将应用相关的一系列环境资源集合,并划分为应用环境的概念,当客户端用户在应用发布时,可以仅需选择对应规划好的应用环境相关资源给云平台,云平台接收后,自动完成应用与相关资源的对接配置,从而提高应用发布效率、避免重复配置操作。
其中,应用相关的一系列环境资源可以根据用户的不同需求来进行整合。
下面对本发明实施例提供的技术方案进行详细说明。
参见图1,为本发明实施例提供的一种云平台应用发布的场景示意图。该发布平台可以是一种PaaS云平台,包括:应用环境管理、应用环境1、应用环境2、......、云平台租户云服务实例资源、第三方实例资源等。
进一步地,在云平台租户服务实例资源中包括:数据库、中间件和服务网关等单元/装置;类似的,第三方实例资源中也包含数据库以及负载均衡等实例,用于为云平台提供相应功能。
需要说明的是,本实施例中新增应用环境管理模块,与每个应用环境相连接,用于统筹、管理每个应用环境的资源,以及与客户端、应用管理模块、数据库等通信;为应用所依赖的资源进行规划。
如图2所示,为本实施例提供的一种云平台应用发布方法的流程示意图,该方法可由应用环境管理模块执行,具体地,该方法包括:
步骤101:在云平台的数据库中更新并存储至少一个应用环境的相关资源信息。
其中,每个应用环境的相关资源信息包括:应用环境名称、必要介质资源和应用相关依赖资源,以及三者之间的关联关系。
由于PaaS云平台需要提供应用环境的生命周期管理功能,用于提供应用所依赖资源的规划,其应用环境中的资源包括:必要介质资源和应用相关依赖资源。进一步地,必要介质资源是承载应用所必须的介质资源,其中主要包括:主机和容器集群。所谓应用相关依赖资源,是应用可能需要对接关联的资源,其主要包括:应用依赖的数据库、中间件、注册中心、服务网关和负载均衡等。
在步骤101中,应用环境管理模块可通过与客户端用户的交互配置,完成在云平台上至少一个应用环境相关资源信息的绑定和更新,并将应用环境名称、必要介质资源和应用相关依赖资源三者之间的关联关系存储在云平台的数据库中,供使用时调用。例如,一种关联关系是:应用环境名称ID、主机ID/集群容器ID、中间件之间的关联关系。
应理解,在云平台数据库中可以存储多个关联关系,每个关联关系对应一个应用环境所需的全部或部分资源,并将这些资源和绑定关系等信息记录在数据库中,同时,应用环境管理也记录每个应用环境的关联关系。
步骤102:当接收到来自客户端的应用发布请求时,根据应用发布请求中携带的第一应用环境名称,在至少一个应用环境的关联关系中确定其对应的第一必要介质资源或第一应用相关依赖资源。
客户端在将环境资源配置完之后,向应用环境管理模块发送一应用发布请求,该请求中包含待发布的应用环境名称ID,应用环境管理模块接收该应用发布请求后,解析该请求得到应用环境名称ID,并在步骤101中记录的一个或多个关联关系中查找与当前应用环境名称ID相关联的必要介质资源和应用相关依赖资源。
例如,当接收到的应用环境名称ID为应用环境1时,在预先记录的至少一个关联关系中查找与应用环境1相关联的必要介质资源和应用相关依赖资源,例如查找后的必要介质资源为主机1、应用相关依赖资源为数据库1和中间件1,即得到所述第一必要介质资源为主机1、第一应用相关依赖资源为数据库1和中间件1。
步骤103:获取与第一必要介质资源或第一应用相关依赖资源关联的应用环境资源信息。
具体地,在确定了第一必要介质资源和/或第一应用相关依赖资源后,即可通过调用API接口获取第一必要介质资源和/或第一应用相关依赖资源中的具体内容或数据,作为其关联的应用环境资源信息。应用环境资源信息是用户当前请求应用发布的全部或部分资源信息,即包含应用需要发布的必要和相关资源信息。
例如,若第一必要介质资源为主机1,其对应的应用环境资源信息包括:主机1的地址和认证信息(如SSH认证信息)。若第一应用相关依赖资源为数据库1、消息中间件1、缓存1等资源时,其对应的应用环境资源信息包括获取这些资源的地址和认证等相关信息。具体地,应用环境资源信息可预先通过客户端配置,获取方式可以通过云平台的数据库中获取,本实施例对此不做限制。
步骤104:将应用环境资源信息发送至应用管理模块,以使应用管理模块利用应用环境资源信息在客户端中发布应用包。
应用环境管理模块将步骤103中获取的应用环境资源信息发送给应用管理模块,应用管理模块通过调用应用环境管理模块的接口API接收该应用环境资源信息,应用管理模块解析并获取应用发布所需的环境资源;然后通过调用软件中心模块的接口API获取本次发布的应用包或镜像信息;最后,应用管理模块利用该应用环境资源信息,以及应用包或镜像信息在主机中发布应用包。所述主机为客户端主机。
可选的,应用环境管理模块和应用管理模块可以位于同一设备,或者分布在不同设备上,本实施例对此不做限制。
具体地,如图3所示,当应用发布时,应用管理模块从应用仓库中心选择应用包或者镜像,选择对应的应用环境进行发布。其中,应用环境中的必要介质资源为应用提供承载介质,可以是主机或者容器集群,其记录的元数据包含了主机和容器集群的地址和相关认证信息,从而可以将应用包和镜像部署至对应的基础介质资源上。而针对应用相关依赖资源,根据其不同的依赖关系进行配置。这些应用相关依赖资源并不局限于某些资源,可以扩展为所有与应用有关联的资源,理论上均可以通过平台自动化完成对接。
本实施例提供的方法,包含如下有益效果:
1、云平台运用该方案可以简化用户对应用发布的操作流程,用户发布应用时仅需选择对应环境资源,应用环境管理模块和平台为待发布应用自动关联相关资源配置依赖,使得应用发布更简单、高效。
2、当多应用发布依赖同一套应用环境资源时,可避免用户重复操作对接相同配置依赖。例如:多个应用发布均需要对接同一个数据库或注册中心等地址时,基于应用环境的发布方案,云平台根据获取用户选择的环境资源信息自动关联应用相关配置;从云平台数据库中直接获得当前应用环境所对应的应用环境资源信息,避免共性配置的复杂重复操作、提升应用发布上云效率。
3、本方法可以针对应用所依赖的应用环境资源合理规划,使得应用发布与依赖资源关系更加清晰和可视化。
在另一实施例中,还公开了一种客户端配置应用环境以及上云存储的方法,对上述实施例做更进一步补充。
首先,介绍云平台应用环境相关资源存储和客户端配置阶段,对应上述步骤101。如图4所示,所述方法包括:
步骤101-1:客户端配置应用环境相关资源信息。其中,该应用环境相关资源信息包括以下至少一种:
A:至少一个应用环境名称等基础信息;
B:应用环境的必要介质资源;
C:应用相关依赖资源等基本信息。
其中,应用相关依赖资源中包括:应用依赖的数据库、中间件、注册中心、服务网关和负载均衡等,另外还包括指示信息,用于指示这些依赖资源的来源。
另外,客户端在配置过程中还建立上述A、B、C之间的关联关系,其中,每一类信息可以关联一个或多个其他信息。比如建立一种关联关系是:A1-B1-C1,还可以是A1-B2,或A2-B1-C1等,即同一应用环境相关资源可以提供给不同的应用环境名称,比如,如应用环境名称A1和A2共同可以使用同一应该环境相关资源,如B1和C1,本实施例对上述三类资源的其他关联关系不一一举例。
步骤101-2:用户通过客户端调用应用环境管理模块API(接口)的方式,将这些资源信息发送给应用环境管理模块。
一种实施方式是,客户端通过调用所述API接口向应用环境管理模块发送消息体;该消息体中包括上述客户端配置的至少一个应用环境的环境名称、必要介质资源和应用相关依赖资源;对应地,应用环境管理模块接收客户端发送的所述消息体。
步骤101-3:应用环境管理模块接收后,根据消息体中内容确定每个所述应用环境的应用环境名称、所述必要介质资源和所述应用相关依赖资源之间的关联关系,并根据所述关联关系生成至少一个应用环境的相关资源信息,并整合这些相关资源信息。
具体地,应用环境管理模块将解析消息体后得到的上述A、B、C三类信息,以及三者之间的关联关系进行信息整合,比如对A、B、C三类数据信息做格式转换,以及创建至少一个A-B-C的映射关系。
步骤101-4:应用环境管理模块将整合后的至少一个相关资源信息写入和存储到云平台数据库。
其中,上述信息整合的目的是,将A、B、C三类数据信息整合成用于存储云平台的数据,因为数据库结构与传递报文的格式不同。
对应地,云平台数据库接收至少一个相关资源信息,并存储这些信息,创建存储记录。
具体地,一种实施方式中,PaaS云平台将应用环境与其资源的绑定关联信息存储在云平台数据库中,其关联的资源信息包括但不限于:数据库或中间件的访问地址及认证信息,必要介质资源主机和容器集群的相关地址及认证信息等。此时,在云平台数据库中存储并记录A-B-C三类信息的关联关系,以及与B或C所对应的相关地址及认证信息等资源。
本实施例提供的方法,将客户端配置的应用环境名称和应用环境的必要介质资源和/或应用相关依赖资源等基本信息进行关联关系创建,并将三者的信息和关联关系通过应用环境管理模块写入到云平台的数据库中,为后续应用包上云发布提供依据。
其次,本实施例还提供一种方法,用于在云平台数据库中应用相关环境信息发生变化时,实时更新并同步应用环境相关信息。
具体地,如图4所示,上述方法还包括:
步骤101-5:应用环境管理模块根据客户端发过来的应用环境相关资源信息判断该信息中的B和C类资源是否来自云平台。
如果是,则执行步骤101-6;如果否,则结束流程。
步骤101-6:若用户配置的应用环境相关依赖资源(如数据库、中间件)来自于云平台提供,或在云平台数据库中存储的必要介质资源和/或应用相关依赖资源发生更新,则应用环境管理模块在存储了应用环境及其资源信息后,通过调用云平台上相关资源的管理模块(如数据库、中间件管理模块)的API,获取资源的实时信息。
其中,资源的实时信息包括云平台数据库中存储的最新的应用环境的必要介质资源(B’)和应用相关依赖资源等基本信息(C’),因为数据库中存储的这些资源信息可能会动态变化,所以当有变化/或发生更新时,在云平台数据库和应用环境管理模块都对这些变更的数据进行更新,并与至少一个应用环境的环境名称重新建立关联关系,重新记录更新后的关联关系。
步骤101-7:定时同步应用环境的相关资源信息,同时更新云平台的数据库记录。
更新后,重新建立应用环境名称A,与应用环境的必要介质资源(B’)和应用相关依赖资源等基本信息(C’)之间的关联关系,即A-B’-C’,将该重新建立的关联关系同步至云平台的数据库。
本实施方式中,应用环境对已创建好的资源提供了整合管理,每个应用环境记录资源的元数据信息,比如:数据库的访问地址和认证等。其元数据根据实时资源的变更动态刷新。比如数据库或中间件实例的访问地址和认证进行修改后,应用环境同步刷新元数据信息。其用以保证应用发布时,选取应用环境获取的实时的相关资源配置信息。
基于上述关联关系建立和云平台数据库存储的实施例,本申请还提供一种资源信息查询方法,如图5所示,该方法包括:
步骤501:客户端向应用环境管理模块发查询请求,该查询请求用于请求向云平台数据库查询已配置的应用环境、或指定应用环境名称所对应的应用环境资源信息。
对应地,应用环境管理模块接收来自客户端的查询请求,所述查询请求中包括应用环境名称,比如包括应用环境1的ID等。
步骤502:应用环境管理模块根据查询请求中携带的应用环境名称,从云平台数据库中存储的至少一个关联关系中查询与所述应用环境名称对应的应用环境资源信息。
具体地,应用环境管理模块根据应用环境1的ID(比如A的ID)确定与A相关联的B和/或C两类信息,从云平台数据库读取对应的应用环境、或指定应用环境的名称/ID查看对应的资源信息(B和/或C)。
步骤503:应用环境管理模块将查询的应用环境资源信息发送至客户端。
例如,应用环境管理模块将从云平台数据库中获得的B和/或C两类环境资源相关信息发送给客户端。
在又一实施例中,上述如图2或图3所示的应用包发布的具体过程包括如下步骤:
第一步:客户端在进行应用发布前,确定应用场景的类型。
所述应用场景包括以下任意一种类型:主机应用场景、容器集群应用场景、应用相关依赖资源场景。具体可以由用户选择确定,比如选择应用环境1,且该应用环境1是主机应用场景。
第一步:当客户端用户确定应用场景类型后,向应用环境管理模块发送应用发布请求,该应用发布请求中携带的第一应用环境名称。比如应用环境1、应用环境2、......。或者携带应用环境1~N的ID号等。
应理解,所述第一应用环境泛指应用环境1~N中的任意一个,本实施例对此不与限制。
第一步:应用环境管理模块根据该第一应用环境名称,确定其对应的第一必要介质资源或第一应用相关依赖资源,进而确定这些资源所关联的应用环境资源信息。
具体地,按照应用场景的不同,可以包括以下三种实施方式:
第一种实施方式,当要发布的应用场景为主机应用场景的情况下,则客户端选择指定应用环境,比如应用环境1的ID,然后将该应用环境1的ID、软件包ID等信息通过第一应用发布请求的方式下发给应用环境管理模块;应用环境管理模块根据第一应用环境名称(如应用环境1的ID),确定与其关联的B是主机应用场景,根据软件包ID通过调用软件中心模块的API获取本次发布的软件包信息。
应用管理模块根据应用环境名称/ID,通过调用应用环境管理模块API(比如通过第一调用请求方式)来获取相关资源信息,若必要介质资源为主机,则获取主机地址和认证信息(如SSH认证信息),并确定主机地址和认证信息为上述步骤103所述的应用环境资源信息。应用环境管理模块将应用环境资源信息,包括软件包信息传输至主机并完成应用发布、安装部署。
第二种实施方式,客户端选择的必要介质资源为容器集群应用场景,具体过程包括:
客户端用户选择指定应用环境,将应用环境名称/ID、容器镜像ID下发给应用管理模块;应用管理模块根据软件包ID通过调用软件中心模块的API获取本次发布的容器镜像信息。
应用管理模块根据应用环境名称/ID通过调用应用环境模块API(比如通过第二调用请求方式)来获取相关资源信息,其必要介质资源为容器集群,即获取容器集群地址和认证信息(如K8S的API Server地址和认证凭据kubeconfig等),将这些信息作为上述步骤103所述的应用环境资源信息,使应用管理模块通过调用容器集群的API完成容器应用部署、应用包的发布。
第二种实施方式,客户端用户进行应用发布时,若存在C:应用相关依赖资源的场景,如数据库、缓存、消息中间件、注册中心等应用启动运行所需依赖的资源时,具体过程包括:
应用管理模块将根据该应用环境名称或ID通过调用应用环境模块API(比如通过第三调用请求方式)来获取记录的应用相关依赖资源信息(如获取这些资源的地址和认证等相关信息),将这些信息作为上述步骤103所述的应用环境资源信息,使应用管理模块可以通过一定的形式传递给应用。
具体地,可以通过以下两种方式。
方式一:可以是通过环境变量的形式,主机应用在安装部署后,设定主机环境变量配置;容器应用形式通过调用容器集群的API,将环境变量参数下发给容器集群;应用通过读取环境变量信息从而自发连接对应的数据库或中间件等应用依赖资源。
方式二:可以是为应用注入其他配置的形式,如:应用挂载配置文件。主机应用在安装部署后,应用管理模块将信息生产配置文件传输至主机供应用读取挂载;容器应用形式通过调用容器集群的API,将容器挂载相关配置文件。应用通过读取配置文件信息从而自发连接对应的数据库或中间件等应用依赖资源。
至此以上三种实施方式,应用完成发布,即安装部署至指定必要介质资源和关联应用相关依赖资源。
上述实施例提供的应用发布方法,针对应用环境的规划管理,平台应用环境中资源的规划添加,不仅可以无缝对接本平台的云服务实例资源组件,还支持对接第三方或其他平台的资源,同样由应用环境管理模块记录这些资源的元数据信息。从而这些元数据信息可以支撑满足应用发布时的相关依赖配置,应用环境管理的功能逻辑如图3所示。其中应用环境关联各类实例资源,关联关系和资源元数据有云平台应用环境管理组件托管维护。
应用发布时,从应用仓库中心选择应用包或者镜像,选择对应的应用环境进行发布。
应用环境中的必要介质资源为应用提供承载介质,可以是主机或者容器集群,其记录的元数据包含了主机和容器集群的地址和相关认证信息,从而可以将应用包和镜像部署至对应的基础介质资源上。而针对应用相关依赖资源,根据其不同的依赖关系进行配置。这些应用相关依赖资源并不局限于某些资源,可以扩展为所有与应用有关联的资源,理论上均可以通过平台自动化完成对接。下面以几种主要资源对接方案进行举例:
若是数据库、缓存、消息中间件、注册中心等应用启动运行所需依赖的资源,平台将获取这些资源的地址和认证等相关信息可以通过一定的形式传递给应用,其方式可以是通过环境变量的形式,也可以是为应用注入其他配置的形式。并且支持用户自定义变量的key,保证应用的灵活引用。
若是服务网关、负载均衡等资源,应用完成部署后平台需要将应用注册为对应的服务网关或负载均衡的后端服务,通过服务网关或者负载均衡作为应用的访问入口。具体实现可以通过平台获取应用的服务地址,将该服务地址通过一定形式注册到服务网关或者负载均衡上,其形式可以是调用API接口发起注册,如:调用kong网关的API实现;或者是通过修改配置文件内容实现注册代理,如:nginx的配置文件等。具体的实现方式可以根据规划的网关和负载均衡的具体资源类型来选择。
若是需要依赖接入链路监控等服务实例资源,如:skywalking实现对业务系统的拓扑和链路的全局诊断。其应用发布时可以通过javaAgent技术实现,平台根据应用环境中skywalking实例版本,内置对应的javaAgent的jar包,应用程序运行时,通过指定javaagent参数,再预置skywalking服务端的地址相关环境变量,即可实现用户业务应用零侵入的方式对接应用环境中的链路监控资源。
本方案中,应用发布所依赖的资源,包含且不限于上述举例资源,无论是常用的其他数据库中间件资源,还是对于未来的开源组件相关资源,只要是应用依赖的资源,云平台均可以基于应用环境中获取的资源的元数据信息,针对发布应用自动完成配置操作,这也正式本方案可扩展的优势。
在应用发布时,还公开了一种云平台应用发布方法,该方法包括:应用管理模块通过调用应用环境管理模块的接口获取应用环境资源信息,应用环境资源信息根据第一应用环境名称、第一必要介质资源和第一应用相关依赖资源之间的关联关系确定;应用管理模块通过调用软件中心模块的接口获取本次发布的应用包或镜像信息;利用所述应用环境资源信息,以及所述应用包或镜像信息在主机中发布所述应用包。
具体地,平台的应用管理模块通过调用应用环境管理模块的接口,获取对应的应用环境的资源元数据信息(主机、数据库、负载均衡),然后再从应用仓库中心获取应用包发布至对应主机中,并注入相关数据库连接配置,部署后将应用地址注册到负载均衡器上,从而自动完成完整的应用发布流程。
本实施例提供的技术方案包括如下有益效果:
1、云平台运用该方案可以简化用户对应用发布的操作,提升应用上云效率。
2、针对依赖相同环境资源的应用发布,避免共性配置的复杂重复操作。
3、可以针对应用所依赖的应用环境资源合理规划,使得应用发布与依赖资源关系更加清晰和可视化。
4、基于应用环境管理灵活对接第三方或非云上资源,从而应用发布可以对接第三方或非云上资源或是其他云平台的资源。
在本实施例中还提供了一种云平台应用发布装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
参见图6,为本实施例提供的一种云平台应用发布装置的结构框图。如图6所示,装置包括:第一更新模块601、第一接收模块602、第一处理模块603和第一发送模块604,此外,还可以包括其他功能模块、单元,比如存储模块等,本实施例对此不做限制。
其中,第一更新模块601,用于在云平台的数据库中更新并存储至少一个应用环境的相关资源信息,每个所述应用环境的相关资源信息包括:应用环境名称、必要介质资源和应用相关依赖资源,以及三者之间的关联关系。
第一接收模块602,用于接收到来自客户端的应用发布请求。
第一处理模块603,用于当第一接收模块接收到应用发布请求时,根据应用发布请求中携带的第一应用环境名称,在至少一个应用环境的关联关系中确定其对应的第一必要介质资源或第一应用相关依赖资源;以及获取与第一必要介质资源或第一应用相关依赖资源关联的应用环境资源信息。
第一发送模块604,用于将应用环境资源信息发送至应用管理模块,以使应用管理模块利用应用环境资源信息在客户端中发布应用包。
可选的,在本实施例的一种可能的实施方式中,第一接收模块602,还用于接收客户端发送的消息体,消息体中包括:至少一个应用环境的环境名称、必要介质资源和应用相关依赖资源。第一处理模块603,还用于根据消息体中内容确定每个应用环境的应用环境名称、必要介质资源和应用相关依赖资源之间的关联关系,并根据关联关系生成至少一个应用环境的相关资源信息;以及将生成的至少一个应用环境的相关资源信息写入和存储在云平台的数据库。
可选的,在本实施例的另一种可能的实施方式中,第一更新模块601,还用于检测云平台数据库中存储的必要介质资源和/或应用相关依赖资源是否发生更新,如果是,则从云平台中获取更新后的必要介质资源和/或应用相关依赖资源,并与至少一个应用环境的环境名称重新建立关联关系。
第一发送模块604,还用于将重新建立的关联关系同步至云平台的数据库。
其中,必要介质资源包括:主机和容器集群,应用相关依赖资源包括:应用依赖的数据库、中间件、注册中心、服务网关和负载均衡中的至少一种。
第一处理模块603,具体用于根据第一应用环境名称,确定用户要发布的应用场景为以下任意一种:主机应用场景、容器集群应用场景、应用相关依赖资源场景。
可选的,在本实施例的又一种可能的实施方式中,第一接收模块602,还用于当要发布的应用场景为主机应用场景的情况下,接收应用管理模块通过调用API发送的第一调用请求。
第一处理模块603,还用于根据第一调用请求,从云平台数据库中获取与主机应用场景对应的主机地址和认证信息,确定主机地址和认证信息为应用环境资源信息。
可选的,在本实施例的又一种可能的实施方式中,第一接收模块602,还用于当要发布的应用场景为容器集群应用场景的情况下,接收应用管理模块通过调用API发送的第二调用请求。
第一处理模块603,还用于根据第二调用请求,从云平台数据库中获取与容器集群应用场景对应的容器集群地址和认证信息,确定容器集群地址和认证信息为应用环境资源信息。
可选的,在本实施例的又一种可能的实施方式中,第一接收模块602,还用于当要发布的应用场景为应用相关依赖资源场景的情况下,接收应用管理模块通过调用API发送的第三调用请求。
第一处理模块603,还用于根据第三调用请求,从云平台数据库中获取与应用相关依赖资源场景对应的应用相关依赖资源信息,确定应用相关依赖资源信息为应用环境资源信息。
可选的,在本实施例的又一种可能的实施方式中,第一接收模块602,还用于接收来自客户端的查询请求,查询请求用于向云平台数据库查询已配置的应用环境、或查询指定应用环境名称所对应的应用环境资源信息。
第一处理模块603,还用于根据查询请求中携带的应用环境名称,从云平台数据库中存储的至少一个关联关系中查询与应用环境名称对应的应用环境资源信息;将查询的应用环境资源信息发送至客户端。
另外,本实施例还提供了一种云平台应用发布装置,如图7所示,该装置包括:第二接收模块701、第二处理模块702和发布模块703。此外,该装置还可以包括其他功能模块,比如存储模块等。
具体地,第二接收模块701,用于通过调用应用环境管理模块的接口获取应用环境资源信息,所述应用环境资源信息根据第一应用环境名称、第一必要介质资源和第一应用相关依赖资源之间的关联关系确定。第二处理模块702,用于通过调用软件中心模块的接口获取本次发布的应用包或镜像信息。发布模块703,用于利用所述应用环境资源信息,以及所述应用包或镜像信息在主机中发布所述应用包。
本实施例中的云平台应用发布装置是以功能单元的形式来呈现,这里的单元是指ASIC电路,执行一个或多个软件或固定程序的处理器和存储器,和/或其他可以提供上述功能的器件。
上述各个模块和单元的更进一步的功能描述与上述对应实施例相同,在此不再赘述。
另外,本实施例还提供了一种云平台应用发布系统,该系统包括客户端、应用环境管理模块、应用管理模块和云平台的数据库。
其中,应用环境管理模块基于客户端的配置在云平台的数据库中更新并存储至少一个应用环境的相关资源信息,每个应用环境的相关资源信息包括:应用环境名称、必要介质资源和应用相关依赖资源,以及三者之间的关联关系。
客户端向应用环境管理模块发送应用发布请求。
应用环境管理模块根据应用发布请求中携带的第一应用环境名称,在至少一个应用环境的关联关系中确定其对应的第一必要介质资源或第一应用相关依赖资源;通过接口API获取与第一必要介质资源或第一应用相关依赖资源关联的应用环境资源信息,并将应用环境资源信息发送至应用管理模块。
应用管理模块通过调用应用环境管理模块的接口获取应用环境资源信息,通过调用软件中心模块的接口获取本次发布的应用包或镜像信息。
应用管理模块利用应用环境资源信息,以及应用包或镜像信息在主机中发布应用包。
本发明实施例还提供一种计算机设备,具有上述图6或图7所示的云平台发布装置。
请参阅图8,图8是本发明可选实施例提供的一种计算机设备的结构示意图,如图8所示,该计算机设备包括:一个或多个处理器10、存储器20,以及用于连接各部件的接口。
其中,所述接口包括高速接口和低速接口。各个部件利用不同的总线互相通信连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在计算机设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在一些可选的实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个计算机设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图8中以一个处理器10为例。
处理器10可以是中央处理器,网络处理器或其组合。其中,处理器10还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路,可编程逻辑器件或其组合。上述可编程逻辑器件可以是复杂可编程逻辑器件,现场可编程逻辑门阵列,通用阵列逻辑或其任意组合。
其中,所述存储器20存储有可由至少一个处理器10执行的指令,以使所述至少一个处理器10执行实现上述实施例示出的方法。
存储器20可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据一种小程序落地页的展现的计算机设备的使用所创建的数据等。此外,存储器20可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些可选的实施方式中,存储器20可选包括相对于处理器10远程设置的存储器,这些远程存储器可以通过网络连接至该计算机设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
存储器20可以包括易失性存储器,例如,随机存取存储器;存储器也可以包括非易失性存储器,例如,快闪存储器,硬盘或固态硬盘;存储器20还可以包括上述种类的存储器的组合。
该计算机设备还包括通信接口30,用于该计算机设备与其他设备或通信网络通信。
本发明实施例还提供了一种计算机可读存储介质,上述根据本发明实施例的方法可在硬件、固件中实现,或者被实现为可记录在存储介质,或者被实现通过网络下载的原始存储在远程存储介质或非暂时机器可读存储介质中并将被存储在本地存储介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件的存储介质上的这样的软件处理。其中,存储介质可为磁碟、光盘、只读存储记忆体、随机存储记忆体、快闪存储器、硬盘或固态硬盘等。
进一步地,存储介质还可以包括上述种类的存储器的组合。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件,当软件或计算机代码被计算机、处理器或硬件访问且执行时,实现上述实施例示出的云平台发布方法。
虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。

Claims (14)

1.一种云平台应用发布方法,其特征在于,所述方法包括:
在云平台的数据库中更新并存储至少一个应用环境的相关资源信息,每个所述应用环境的相关资源信息包括:应用环境名称、必要介质资源和应用相关依赖资源,以及三者之间的关联关系;
当接收到来自客户端的应用发布请求时,根据所述应用发布请求中携带的第一应用环境名称,在至少一个应用环境的所述关联关系中确定其对应的第一必要介质资源或第一应用相关依赖资源;
获取与所述第一必要介质资源或所述第一应用相关依赖资源关联的应用环境资源信息;
将所述应用环境资源信息发送至应用管理模块,以使所述应用管理模块利用所述应用环境资源信息在客户端中发布应用包。
2.根据权利要求1所述的方法,其特征在于,所述在云平台的数据库中更新并存储至少一个应用环境的相关资源信息,包括:
接收所述客户端发送的消息体,所述消息体中包括:至少一个应用环境的环境名称、必要介质资源和应用相关依赖资源;
根据所述消息体中内容确定每个所述应用环境的应用环境名称、所述必要介质资源和所述应用相关依赖资源之间的关联关系,并根据所述关联关系生成所述至少一个应用环境的相关资源信息;
将所述生成的至少一个应用环境的相关资源信息写入和存储在所述云平台的数据库。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
检测所述云平台数据库中存储的必要介质资源和/或应用相关依赖资源是否发生更新;
如果是,则从所述云平台中获取更新后的必要介质资源和/或应用相关依赖资源,并与至少一个应用环境的环境名称重新建立关联关系,以及将所述重新建立的关联关系同步至所述云平台的数据库。
4.根据权利要求1所述的方法,其特征在于,所述根据所述应用发布请求中携带的第一应用环境名称,确定其对应的第一必要介质资源或第一应用相关依赖资源,包括:
根据所述第一应用环境名称,确定用户要发布的应用场景为以下任意一种:
主机应用场景;
容器集群应用场景;
应用相关依赖资源场景。
5.根据权利要求4所述的方法,其特征在于,所述获取与所述第一必要介质资源或所述第一应用相关依赖资源关联的应用环境资源信息,包括:
当要发布的应用场景为所述主机应用场景的情况下,接收所述应用管理模块通过调用第一接口发送的第一调用请求;
根据所述第一调用请求,从所述云平台数据库中获取与所述主机应用场景对应的主机地址和认证信息,确定所述主机地址和所述认证信息为所述应用环境资源信息。
6.根据权利要求4所述的方法,其特征在于,所述获取与所述第一必要介质资源或所述第一应用相关依赖资源关联的应用环境资源信息,包括:
当要发布的应用场景为所述容器集群应用场景的情况下,接收所述应用管理模块通过调用第二接口发送的第二调用请求;
根据所述第二调用请求,从所述云平台数据库中获取与所述容器集群应用场景对应的容器集群地址和认证信息,确定所述容器集群地址和所述认证信息为所述应用环境资源信息。
7.根据权利要求4所述的方法,其特征在于,所述获取与所述第一必要介质资源或所述第一应用相关依赖资源关联的应用环境资源信息,包括:
当要发布的应用场景为所述应用相关依赖资源场景的情况下,接收所述应用管理模块通过调用第三接口发送的第三调用请求;
根据所述第三调用请求,从所述云平台数据库中获取与所述应用相关依赖资源场景对应的应用相关依赖资源信息,确定所述应用相关依赖资源信息为所述应用环境资源信息。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述方法还包括:
接收来自所述客户端的查询请求,所述查询请求用于向云平台数据库查询已配置的应用环境、或查询指定应用环境名称所对应的应用环境资源信息;
根据所述查询请求中携带的应用环境名称,从所述云平台数据库中存储的至少一个关联关系中查询与所述应用环境名称对应的应用环境资源信息;
将所述查询的应用环境资源信息发送至所述客户端。
9.一种云平台应用发布方法,其特征在于,所述方法包括:
通过调用应用环境管理模块的接口接收应用环境资源信息,所述应用环境资源信息根据第一应用环境名称、第一必要介质资源和第一应用相关依赖资源之间的关联关系确定;
通过调用软件中心模块的接口获取本次发布的应用包或镜像信息;
利用所述应用环境资源信息,以及所述应用包或镜像信息在客户端中发布所述应用包。
10.一种云平台应用发布装置,其特征在于,所述装置包括:
第一更新模块,用于在云平台的数据库中更新并存储至少一个应用环境的相关资源信息,每个所述应用环境的相关资源信息包括:应用环境名称、必要介质资源和应用相关依赖资源,以及三者之间的关联关系;
第一接收模块,用于接收到来自客户端的应用发布请求;
第一处理模块,用于当所述第一接收模块接收到所述应用发布请求时,根据所述应用发布请求中携带的第一应用环境名称,在至少一个应用环境的所述关联关系中确定其对应的第一必要介质资源或第一应用相关依赖资源;以及获取与所述第一必要介质资源或所述第一应用相关依赖资源关联的应用环境资源信息;
第一发送模块,用于将所述应用环境资源信息发送至应用管理模块,以使所述应用管理模块利用所述应用环境资源信息在客户端中发布应用包。
11.一种云平台应用发布装置,其特征在于,所述装置包括:
第二接收模块,用于通过调用应用环境管理模块的接口接收应用环境资源信息,所述应用环境资源信息根据第一应用环境名称、第一必要介质资源和第一应用相关依赖资源之间的关联关系确定;
第二处理模块,用于通过调用软件中心模块的接口获取本次发布的应用包或镜像信息;
发布模块,用于利用所述应用环境资源信息,以及所述应用包或镜像信息在客户端中发布所述应用包。
12.一种云平台应用发布系统,其特征在于,所述系统包括客户端、应用环境管理模块、应用管理模块和云平台的数据库;
其中,所述应用环境管理模块基于所述客户端的配置在所述云平台的数据库中更新并存储至少一个应用环境的相关资源信息,每个所述应用环境的相关资源信息包括:应用环境名称、必要介质资源和应用相关依赖资源,以及三者之间的关联关系;
所述客户端向所述应用环境管理模块发送应用发布请求;
所述应用环境管理模块根据所述应用发布请求中携带的第一应用环境名称,在至少一个应用环境的所述关联关系中确定其对应的第一必要介质资源或第一应用相关依赖资源;获取与所述第一必要介质资源或所述第一应用相关依赖资源关联的应用环境资源信息,并将所述应用环境资源信息发送至所述应用管理模块;
所述应用管理模块通过调用所述应用环境管理模块的接口接收所述应用环境资源信息,通过调用软件中心模块的接口获取本次发布的应用包或镜像信息;
所述应用管理模块利用所述应用环境资源信息,以及所述应用包或镜像信息在所述客户端中发布所述应用包。
13.一种计算机设备,其特征在于,包括:存储器和处理器,所述存储器和所述处理器连接;
所述存储器中存储有计算机指令,
所述处理器通过执行所述计算机指令,执行如权利要求1至8,或9中任一项所述的云平台应用发布方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机指令,
所述计算机指令用于使计算机执行如权利要求1至8,或9中任一项所述的云平台应用发布方法。
CN202310567900.3A 2023-05-17 2023-05-17 一种云平台应用发布方法、装置、系统和计算机设备 Pending CN116614358A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310567900.3A CN116614358A (zh) 2023-05-17 2023-05-17 一种云平台应用发布方法、装置、系统和计算机设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310567900.3A CN116614358A (zh) 2023-05-17 2023-05-17 一种云平台应用发布方法、装置、系统和计算机设备

Publications (1)

Publication Number Publication Date
CN116614358A true CN116614358A (zh) 2023-08-18

Family

ID=87682974

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310567900.3A Pending CN116614358A (zh) 2023-05-17 2023-05-17 一种云平台应用发布方法、装置、系统和计算机设备

Country Status (1)

Country Link
CN (1) CN116614358A (zh)

Similar Documents

Publication Publication Date Title
CN107426034B (zh) 一种基于云平台的大规模容器调度系统及方法
CN108809722B (zh) 一种部署Kubernetes集群的方法、装置和存储介质
CN109542611B (zh) 数据库即服务系统、数据库调度方法、设备及存储介质
CN112214330A (zh) 集群中主节点的部署方法、装置及计算机可读存储介质
CN107544783B (zh) 一种数据更新方法、装置及系统
CN112860479A (zh) 存储数据的方法及云数据中心
CN111147308B (zh) 基于微服务架构的网络管理方法和系统
CN109213498A (zh) 一种互联网web前端的配置方法及服务器
EP4095678A1 (en) Method and apparatus of deploying a cluster, device and storage medium
CN107172214B (zh) 一种具有负载均衡的服务节点发现方法及装置
CN109104368B (zh) 一种请求连接方法、装置、服务器及计算机可读存储介质
CN106790403B (zh) 实现移动云计算中间平台的方法及实现分布式的方法
US10819650B2 (en) Dynamically adaptive cloud computing infrastructure
CN115190103A (zh) 基于服务网格的服务域名解析方法、装置及设备
CN115562757A (zh) 数据处理方法、配置中心系统、电子设备及存储介质
CN113419818B (zh) 基础组件部署方法、装置、服务器及存储介质
US10887249B2 (en) Resource trees by management controller
CN113268254A (zh) 一种集群系统安装方法、装置、电子设备及存储介质
CN116303309A (zh) 文件挂载方法、装置和电子设备
CN116614358A (zh) 一种云平台应用发布方法、装置、系统和计算机设备
US11290318B2 (en) Disaster recovery of cloud resources
CN114090242A (zh) 模型训练方法、装置、设备、存储介质及程序产品
CN111431951B (zh) 一种数据处理方法、节点设备、系统及存储介质
CN115993979A (zh) 配置转换方法、平滑升级方法、装置、设备及存储介质
CN112764825A (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