一种软件部署方法、服务器和系统技术方案

技术编号:19327778 阅读:31 留言:0更新日期:2018-11-03 14:38
本发明专利技术公开了一种软件部署方法、服务器和系统,软件部署方法应用于安装在云平台上的服务器,包括:接收客户端发送的包含部署配置信息的部署方案;根据接收的部署方案,确定出云平台上的部署节点并获取部署所需的软件文件;执行部署方案,将软件文件安装到部署节点上。本实施例的技术方案通过运行在云平台上的服务器自动完成软件的部署,解决了人工手动部署导致的效率低下、不够灵活的问题,满足了应用需求。

A software deployment method, server and system

The invention discloses a software deployment method, a server and a system. The software deployment method is applied to a server installed on a cloud platform, including: a deployment scheme containing deployment configuration information sent by a receiving client; a deployment node on a cloud platform is determined according to the received deployment scheme and the required software is acquired for deployment. Component files; execute deployment plan and install software files to deployment nodes. The technical scheme of this implementation solves the problem of inefficiency and inflexibility caused by manual deployment by automatically deploying software through servers running on cloud platform, and meets the application requirements.

【技术实现步骤摘要】
一种软件部署方法、服务器和系统
本专利技术涉及计算机
,具体涉及一种软件部署方法、服务器和系统。
技术介绍
在传统软件的开发过程中,软件部署只是软件交付的最后一环,往往得不到重视。而且,传统软件部署过程中,一方面,由于人工的过度参与使得部署流程标准化很难实施,另一方面,手工部署部署效率低,还容易出错。随着互联网的飞速发展,软件更新迭代速度急剧提升,产品的升级发布成为越发频繁。因此,亟需一种加快部署速度、降低部署成本的部署方案来满足用户需求。
技术实现思路
本专利技术提供了一种软件部署方法、服务器和系统,以解决现有技术中软件部署效率低,准确度和灵活性差的问题。根据本专利技术的一个方面,提供了一种软件部署方法,应用于云平台上运行的服务器,该方法包括:接收客户端发送的包含部署配置信息的部署方案;根据接收的所述部署方案,确定出云平台上的部署节点并获取部署所需的软件文件;执行所述部署方案,将所述软件文件安装到所述部署节点上。根据本专利技术的另一个方面,提供了一种软件部署服务器,运行在云平台上,该服务器包括:通信模块,适于接收客户端发送的包含部署配置信息的部署方案;部署准备模块,适于根据接收的所述部署方案,确定出云平台上的部署节点并获取部署所需的软件文件;部署执行模块,适于执行所述部署方案,将所述软件文件安装到所述部署节点上。根据本专利技术的又一个方面,提供了一种软件部署系统,包括客户端以及如本专利技术另一个方面的软件部署服务器。本专利技术实施例的有益效果是:本专利技术的软件部署方案接收客户端发送的包含部署配置信息的部署方案,根据接收的部署方案,确定出云平台上的部署节点并获取部署所需的软件文件,执行部署方案,将软件文件安装到部署节点上。如此,通过运行在云平台上的部署服务器自动执行部署,大大提高了软件部署的效率,也避免了人工部署导致的不够灵活,速度慢的问题,满足了用户的应用需求。附图说明图1是本专利技术一个实施例的一种软件部署方法的流程示意图;图2是本专利技术一个实施例的一种软件部署服务器的结构框图;图3是本专利技术一个实施例的一种软件部署系统的结构框图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚,下面将结合附图对本专利技术实施方式作进一步地详细描述。这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。本专利技术的设计构思在于:针对现有软件部署存在的部署效率低下、容易出错等问题,本专利技术实施例提出一种基于云平台的软件部署自动化实现。通过利用运行在云平台上部署服务器接收客户端发送的部署配置方案,根据该部署配置方案确定待部署的云平台上的节点以及部署文件,然后将部署文件安装到确定出的部署节点上,从而减少了人工参与部署,提高了软件部署效率,也有利于软件部署的标准化实施。实施例一图1是本专利技术一个实施例的一种软件部署方法的流程示意图,参见图1,本实施例的软件部署方法包括如下步骤:步骤S101,接收客户端发送的包含部署配置信息的部署方案;一般的,这里的部署配置信息可以包括用户编写的脚本文件。步骤S102,根据接收的所述部署方案,确定出云平台上的部署节点并获取部署所需的软件文件;这里获取部署所需的软件文件是由服务器去获取。具体的获取方式可以是服务器从云平台上的虚拟机所在的节点或其他节点上获取,或者,服务器从客户端获取,对此不作限制。步骤S103,执行所述部署方案,将所述软件文件安装到所述部署节点上。由图1所示可知,本实施例的方法,接收客户端发送的部署方案,然后根据该部署方案确定云平台上的部署节点,并获取部署所需文件,执行部署方案完成部署,对于用户而言,只需要将填写部署配置信息,并通过客户端发送给云平台上的服务器即可,由服务器自动完成软件部署,实现了软件部署的自动化,大大节省了人工成本,提高了部署效率。实施例二以下对本实施例的软件部署的方法的实现步骤进行更详细的说明。优选地,本实施例软件部署方法基于云平台实现,即,本实施例先在云平台上运行本专利技术实施例的服务器。举例而言,用户想要将一个Tomcat服务器部署到云平台上。首先,服务端启动后,通过固定的端口监听客户端请求;然后,客户端接收用户输入的配置部署信息;优选地,本实施例中客户端发送配置模板获取请求到服务器,服务器返回配置模板至请求的客户端,而后,客户端将配置模板显示输出给用户,接收用户在配置模板中填写的部署配置信息。这里需要说明的是,服务器在完成一次软件部署后,可以保存配置方案作为模板以便后续发送给客户端供用户填写,从而用户不必填写重复的内容,节省用户时间,提高部署效率。也就是说,本实施例的软件部署方案可以提供模板,方便用户在配置模板上选择或填写完成配置信息,优化了用户体验。根据实际配置需求,用户在配置模板中输入的信息可以包括集群域名、虚拟机(即,云平台上的部署节点)用户名及口令、一个或多个部署组件对应的虚拟机节点IP组等信息。这里需要说明的是,虚拟用户名及口令信息是指登录虚拟机的用户名和口令。由于云平台上的虚拟机资源有限,并且不是随意访问和使用的,所以在部署之前服务器需要知道待部署的虚拟机的用户名和口令这样才能在部署时,将软件部署安装到该虚拟机上。客户端在确定用户填写完配置模板后,生成包括配置信息的配置方案并发送到云平台上的服务器。接着,服务器执行部署方案;这里需要说明的是,出于安全考虑,服务器在接收到客户端发送的部署开始指令后,才开始执行部署方案。具体的部署执行过程如下:步骤(1)首先安装或替换虚拟机的操作系统。可以理解,部署需要先安装软件运行环境,所以这一步骤中部署服务器先把Linux操作系统(也可以是其它操作系统,这里仅以Linux操作系统举例)从网络中下载到虚拟机本地,并安装到虚拟机上。而后,从内网部署的源服务器下载所需的软件安装包进行安装。通过从内网部署的源服务器中下载部署所需的软件安装包使得本实施例的软件部署系统支持离线部署,实现了在一些不能访问公共网络的内网环境中,也可轻松地部署和升级云平台的有益效果。需要强调的是,本实施例中,在服务器执行部署的同时,客户端可与服务端通过建立WebSocket连接,实时获取部署进度,查看部署日志。具体的,服务器接收客户端发送的WebSocket连接建立请求,返回WebSocket响应至客户端;接收客户端在WebSocket连接建立后实时发送的部署进度获取请求,返回相应的部署日志至客户端。步骤(2)检查存储器大小根据获取的部署文件的大小,检查根据配置方案确定出的每个部署节点的存储器大小,判断存储器的大小是否大于或等于部署文件的大小,满足条件继续安装。这里的存储器,例如,虚拟机所在的物理机器的硬盘。步骤(3)添加标准用户根据配置方案中用户项的值,判定是否新建一个标准用户。当用户项的值指示新建标准用户时,为部署的软件(如前述Tomcat服务器)新建标准用户。需要说明的是,实际应用中每个软件可能需要划分不同权限的用户以对用户进行管理,所以本实施例的软件部署方案根据用户的需求,当用户需要为部署的软件新建标准用户时,在客户端的配置模板中本文档来自技高网...

【技术保护点】
1.一种软件部署方法,其特征在于,应用于云平台上运行的服务器,该方法包括:接收客户端发送的包含部署配置信息的部署方案;根据接收的所述部署方案,确定出云平台上的部署节点并获取部署所需的软件文件;执行所述部署方案,将所述软件文件安装到所述部署节点上。

【技术特征摘要】
1.一种软件部署方法,其特征在于,应用于云平台上运行的服务器,该方法包括:接收客户端发送的包含部署配置信息的部署方案;根据接收的所述部署方案,确定出云平台上的部署节点并获取部署所需的软件文件;执行所述部署方案,将所述软件文件安装到所述部署节点上。2.根据权利要求1所述的方法,其特征在于,该方法还包括:接收客户端发送的WebSocket连接建立请求,返回WebSocket响应至所述客户端;接收所述客户端在WebSocket连接建立后实时发送的部署进度获取请求,返回相应的部署日志至所述客户端。3.根据权利要求1或2所述的方法,其特征在于,所述执行所述部署方案,将所述软件文件安装到所述部署节点上包括:在将所述软件文件安装到所述部署节点上之前,安装或替换部署节点的操作系统;根据获取的部署所需的软件文件判断所述部署节点的存储器大小,当确定出所述存储器大小大于或等于所述软件文件的大小时,将所述软件文件安装到所述部署节点上;判断所述部署节点上是否正在执行与当前部署操作相冲突的操作,是则,暂停与当前部署操作相冲突的操作后将所述软件文件安装到所述部署节点上;根据所述部署方案中用户项的值,确定是否新建标准用户,当用户项的值指示新建标准用户时,为软件新建标准用户。4.根据权利要求1所述的方法,其特征在于,该方法还包括:接收客户端在部署完成后发送的部署节点状态查看请求,将采集的部署节点的运行状态信息返回至所述客户端;以及,接收客户端在部署完成后发送的一个或多个部署节点的重启或关闭请求,根据所述请求重启或关闭相应的一个或多个部署节点。5.根据权利要求1所述的方法,其特征在于,该方法还包括:在接收客户端发送的包含部署配置信息的部署方案之前,接收客户端发送的配置模板获取请求,返回配置模板至所述客户端,使得所述客户端将配置模板显示输出给用户,接收用户在所述配置模板中填写的部署配置信息;以及,收集部署过程中的部署日志,根据对所述部署日志的分析结果,将检测出的配置信息错误发送至客户端,使得所述客户端输...

【专利技术属性】
技术研发人员:王庆磊高晖
申请(专利权)人:北京神州泰岳软件股份有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1