CN108255497A - 一种应用的部署方法及装置 - Google Patents

一种应用的部署方法及装置 Download PDF

Info

Publication number
CN108255497A
CN108255497A CN201810030799.7A CN201810030799A CN108255497A CN 108255497 A CN108255497 A CN 108255497A CN 201810030799 A CN201810030799 A CN 201810030799A CN 108255497 A CN108255497 A CN 108255497A
Authority
CN
China
Prior art keywords
resource
host
information
user terminal
application
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.)
Granted
Application number
CN201810030799.7A
Other languages
English (en)
Other versions
CN108255497B (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.)
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 CN201810030799.7A priority Critical patent/CN108255497B/zh
Publication of CN108255497A publication Critical patent/CN108255497A/zh
Application granted granted Critical
Publication of CN108255497B publication Critical patent/CN108255497B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Abstract

本申请涉及应用部署技术领域,尤其涉及一种应用的部署方法及装置,包括:接收来自用户端的资源配置信息;针对资源配置信息对应的多种主机类型中的每种主机类型,根据与该种主机类型对应的主机资源需求信息,向与该种主机类型对应的资源服务器发送主机资源获取请求;在接收到多种主机类型分别对应的资源服务器返回的主机资源信息后,根据多个资源服务器返回的主机资源信息,进行应用部署。能够通过与用户端的一次交互,从多个不同主机类型对应的资源服务器中获取对应主机类型的主机资源,并将应用部署在获取的多种类型的主机资源中,减少了用户端与不同的资源服务器的交互次数,减轻了用户端的工作量,提高了应用的部署效率。

Description

一种应用的部署方法及装置
技术领域
本申请涉及应用部署技术领域,具体而言,涉及一种应用的部署方法及装置。
背景技术
企业的传统IT基础设施架构通常是由多台物理服务器组成,企业将应用部署在多台物理服务器中,以提供给用户使用。随着企业应用系统规模的迅速扩大,企业的应用所产生的数据呈爆炸式增长,这呈爆炸式增长的数据称之为大数据,具有数据体量大、数据类别大以及数据真实性高的特点,传统由单一的物理服务器组成的IT基础设施架构已经无法满足对这些大数据的处理。
随着云计算技术和容器技术的发展,许多企业的IT基础设施架构已经从包括单一的物理服务器,发展到包括物理服务器、云主机和/或容器云等多种主机类型的主机,通过多种类型的主机部署应用,能够更好的对应用产生的大数据进行处理。
现有技术中,企业在通过多种类型的主机部署应用时,由于现有技术中每个服务平台只能提供一种类型的主机资源,比如只能提供虚拟机资源或者容器资源,因此,企业通过与服务平台的一次交互,也只能获取到一种类型的主机资源,这种情况下,企业要想通过多种类型的主机部署应用,需要分别与每个服务平台进行交互,使得企业与每个服务平台的交互次数增加,进而增加了企业的工作量,也导致了应用的部署效率低。
发明内容
有鉴于此,本申请实施例的目的在于提供一种应用的部署方法及装置,能够通过与用户端的一次交互完成应用在多种主机类型对应的主机资源中的部署,减少了用户的工作量,提高了应用的部署效率。
第一方面,本申请实施例提供了一种应用的部署方法,包括:
接收来自用户端的资源配置信息,所述资源配置信息中包含有与多种主机类型分别对应的主机资源需求信息;
针对所述资源配置信息对应的所述多种主机类型中的每种主机类型,根据与该种主机类型对应的主机资源需求信息,向与该种主机类型对应的资源服务器发送主机资源获取请求;
在接收到所述多种主机类型分别对应的资源服务器返回的主机资源信息后,根据多个资源服务器返回的主机资源信息,进行应用部署。
第二方面,本申请实施例还提供了一种应用的部署装置,包括:
接收模块,用于接收来自用户端的资源配置信息,所述资源配置信息中包含有与多种主机类型分别对应的主机资源需求信息;
发送模块,用于针对所述资源配置信息对应的所述多种主机类型中的每种主机类型,根据与该种主机类型对应的主机资源需求信息,向与该种主机类型对应的资源服务器发送主机资源获取请求;
部署模块,用于在接收到所述多种主机类型分别对应的资源服务器返回的主机资源信息后,根据多个资源服务器返回的主机资源信息,进行应用部署。
本申请实施例提供的一种应用的部署方法及装置,能够通过与用户端的一次交互,从多个不同主机类型对应的资源服务器中获取对应主机类型的主机资源,并将应用部署在获取的多种类型的主机资源中,减少了用户端与不同的资源服务器的交互次数,减轻了用户端的工作量,提高了应用在不同主机类型对应的主机资源中的部署效率。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本申请实施例所提供的一种应用的部署系统的应用场景示意图。
图2示出了本申请实施例所提供的一种应用的部署方法的流程图。
图3示出了本申请实施例所提供的另一种应用的部署方法的流程图。
图4示出了本申请实施例所提供的另一种应用的部署方法的流程图。
图5示出了本申请实施例所提供的另一种应用的部署方法的流程图。
图6示出了本申请实施例所提供的一种应用的部署装置的结构示意图。
图7示出了本申请实施例所提供的一种计算机设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
考虑到现有技术中企业在通过多种类型的主机部署应用时,需要分别与提供主机资源的每个服务平台进行交互,企业与服务平台之间的多次交互增加了企业的工作量,同时也使得应用的部署效率低。本申请实施例提供了一种应用的部署方法及装置,能够通过与用户端的一次交互完成应用在多种主机类型对应的主机资源中的部署,减少了企业用户的工作量,提高了应用的部署效率。
图1示出了本申请实施例提供的应用的部署系统的应用场景示意图,如图1所示,该系统包括多个软件处理层,具体从下到上依次为:基础设施层、控制适配层、模型统一层、运维管理层和页面视图层;其中,各个软件处理层的作用如下:
1、基础设施层
基础设施层包括企业用户已经部署好的信息科技和产业(InformationTechnology,IT)系统的多种主机类型的主机资源,这里主机资源指的是企业用户待部署的应用所需要的运行环境(包括操作系统环境和网络环境等),多种主机类型的主机资源包括但不限于:物理主机、虚拟主机、云主机(包括公有云主机和私有云主机)以及容器云主机(如Docker)。企业用户可以通过系统部署这些不同主机类型的主机资源,这些主机资源可以来自企业用户自己的资源服务器,也可以来自能够提供这些资源的第三方的资源服务器。
这里,提供物理主机的资源服务器通常是企业用户自己的物理服务器 (如X86物理服务器),企业的物理服务器通常放置在企业用户的数据中心的机房机架中,由交换机、路由器、防火墙等网络设备组成。
提供虚拟主机的资源服务器可以是企业用户自己的物理服务器,也可以是第三方的物理服务器。这里,无论是企业自己的物理服务器还是第三方的物理服务器上均部署有虚拟机化软件(如Vmware、VXBox等),该虚拟机软件能够将物理服务器的物理资源虚拟化,以虚拟机的形式提供应用所需要的运行环境(即虚拟主机的主机资源)。
提供云主机的资源服务器可以是企业用户自己的物理服务器,也可以是第三方的物理服务器。这里无论是企业自己的物理服务器还是第三方的物理服务器上均部署有云管理系统(如OpenStack云计算管理平台),云管理系统通过云计算技术将物理服务器中的中央处理器(CPU,Central Processing Unit)、内存、存储、网络等资源虚拟化,以云主机的形式提供应用所需要的运行环境(即主机资源);其中,云主机包含私有云主机和公有云主机。通常情况下,提供公有云主机的资源服务器为第三方(如亚马逊AWS、微软Azure、阿里云Aliyun)的物理服务器,提供的公有云主机包括:AWS公有云、Azure公有云、阿里云(Aliyun)等。提供私有云主机的资源服务器通常都部署有OpenStack云计算管理平台,并基于OpenStack 云计算管理平台提供私有云主机。
提供容器云主机的资源服务器可以是企业用户自己的物理服务器,也可以是第三方的物理服务器。这里无论是企业自己的物理服务器还是第三方的物理服务器上通常部署应用容器引擎Docker,通过Docker的资源隔离技术以容器的形式提供应用所需要的运行环境。
本申请实施例提供的应用的部署系统既支持在不同主机类型混合的主机资源(或者称为运行环境)中部署应用,也支持在同一种主机类型的主机资源中部署应用。实际中,应用的功能都是由大数据服务软件完成的,因此,部署应用就是部署能够完成应用功能的这些大数据服务软件(多个大数据服务软件组成服务集群),这些大数据服务软件可以为HDFS(也即分布式文件系统)、YARN(Yet Another Resource Negotiator,另一种资源协调者)、HBase(即一个分布式的、面向列的开源数据库)和Spark(也即快速通用的计算引擎)等。
2、控制适配层
控制适配层的作用是与提供不同主机类型的主机资源的资源服务器进行对接,通过与资源服务器适配的技术、协议和方法从资源服务器中获取主机资源,通常情况下,用户会基于模型统一层配置获取的主机资源所需要的资源配置信息,控制适配层则根据根据资源配置信息包括的主机资源需求信息的主机类型,采用与所述主机类型匹配的适配控制方式从所述主机类型对应的资源服务器中去申请所述主机资源需求信息所需要是主机资源。该层包括多个软件模块,如IPMI接口模块、OpenStack Sahara模块、 Kubernetes模块、AWSCloudFormation模块、Aliyun ROS模块、Azure ResourceManager模块、Swarm模块、OpenStack Heat模块等。
其中,智能平台管理接口(Intelligent Platform Management Interface,IPMI)模块,用于与提供物理机的资源服务器进行通信,以实现对该资源服务器进行控制。
OpenStack Heat模块和OpenStack Sahara模块,用于与部署有 OpenStack云计算管理平台的资源服务器通信,以控制OpenStack云计算管理平台管理的资源。其中,OpenStack Heat模块是一个编排引擎,它可以基于文本文件形式的模板启动多个复合云应用程序(这些文件可以被视为代码)。简单来说,Heat为OpenStack用户提供了一种自动创建云组件(如网络、实例、存储设备等)的方法。
Kubernetes模块(容器编排工具模块),用于与部署Docker的资源服务器通信,以控制Docker平台管理的资源。容器云是一个开源平台,用于跨主机群集自动部署,扩展和操作应用程序容器,提供以容器为中心的基础架构。控制适配层支持这个技术来控制Docker类型的主机,同理,Swarm 模块也是类似的。
AWS CloudFormation模块,用于与第三方AWS公司的资源服务器通信,以控制申请成功AWS公有云中的资源。这里,AWS CloudFormation向开发人员和系统管理员提供了一种简便地创建和管理一批相关的AWS资源的方法,并通过有序且可预测的方式对其进行资源配置和更新。控制适配层使用这种技术控制管理AWS公有云中的资源,同理,类似的AliyunROS模块、 Azure ResourceManager模块等。
3、模型统一层
模型统一层,对上将待部署的大数据集群所需要的运行环境(也即主机资源信息)抽象出来,以便运维管理层展示给用户,由用户进行选择,对下则将对用户的选择结果的控制操作统一交给控制适配层处理(具体处理在控制适配层以及具体步骤中均有详细说明)。抽象出来的两个基本模型:Stack模型(也即堆栈模型)和Cluster模型(即集群模型):
其中,Stack模型即一系列运行环境(也即主机资源信息)组成的抽象集合,该抽象集合具体包含:
主机模型(Host):大数据服务组件的运行环境的抽象模型,包含主机类型、主机名、IP地址、用户名、密码和资源规格等。这里的资源规格可以包括主机数量、CPU性能和内存的大小等。
网络模型(Network):网络环境的抽象模型,包含网络类型、网段、子网、网关、掩码、动态主机配置协议(Dynamic Host Configuration Protocol,DHCP)等。
机架模型(Rack):机架的抽象模型,映射实际机房环境中机架位置,包含机架名、机架容量、机架位置、机架上主机等。
Cluster模型即大数据处理软件的抽象集合,该抽象集合具体包含:
仓库模型(也即Repository模型):大数据服务软件仓库的抽象模型,仓库中有多种类型的大数据服务软件所依赖的软件包,包含大数据服务包,工具包,虚拟机镜像,大数据云主机镜像,Docker镜像,模板等。
服务模型(即Service模型):大数据服务软件服务的抽象模型,即提供某一大数据相关处理能力的软件,如HDFS(分布式文件系统),Spark(分布式计算框架)等,包含服务名、服务版本、服务依赖、服务配置、服务操作、运行组件、服务指标等。
组建模型(即Component):大数据各服务软件中组件模块的抽象模型,如HDFS服务中就包含NameNode、DataNode组件,包含组件名,组件操作,组件配置,组件监控等。
4、运维管理层
运维管理层是完成实现应用的功能的大数据集群的安装、部署、管理的核心逻辑处理层,这一层操作处理的都是模型统一层抽象出来的模型,模型处理的控制操作经过控制适配层作用到具体主机类型的资源服务器,最终能够从资源服务器中获取所需要的主机资源。多种主机类型的主机资源(也即异构的主机资源)在运维管理层的逻辑处理中都是同样的实体,这样,能够便于进行跨异构主机的大数据集群的安装部署管理。
运维管理层要完成部署在异构主机资源中的大数据集群运维功能,需要进行集群管理、仓库管理、服务管理、监控告警管理、主机管理、组织管理、日志管理、安全管理、计算管理等功能。
这里,集群管理指的集群安全管理,集群监控与告警;仓库管理包括是对仓库中存储的大数据集群的版本的更新和替换等;服务管理包括:大数据服务软件的配置文件的管理、服务的启停操作、服务配置修改和服务检查等;监控管理包括部署的主动防御系统监控服务的运行日志和服务状态等,并在监控结果不符合预设条件时启动告警;主机管理包括主机资源的扩充和收缩;组织管理包括企业用户的各个部门的主机资源分配、调度等;日志管理包括服务的运行日志的存储位置管理等;安全管理包括访问安全和网络安全等;计费管理包括是统计向需要第三方的付款费用等。
5、页面视图
页面视图层是企业用户使用操作的WEB UI界面,其提供简便直观的操作视图,方便企业用户在异构主机中部署大数据集群。
本申请实施例提供的应用的部署系统,能够通过与用户端的一次交互即可实现在异构主机资源中自动部署大数据集群,能够帮助企业用户在不同的基础设施、不同运行场景中灵活部署大数据集群。
本申请提出了一种跨异构主机自动部署的方法,能够实现通过与用户端的一次交互,实现将实现应用功能的大数据服务软件(如HDFS、YARN、 HBase、Spark等)自动安装在不同主机类型的主机资源中,所述方法基于上述应用的部署系统实现,如图2所示,该方法具体包括以下步骤:
S101、接收来自用户端的资源配置信息,所述资源配置信息中包含有与多种主机类型分别对应的主机资源需求信息。
这里,企业用户在使用上述系统之前,需要预先配置控制适配参数,只有配置好这个控制适配参数,控制适配层的软件模块才能根据配置的控制适配参数与不同主机类型对应资源服务器进行通信。这里的控制适配参数指的是,与不同的主机类型对应的资源服务器进行通信时,所需要的账号信息,该账号信息可以包括用户名、密码、当前资源服务器的网络之间互连的协议(Internet Protocol,IP)地址等。
比如,针对提供物理机的企业物理服务器,用户需要预先配置该企业物理服务器的账户信息,包括企业物理服务器IP地址、用户名、密码,在企业物理服务器的账号信息配置好之后,系统通过调用IPMI接口模块基于配置的账户信息即可与该企业物理服务器进行通信。再比如,系统要想通过OpenStack Heat模块与提供私有云主机的资源服务器通信,那么用户需要预先配置OpenStack Heat实例IP、用户名和密码;系统要想通过AWSCloudFormation模块与提供公有云主机的资源服务器通信,那么用户需要预先配置应用程序编程接口(Application Programming Interface,API) 认证签名。企业用户根据实际IT环境,将相关的控制适配参数均配置好以后,系统便可通过适配层的软件模块访问不同主机类型对应的资源服务器。
本申请实施例中,主机资源需求信息可以包括:实现待部署的应用的功能所需要的大数据集群信息和多种主机类型的主机资源信息。这里,大数据集群信息包括大数据服务软件,大数据服务软件可以为HDFS、YARN、 HBase和Spark等。而上述多种主机类型的主机资源信息包括但不限于:物理主机、虚拟主机、云主机(包括公有云主机和私有云主机)以及容器云主机(如Docker)。而上述主机资源信息指的是:包括上述大数据集群所需要的多种主机类型的主机资源信息(也即运行环境信息),这里的主机资源信息包括系统的模型统一层的Stack模型中的具体信息(即上述主机模型、网络模型和机架模型的具体信息等)。
具体实施方式中,上述系统在提供给企业用户使用时,会预先部署好企业用户的应用所需要的大数据集群(这里的大数据集群可以有多个版本,其中,不同版本大数据集群中的服务软件版本不同或者服务软件不同),同时,系统还会基于企业用户的业务情况,预先配置好与企业用户待部署的大数据集群匹配的至少一种规格的资源配置信息,企业用户在使用系统时,可直接根据系统提供的这些资源配置信息选择需要规格的主机资源需求信息,无需用户自己手动输入主机资源需求信息,方便了企业用户使用同时也能提高企业用户的使用效率。
S102、针对所述资源配置信息对应的所述多种主机类型中的每种主机类型,根据与该种主机类型对应的主机资源需求信息,向与该种主机类型对应的资源服务器发送主机资源获取请求。
本申请实施例中,企业用户在系统上选择多种主机类型的对应的主机资源需求信息后,系统会根据每种主机类型对应的主机资源信息中包括的主机资源信息,生成该种主机类型对应主机资源获取请求,并将该主机资源获取请求发送给该中主机类型对应的资源服务器。
具体实施方式中,系统在一种主机类型对应的资源服务器发送主机资源获取请求时,从控制适配层中查找与当前主机类型匹配的软件模块,调用查找到的软件模块向当前主机类型对应的资源服务器发送所述主机资源获取请求。比如,系统要向阿里云的资源服务器发送所述主机资源获取请求,那么系统的运维管理层中的web server程序调用与阿里云的资源服务器匹配的Aliyun ROS模块,并通过Aliyun ROS模块向阿里云的资源服务器发送该主机资源获取请求。
S103、在接收到所述多种主机类型分别对应的资源服务器返回的主机资源信息后,根据多个资源服务器返回的主机资源信息,进行应用部署。
在本申请实施例中,系统所采用的第二数据封装结构(即系统的模型统一层所采用的封装结构)与各个主机类型对应的资源服务器所采用的第一数据封装结构通常是不同的。针对任一主机类型对应的资源服务器返回的主机资源信息,系统中预先部署有用于将待部署的大数据集群部署到该主机资源信息对应的主机资源中的代理进程,而该代理进程只识别第二数据封装结构,因此,为了能够将待部署的大数据集群部署到多种主机类型对应的主机资源中,系统在接收到多种主机类型分别对应的资源服务器返回的主机资源信息后,针对每一种主机类型对应的主机资源信息,将该主机资源信息所使用的第一数据封装结构与预设的上述代理进程能够识别的第二数据封装结构进行比较;若所述第一数据封装结构和所述第二数据封装结构不一致,则根据所述第一数据封装结构中各种数据的表达方式与所述第二数据封装结构中各种数据的表达方式之间的映射关系,将该主机资源信息按照上述代理进程能够识别的第二数据封装结构进行封装,以便系统通过该代理进程将待部署的应用部署在所述主机资源信息对应的主机资源中。
这里,第一数据封装结构中各种数据和第二数据封装结构中各种数据,也即主机资源信息包括的数据,具体包括主机类型、主机名、IP地址、用户名、密码和资源规格等。所述第一数据封装结构中各种数据的表达方式与所述第二数据封装结构中各种数据的表达方式之间的映射关系可以为: ip地址-IP地址、主机名称与Host name。举例来讲,阿里云的资源服务器返回的主机资源信息包括:ip地址:192.168.12.36,主机名称:Aliyun2017,系统需要根据ip地址-IP地址、主机名称与Host Host name的映射关系,将该主机资源信息按照第二数据封装结构进行封装,得到“IP地址: 192.168.12.36,Host name:Aliyun2017”。
企业用户在多种主机类型对应的主机资源中部署了大数据集群之后,可以通过系统对部署好的大数据集群进行运维管理;这里的管理支持集群管理、服务管理、主机管理等。集群管理,实现集群层级的管理功能,如集群安全管理,集群监控与告警等。服务管理:服务管理功能实现服务层级的管理功能,如服务启停操作,服务配置修改,服务检查等。主机管理:主机管理功能是对部署好的主机资源进行管理,主要实现主机资源的扩容与缩容等。
本申请实施例中,代理进程从系统的仓库中获取将待部署的多个大数据服务软件所需要的大数据服务组件,并将该大数据服务组件安装到对应的主机资源中。
本申请实施例提供的一种应用的部署方法,能够通过与用户端的一次交互,从多个不同主机类型对应的资源服务器中获取对应主机类型的主机资源,并将应用部署在获取的多种类型的主机资源中,减少了用户端与不同的资源服务器的交互次数,减轻了用户端的工作量,提高了应用在不同主机类型对应的主机资源中的部署效率。
本申请实施例中的系统在提供给企业用户使用时,系统中会预先部署好企业用户的应用所需要的大数据集群和与企业用户待部署的大数据集群匹配的至少一种规格的资源配置信息,由企业用户进行选择,如图3所示,步骤101接收来自用户端的资源配置信息,包括:
S201、获取用户端需要部署在主机资源上的应用的信息。
本申请实施例中,获取的应用的信息为实现该应用的功能所需要的大数据集群(该大数据集群中包括多个大数据服务软件)。
具体实施方式中,通常是系统的工作人员根据企业用户的业务情况,确定实现企业用户待部署的应用的功能所需要的大数据集群,然后系统的工作人员预先在系统上配置好大数据集群。这里,系统预先配置好的大数据集群可以包括很多版本,不同版本的大数据集群包括的大数据服务软件不同,或者包括的相同的大数据服务软件但是软件版本不同。这里的大数据服务软件可以为:hadoop、hbase、spark、hive、kafka、chart3D等。
S202、根据获取的所述应用的信息,确定与所述应用的信息匹配的至少一种规格的资源配置信息,并将所述至少一种规格的资源配置信息发送给所述用户端。
这里,系统的工作人员在系统上配置了企业用户待部署的大数据集群之后,会根据该待部署的大数据集群,配置对应于该大数据集群的多种主机类型的主机资源信息(这里的主机资源信息即上述大数据集群所需要的运行环境信息,即系统的模型层中Stack模型中的具体信息),并将由主机资源信息和待部署的大数据集群组成的资源配置信息展示给企业用户。这里的主机资源信息的规格可以为一种也可以为多种,比如对应于应用的阿里云,一种规格包括:双核CPU,4G内存;另一种规格四核CPU,8G内存。
企业用户可以根据需求在系统提供的资源配置信息中,选择一种或多种主机类型的主机资源信息,并且,针对每一种主机类型的主机资源信息,企业用户还可以选择任一规格的主机资源信息。
S203、将用户端从所述至少一种规格的资源配置信息中选择的资源配置信息作为所述接收的来自用户端的资源配置信息。
本申请实施例中,企业用户在用户端上在配置好控制适配参数后,可继续从系统提供的资源配置信息中选择,部署大数据集群所需要的目标资源配置信息,这里,配置目标资源配置信息的过程即配置Cluster模型和配置Stack的过程,在配置过程中,用户可以选择大数据集群的版本、集群需要安装的服务,已经修改服务默认配置、主机资源规模、主机资源的类型,主机资源的配置规格、网络环境,如网段、掩码、网关等。本申请实施例中,当主机数量为多个时,可以允许主机类型异构,如3个公有云主机、2个物理机,2个虚拟主机等。
针对企业用户在用户端选择的每一种主机类型的主机资源信息,系统根据该主机资源信息生成主机资源获取请求,并向与该种主机类型对应的资源服务器发送主机资源获取请求。
在本申请实施例中,如果企业用户向第三方的资源服务器请求主机资源,那么第三方是会相应的收取费用的,本申请实施例中的系统可直接根据用户申请的主机资源对应的主机资源信息确定企业用户需要向第三方缴纳的费用,对应的,如图4所示,本申请实施例提供的应用的部署方法,在接收到来自用户端的资源配置信息之后,还包括:
S301、根据所述用户端发送的资源配置信息,确定所述资源配置信息包括的主机资源需求信息对应的资源使用费用。
本申请实施例中,主机资源需求信息中的主机资源信息是第三方的资源服务器提供的,因此,系统根据主机资源信息的具体资源规格(比如,主机类型、主机个数、所需CPU和内存大小)以及预存的多个不同主机类型的第三方资源服务器的收费标准,确定对应当前规格的主机资源信息的资源使用费用。这里,资源使用费用可以包括:具体费用信息以及缴费的具体时间等。
S302、向所述用户端发送携带有所述资源使用费用的付款请求,以便所述用户端根据所述付款请求付款。
系统若检测到当前时间距离预设的付款时间小于设定阈值,则提醒用户端及时付款,同时,系统若检测到用户端付款失败,则提示用户端具体付款失败原因同时提示用户端重新付款。
在本申请实施例中,当企业用户在向资源服务器请求了主机资源后,若不在需要该主机资源,那么企业用户可以向对应主机类型的资源服务器请求释放分配的主机资源。所述主机资源信息中包括主机类型信息,如图5 所示,步骤104所述根据多个资源服务器返回的主机资源信息,进行应用部署之后,还包括:
S401、接收来自用户端的资源释放请求,所述资源释放请求中包含所述主机资源信息。
这里,资源释放请求包含的主机资源信息用于标识待释放的主机资源,其可以包括:主机类型信息、主机的IP地址、主机名称等。
S402、根据所述主机资源信息中包括的主机类型信息,向该主机类型信息对应的资源服务器发送所述资源释放请求。
具体实施方式中,仍然是运维管理层中的web server程序从控制适配层查找与该主机类型匹配的软件模块,并通过查找到的软件模块向该主机类型对应的资源服务器发送资源释放请求。
本申请实施例提供的一种应用的部署方法,能够通过与用户端的一次交互,从多个不同主机类型对应的资源服务器中获取对应主机类型的主机资源,并将应用部署在获取的多种类型的主机资源中,减少了用户端与不同的资源服务器的交互次数,减轻了用户端的工作量,提高了应用在不同主机类型对应的主机资源中的部署效率。
本申请实施例还提供了一种应用的部署装置,如图6所示,所述装置包括:
接收模块10,用于接收来自用户端的资源配置信息,所述资源配置信息中包含有与多种主机类型分别对应的主机资源需求信息;
发送模块20,用于针对所述资源配置信息对应的所述多种主机类型中的每种主机类型,根据与该种主机类型对应的主机资源需求信息,向与该种主机类型对应的资源服务器发送主机资源获取请求;
部署模块30,用于在接收到所述多种主机类型分别对应的资源服务器返回的主机资源信息后,根据多个资源服务器返回的主机资源信息,进行应用部署。
可选的,接收模块10,具体用于:
获取用户端需要部署在主机资源上的应用的信息;
根据获取的所述应用的信息,确定与所述应用的信息匹配的至少一种规格的资源配置信息,并将所述至少一种规格的资源配置信息发送给所述用户端;
将用户端从所述至少一种规格的资源配置信息中选择的资源配置信息作为所述接收的来自用户端的资源配置信息。
可选的,本申请实施例提供的应用的部署装置,还包括:
确定模块,用于根据所述用户端发送的资源配置信息,确定所述资源配置信息包括的主机资源需求信息对应的资源使用费用;
发送模块20,还用于向所述用户端发送携带有所述资源使用费用的付款请求,以便所述用户端根据所述付款请求付款。
可选的,部署模块30,具体用于:
在接收到所述多种主机类型分别对应的资源服务器返回的主机资源信息后,针对每一种主机类型对应的主机资源信息,将该主机资源信息所使用的第一数据封装结构与预设的第二数据封装结构进行比较;
若所述第一数据封装结构和所述第二数据封装结构不一致,则根据所述第一数据封装结构中各种数据的表达方式与所述第二数据封装结构中各种数据的表达方式之间的映射关系,将该主机资源信息按照所述第二数据封装结构进行封装;其中,所述第二数据封装结构是部署的代理进程能够识别的数据封装结构;
调用所述代理进程,将待部署的应用部署在所述主机资源信息对应的主机资源中。
可选的,本申请实施例提供的应用的部署装置,所述主机资源信息中包括主机类型信息,
接收模块10,还用于接收来自用户端的资源释放请求,所述资源释放请求中包含所述主机资源信息;
发送模块20,还用于根据所述主机资源信息中包括的主机类型信息,向该主机类型信息对应的资源服务器发送所述资源释放请求。
图7为本申请实施例提供的计算机设备的结构示意图,如图7所示,用于执行图2中的应用的部署方法,该设备包括存储器21、处理器22及存储在该存储器21上并可在该处理器22上运行的计算机程序,其中,上述处理器22执行上述计算机程序时实现上述应用的部署方法的步骤。
具体地,上述存储器21和处理器22能够为通用的存储器和处理器,这里不做具体限定,当处理器22运行存储器21存储的计算机程序时,能够执行上述应用的部署方法,能够通过与用户端的一次交互,从多个不同主机类型对应的资源服务器中获取对应主机类型的主机资源,并将应用部署在获取的多种类型的主机资源中,减少了用户端与不同的资源服务器的交互次数,减轻了用户端的工作量,提高了应用在不同主机类型对应的主机资源中的部署效率。
对应于图2中的应用的部署方法,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述应用的部署方法的步骤。
具体地,该存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该存储介质上的计算机程序被运行时,能够执行上述应用的部署方法,能够通过与用户端的一次交互,从多个不同主机类型对应的资源服务器中获取对应主机类型的主机资源,并将应用部署在获取的多种类型的主机资源中,减少了用户端与不同的资源服务器的交互次数,减轻了用户端的工作量,提高了应用在不同主机类型对应的主机资源中的部署效率。
本申请实施例所提供的应用的部署装置可以为设备上的特定硬件或者安装于设备上的软件或固件等。本申请实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,前述描述的系统、装置和单元的具体工作过程,均可以参考上述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释,此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的精神和范围。都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (10)

1.一种应用的部署方法,其特征在于,包括:
接收来自用户端的资源配置信息,所述资源配置信息中包含有与多种主机类型分别对应的主机资源需求信息;
针对所述资源配置信息对应的所述多种主机类型中的每种主机类型,根据与该种主机类型对应的主机资源需求信息,向与该种主机类型对应的资源服务器发送主机资源获取请求;
在接收到所述多种主机类型分别对应的资源服务器返回的主机资源信息后,根据多个资源服务器返回的主机资源信息,进行应用部署。
2.根据权利要求1所述的应用的部署方法,其特征在于,所述接收来自用户端的资源配置信息,包括:
获取用户端需要部署在主机资源上的应用的信息;
根据获取的所述应用的信息,确定与所述应用的信息匹配的至少一种规格的资源配置信息,并将所述至少一种规格的资源配置信息发送给所述用户端;
将用户端从所述至少一种规格的资源配置信息中选择的资源配置信息作为所述接收的来自用户端的资源配置信息。
3.根据权利要求1所述的应用的部署方法,其特征在于,在接收到来自用户端的资源配置信息之后,还包括:
根据所述用户端发送的资源配置信息,确定所述资源配置信息包括的主机资源需求信息对应的资源使用费用;
向所述用户端发送携带有所述资源使用费用的付款请求,以便所述用户端根据所述付款请求付款。
4.根据权利要求1所述的应用的部署方法,其特征在于,所述在接收到所述多种主机类型分别对应的资源服务器返回的主机资源信息后,根据多个资源服务器返回的主机资源信息,进行应用部署,包括:
在接收到所述多种主机类型分别对应的资源服务器返回的主机资源信息后,针对每一种主机类型对应的主机资源信息,将该主机资源信息所使用的第一数据封装结构与预设的第二数据封装结构进行比较;
若所述第一数据封装结构和所述第二数据封装结构不一致,则根据所述第一数据封装结构中各种数据的表达方式与所述第二数据封装结构中各种数据的表达方式之间的映射关系,将该主机资源信息按照所述第二数据封装结构进行封装;其中,所述第二数据封装结构是部署的代理进程能够识别的数据封装结构;
调用所述代理进程,将待部署的应用部署在所述主机资源信息对应的主机资源中。
5.根据权利要求1-4任一项所述的应用的部署方法,其特征在于,所述主机资源信息中包括主机类型信息,所述根据多个资源服务器返回的主机资源信息,进行应用部署之后,还包括:
接收来自用户端的资源释放请求,所述资源释放请求中包含所述主机资源信息;
根据所述主机资源信息中包括的主机类型信息,向该主机类型信息对应的资源服务器发送所述资源释放请求。
6.一种应用的部署装置,其特征在于,包括:
接收模块,用于接收来自用户端的资源配置信息,所述资源配置信息中包含有与多种主机类型分别对应的主机资源需求信息;
发送模块,用于针对所述资源配置信息对应的所述多种主机类型中的每种主机类型,根据与该种主机类型对应的主机资源需求信息,向与该种主机类型对应的资源服务器发送主机资源获取请求;
部署模块,用于在接收到所述多种主机类型分别对应的资源服务器返回的主机资源信息后,根据多个资源服务器返回的主机资源信息,进行应用部署。
7.根据权利要求6所述的应用的部署装置,其特征在于,所述接收模块,具体用于:
获取用户端需要部署在主机资源上的应用的信息;
根据获取的所述应用的信息,确定与所述应用的信息匹配的至少一种规格的资源配置信息,并将所述至少一种规格的资源配置信息发送给所述用户端;
将用户端从所述至少一种规格的资源配置信息中选择的资源配置信息作为所述接收的来自用户端的资源配置信息。
8.根据权利要求6所述的应用的部署装置,其特征在于,还包括:
确定模块,用于根据所述用户端发送的资源配置信息,确定所述资源配置信息包括的主机资源需求信息对应的资源使用费用;
所述发送模块,还用于向所述用户端发送携带有所述资源使用费用的付款请求,以便所述用户端根据所述付款请求付款。
9.根据权利要求6所述的应用的部署装置,其特征在于,所述部署模块,具体用于:
在接收到所述多种主机类型分别对应的资源服务器返回的主机资源信息后,针对每一种主机类型对应的主机资源信息,将该主机资源信息所使用的第一数据封装结构与预设的第二数据封装结构进行比较;
若所述第一数据封装结构和所述第二数据封装结构不一致,则根据所述第一数据封装结构中各种数据的表达方式与所述第二数据封装结构中各种数据的表达方式之间的映射关系,将该主机资源信息按照所述第二数据封装结构进行封装;其中,所述第二数据封装结构是部署的代理进程能够识别的数据封装结构;
调用所述代理进程,将待部署的应用部署在所述主机资源信息对应的主机资源中。
10.根据权利要求6-9任一项所述的应用的部署装置,其特征在于,所述主机资源信息中包括主机类型信息,
所述接收模块,还用于接收来自用户端的资源释放请求,所述资源释放请求中包含所述主机资源信息;
所述发送模块,还用于根据所述主机资源信息中包括的主机类型信息,向该主机类型信息对应的资源服务器发送所述资源释放请求。
CN201810030799.7A 2018-01-12 2018-01-12 一种应用的部署方法及装置 Active CN108255497B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810030799.7A CN108255497B (zh) 2018-01-12 2018-01-12 一种应用的部署方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810030799.7A CN108255497B (zh) 2018-01-12 2018-01-12 一种应用的部署方法及装置

Publications (2)

Publication Number Publication Date
CN108255497A true CN108255497A (zh) 2018-07-06
CN108255497B CN108255497B (zh) 2021-07-06

Family

ID=62727119

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810030799.7A Active CN108255497B (zh) 2018-01-12 2018-01-12 一种应用的部署方法及装置

Country Status (1)

Country Link
CN (1) CN108255497B (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109117351A (zh) * 2018-09-27 2019-01-01 四川长虹电器股份有限公司 一种Docker容器云主机和Dashboard的前端展示实现方法
CN110007928A (zh) * 2019-04-12 2019-07-12 山东浪潮云信息技术有限公司 一种异地服务自动化部署发布的方法及系统
CN110275775A (zh) * 2019-05-17 2019-09-24 平安科技(深圳)有限公司 容器应用的资源配置方法、系统及存储介质
CN111027689A (zh) * 2019-11-20 2020-04-17 中国航空工业集团公司西安航空计算技术研究所 配置方法、装置及计算系统
CN111190719A (zh) * 2018-11-14 2020-05-22 北京京东尚科信息技术有限公司 优化集群资源分配的方法、装置、介质及电子设备
CN111984269A (zh) * 2020-08-20 2020-11-24 第四范式(北京)技术有限公司 提供应用构建服务的方法及应用构建平台
CN112199164A (zh) * 2020-10-19 2021-01-08 国网新疆电力有限公司信息通信公司 一种保证容器镜像一致性的方法
CN112291078A (zh) * 2020-09-11 2021-01-29 苏州浪潮智能科技有限公司 一种基于虚拟化平台的子网网络资源管理方法及系统
CN112596741A (zh) * 2020-11-16 2021-04-02 新华三大数据技术有限公司 一种视频监控服务部署方法及装置
CN113347043A (zh) * 2021-06-25 2021-09-03 武汉悦学帮网络技术有限公司 网关的管理方法、装置、网关管理平台及存储介质
US20220156051A1 (en) * 2020-11-19 2022-05-19 Siemens Aktiengesellschaft Method and system for determining in which technological layer a module of a mom application is to be deployed
CN115033718A (zh) * 2022-08-15 2022-09-09 浙江大学 一种业务应用部署方法、装置及设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104639374A (zh) * 2015-03-03 2015-05-20 上海瀚银信息技术有限公司 一种应用程序部署管理系统
CN105100267A (zh) * 2015-08-24 2015-11-25 用友网络科技股份有限公司 大企业私有云的部署装置和方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104639374A (zh) * 2015-03-03 2015-05-20 上海瀚银信息技术有限公司 一种应用程序部署管理系统
CN105100267A (zh) * 2015-08-24 2015-11-25 用友网络科技股份有限公司 大企业私有云的部署装置和方法

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109117351B (zh) * 2018-09-27 2020-06-02 四川虹微技术有限公司 一种Docker容器云主机和Dashboard的前端展示实现方法
CN109117351A (zh) * 2018-09-27 2019-01-01 四川长虹电器股份有限公司 一种Docker容器云主机和Dashboard的前端展示实现方法
CN111190719A (zh) * 2018-11-14 2020-05-22 北京京东尚科信息技术有限公司 优化集群资源分配的方法、装置、介质及电子设备
CN110007928A (zh) * 2019-04-12 2019-07-12 山东浪潮云信息技术有限公司 一种异地服务自动化部署发布的方法及系统
CN110275775B (zh) * 2019-05-17 2023-09-01 平安科技(深圳)有限公司 容器应用的资源配置方法、系统及存储介质
CN110275775A (zh) * 2019-05-17 2019-09-24 平安科技(深圳)有限公司 容器应用的资源配置方法、系统及存储介质
CN111027689A (zh) * 2019-11-20 2020-04-17 中国航空工业集团公司西安航空计算技术研究所 配置方法、装置及计算系统
CN111027689B (zh) * 2019-11-20 2024-03-22 中国航空工业集团公司西安航空计算技术研究所 配置方法、装置及计算系统
CN111984269A (zh) * 2020-08-20 2020-11-24 第四范式(北京)技术有限公司 提供应用构建服务的方法及应用构建平台
CN111984269B (zh) * 2020-08-20 2024-01-23 第四范式(北京)技术有限公司 提供应用构建服务的方法及应用构建平台
CN112291078A (zh) * 2020-09-11 2021-01-29 苏州浪潮智能科技有限公司 一种基于虚拟化平台的子网网络资源管理方法及系统
CN112291078B (zh) * 2020-09-11 2022-12-27 苏州浪潮智能科技有限公司 一种基于虚拟化平台的子网网络资源管理方法及系统
CN112199164A (zh) * 2020-10-19 2021-01-08 国网新疆电力有限公司信息通信公司 一种保证容器镜像一致性的方法
CN112596741B (zh) * 2020-11-16 2022-08-30 新华三大数据技术有限公司 一种视频监控服务部署方法及装置
CN112596741A (zh) * 2020-11-16 2021-04-02 新华三大数据技术有限公司 一种视频监控服务部署方法及装置
US20220156051A1 (en) * 2020-11-19 2022-05-19 Siemens Aktiengesellschaft Method and system for determining in which technological layer a module of a mom application is to be deployed
US11789713B2 (en) * 2020-11-19 2023-10-17 Siemens Aktiengesellschaft Method and system for determining in which technological layer a module of a MOM application is to be deployed
CN113347043A (zh) * 2021-06-25 2021-09-03 武汉悦学帮网络技术有限公司 网关的管理方法、装置、网关管理平台及存储介质
CN115033718A (zh) * 2022-08-15 2022-09-09 浙江大学 一种业务应用部署方法、装置及设备

Also Published As

Publication number Publication date
CN108255497B (zh) 2021-07-06

Similar Documents

Publication Publication Date Title
CN108255497A (zh) 一种应用的部署方法及装置
CN107580083A (zh) 一种容器ip地址分配的方法和系统
CN105579965B (zh) 经由提供商定义接口的客户端驻地资源控制
US8984104B2 (en) Self-moving operating system installation in cloud-based network
CN106301829B (zh) 一种网络业务扩容的方法和装置
CN109656686A (zh) OpenStack上部署容器云方法、存储介质、电子设备及系统
US11422844B1 (en) Client-specified network interface configuration for serverless container management service
US10360122B2 (en) Tracking cloud installation information using cloud-aware kernel of operating system
CN108062248A (zh) 异构虚拟化平台的资源管理方法、系统、设备及存储介质
CN107689882A (zh) 一种虚拟化网络中业务部署的方法和装置
CN107566541A (zh) 容器网络资源分配方法、系统、存储介质和电子设备
CN109032806A (zh) 容器的服务调度方法和装置
US9866547B2 (en) Controlling a discovery component, within a virtual environment, that sends authenticated data to a discovery engine outside the virtual environment
CN103051710A (zh) 一种虚拟云平台管理系统及方法
CN109271170A (zh) 一种分布式系统部署方法、系统、电子设备及存储介质
CN111835679B (zh) 多租户场景下的租户资源管理方法和装置
US9451033B2 (en) Enhanced command selection in a networked computing environment
CN106610871A (zh) 一种云操作系统架构
US20180210768A1 (en) Api-based service command invocation
CN103685608A (zh) 一种自动配置安全虚拟机ip地址的方法及装置
US20160253722A1 (en) Aggregating, presenting and fulfilling a number of catalogs
CN111290839A (zh) 一种基于openstack的iaas云平台系统
CN106502760B (zh) 一种虚拟机亲和性策略可视化的方法及装置
CN112637304A (zh) 一种跨云资源处理系统和资源管理方法
CN115129423A (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