一种自动部署方法、装置及设备与流程

文档序号:23718181发布日期:2021-01-24 06:28阅读:71来源:国知局
一种自动部署方法、装置及设备与流程

[0001]
本申请涉及计算机技术领域,具体而言,涉及一种自动部署方法、装置及设备。


背景技术:

[0002]
云计算技术正在成为提高互联网服务能力的重要支撑,在整个云平台的使用周期中,部署环节是不可或缺的重要一部分,部署过程的优劣甚至会直接影响到云平台运行的性能与效率。随着云平台计算体系的不断扩展,对资源的需求随之增加,接入的服务器逐渐增多,管理人员需要耗费大量时间和精力进行系统安装和环境配置等工作,在这个过程中,存在较多重复操作,工作灵活性差且难以对操作行为进行有效监管。另外,在云平台节点服务器端的软件安装工作也主要依靠人工操作完成,由于支撑业务所需的软件种类众多,人工部署和安装的效率低下。


技术实现要素:

[0003]
本申请实施例的目的在于提供一种自动部署方法、装置及设备,用以实现自动化部署,提高部署效率,节约部署时间。
[0004]
本申请实施例第一方面提供了一种自动部署方法,包括:获取至少一个第一节点服务器待部署的目标系统的部署规范信息;根据所述部署规范信息,在所述第一节点服务器上安装所述目标系统;判断所述目标系统是否安装成功;当所述目标系统安装成功时,配置系统环境,安装显卡驱动以及代理软件;更新所述第一节点服务器的设备信息。
[0005]
于一实施例中,还包括:获取至少一个第二节点服务器待安装的目标软件的安装模板信息;判断所述第二节点服务器的系统版本是否与所述目标软件匹配;若所述第二节点服务器的系统版本与所述目标软件匹配,则获取所述第二节点服务器的桌面类型信息;根据所述桌面类型信息和所述安装模板信息,安装所述目标软件;若所述第二节点服务器的系统版本与所述目标软件不匹配,则获取所述第二节点服务器的授权信息;根据所述授权信息和所述安装模板信息,安装所述目标软件。
[0006]
于一实施例中,所述根据所述桌面类型信息和所述安装模板信息,安装所述目标软件,包括:根据所述桌面类型信息,判断所述第二节点服务器是否安装有桌面类型软件;当所述第二节点服务器安装有桌面类型软件时,判断所述桌面类型软件是否与所述目标软件匹配;当所述桌面类型软件与所述目标软件匹配时,根据所述安装模板信息,安装所述目标软件。
[0007]
于一实施例中,所述根据所述桌面类型信息和所述安装模板信息,安装所述目标软件,还包括:当所述第二节点服务器未安装桌面类型软件时,安装对应于所述目标软件的目标桌面类型软件;根据所述安装模板信息,安装所述目标软件。
[0008]
于一实施例中,所述根据所述授权信息和所述安装模板信息,安装所述目标软件,包括:根据所述授权信息,判断所述第二节点服务器是否处于授权状态;当所述第二节点服务器不处于授权状态时,重新安装与所述目标软件匹配的第一系统;根据所述安装模板信
息,安装所述目标软件。
[0009]
于一实施例中,所述根据所述部署规范信息,在所述第一节点服务器上安装所述目标系统,包括:根据所述部署规范信息,进行pxe配置;发送启动指令至所述第一节点服务器,所述启动指令用于使所述第一节点服务器开机;在所述第一节点服务器上安装所述目标系统。
[0010]
于一实施例中,所述判断所述目标系统是否安装成功,包括:判断是否在预设时间段内接收到来自所述第一节点服务器的交互信息;若在预设时间段内接收到来自所述第一节点服务器的交互信息,则所述目标系统安装成功;若在预设时间段内未接收到来自所述第一节点服务器的交互信息,则所述目标系统安装失败。
[0011]
本申请实施例第二方面提供了一种自动部署装置,包括:第一获取模块,用于获取至少一个第一节点服务器待部署的目标系统的部署规范信息;第一安装模块,用于根据所述部署规范信息,在所述第一节点服务器上安装所述目标系统;第一判断模块,用于判断所述目标系统是否安装成功;第二安装模块,用于当所述目标系统安装成功时,配置系统环境,安装显卡驱动以及代理软件;更新模块,用于更新所述第一节点服务器的设备信息。
[0012]
于一实施例中,还包括:第二获取模块,用于获取至少一个第二节点服务器待安装的目标软件的安装模板信息;第二判断模块,用于判断所述第二节点服务器的系统版本是否与所述目标软件匹配;第三获取模块,用于当所述第二节点服务器的系统版本与所述目标软件匹配时,获取所述第二节点服务器的桌面类型信息;第三安装模块,用于根据所述桌面类型信息和所述安装模板信息,安装所述目标软件;第四获取模块,用于当所述第二节点服务器的系统版本与所述目标软件不匹配时,获取所述第二节点服务器的授权信息;第四安装模块,用于根据所述授权信息和所述安装模板信息,安装所述目标软件。
[0013]
本申请实施例第三方面提供了一种电子设备,包括:存储器,用以存储计算机程序;处理器,用以执行本申请实施例第一方面及其任一实施例的方法。
附图说明
[0014]
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
[0015]
图1为本申请一实施例的自动部署方法的应用场景示意图;
[0016]
图2为本申请一实施例的电子设备的结构示意图;
[0017]
图3为本申请一实施例的自动部署方法的流程示意图;
[0018]
图4为本申请另一实施例的自动部署方法的流程示意图;
[0019]
图5为本申请一实施例中步骤440的子步骤的流程示意图;
[0020]
图6为本申请一实施例中步骤460的子步骤的流程示意图;
[0021]
图7为本申请一实施例的自动部署装置的结构示意图;
[0022]
图8为本申请另一实施例的自动部署装置的结构示意图。
[0023]
附图标记:
[0024]
110-云服务器,120-节点服务器,200-电子设备,210-总线,220-处理器,230-存储
器,500-自动部署装置,501-第一获取模块,502-第一安装模块,503-第一判断模块,504-第二安装模块,505-更新模块,506-第二获取模块,507-第二判断模块,508-第三获取模块,509-第三安装模块,510-第四获取模块,511-第四安装模块。
具体实施方式
[0025]
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
[0026]
在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,并不表示排列序号,也不能理解为指示或暗示相对重要性。
[0027]
在本申请的描述中,除非另有明确的规定和限定,术语“安装”、“设置”、“设有”、“连接”、“配置为”应做广义理解。例如,可以是固定连接,也可以是可拆卸连接,或整体式构造;可以是机械连接,也可以是电连接;可以是直接相连,也可以是通过中间媒介间接相连,又或者是两个装置、元件或组成部分之间内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本申请中的具体含义。
[0028]
请参看图1,其为本申请一实施例的自动部署方法的应用场景示意图,该应用场景包括:云服务器110和至少一个节点服务器120,图1中以三个节点服务器为例。云服务器110与节点服务器120通过网络连接,云服务器110用于执行如下实施例中的自动部署方法,在未安装操作系统的节点服务器120上安装系统,以及在已经安装操作系统的节点服务器120上进行软件安装,并对节点服务器120的状态信息等进行统一管理。
[0029]
如图2所示,其为本申请一实施例的电子设备200的结构示意图,包括至少一个处理器220和存储器230,图2中以一个处理器为例。处理器220和存储器230通过总线210连接,存储器230存储有可被至少一个处理器220执行的指令,指令被至少一个处理器220执行,以使至少一个处理器220执行如下述实施例中的自动部署方法。
[0030]
如图3所示,其为本申请一实施例的自动部署方法的流程示意图,该方法可由图2所示的电子设备200来执行,以实现操作系统的自动化部署,提高部署效率。该方法包括如下步骤:
[0031]
步骤310:获取至少一个第一节点服务器待部署的目标系统的部署规范信息。
[0032]
在上述步骤中,第一节点服务器为需要部署系统的节点服务器,第一节点服务器的数量可以是一个或多个,当第一节点服务器的数量为多个时,所有第一节点服务器待部署的目标系统必须是相同的。数据库中预存有多个部署规范信息,每个部署规范信息中包括但不限于系统类型、系统镜像、系统安装ks(kickstart,快速定制安装)模板、系统环境配置脚本和显卡驱动等内容,每个部署规范信息对应于一种操作系统。
[0033]
于一实施例中,可以根据接收到的部署任务,获取至少一个第一节点服务器待部署的目标系统的部署规范信息,该部署任务中包括第一节点服务器的设备信息和目标系统的版本信息,设备信息包括但不限于主机名、ip、mac地址、主机类型、cpu信号、显卡信号、设备管理员信息等。部署任务可以由管理员在交互界面输入。
[0034]
步骤320:根据部署规范信息,在第一节点服务器上安装目标系统。
[0035]
在上述步骤中,根据部署规范信息,进行pxe(preboot execution environment,预启动执行环境)配置;发送启动指令至第一节点服务器,启动指令用于使第一节点服务器开机;在第一节点服务器上安装目标系统。
[0036]
于一实施例中,pxe配置包括dns(domain name system,域名系统)、dhcp(dynamic host configuration protocol,动态主机配置协议)、tftp(trivial file transfer protocol,简单文件传输协议)和http(hypertext transfer protocol,超文本传输协议)等服务配置,其中,dns用于分配主机名,dhcp用于分配ip地址,定位引导程序,tftp用于提供引导程序和内核文件下载路径,http用于提供内核文件。
[0037]
步骤330:判断目标系统是否安装成功。
[0038]
在上述步骤中,判断目标系统是否安装成功,若目标系统安装成功,则执行步骤340,若目标系统安装失败,则执行步骤360。
[0039]
于一实施例中,判断目标系统是否安装成功可以包括:判断是否在预设时间段内接收到来自第一节点服务器的交互信息;若在预设时间段内接收到来自第一节点服务器的交互信息,则目标系统安装成功;若在预设时间段内未接收到来自第一节点服务器的交互信息,则目标系统安装失败。
[0040]
步骤340:配置系统环境,安装显卡驱动以及代理软件。
[0041]
在上述步骤中,可以通过mount将部署规范信息中的系统环境配置脚本和显卡驱动挂载到节点服务器,执行系统环境的配置和显卡驱动的安装,同时安装代理软件,于一实施例中,该代理软件为csa(cloud service agent,云服务代理)。
[0042]
于一实施例中,配置系统环境,安装显卡驱动以及安装代理软件可以同时执行也可以依次执行。
[0043]
于一实施例中,可以根据是否在预设时间内接收到对应的交互信息,判断系统环境是否配置成功,若系统环境配置失败,则发送系统环境配置失败提示。若系统环境配置成功,则判断显卡驱动是否安装成功,若显卡驱动安装失败,则发送显卡驱动安装失败提示。若显卡驱动安装成功,则判断代理软件是否安装成功,若代理软件安装失败,则发送代理软件安装失败提示,若代理软件安装成功,则执行步骤350。
[0044]
步骤350:更新第一节点服务器的设备信息。
[0045]
在上述步骤中,更新第一节点服务器的设备信息包括在设备信息中新增安装成功的目标系统的信息,以及将系统安装状态从部署中修改为已完成。于一实施例中,更新第一节点服务器的设备信息还包括生成系统安装记录,该系统安装记录中包括但不限于开始时间、完成时间等。
[0046]
步骤360:发送系统安装失败提示。
[0047]
在上述步骤中,当目标系统安装失败时,发送系统安装失败提示,并将系统安装从部署中状态修改为已失败。
[0048]
于一实施例中,发送系统安装失败提示之后,可以根据接收到的管理员输入指令,重新执行步骤310,并将系统安装状态从已失败修改为部署中。
[0049]
如图4所示,其为本申请一实施例的自动部署方法的流程示意图,该方法可由图2所示的电子设备200来执行,以实现软件的自动化部署,提高部署效率。该方法包括如下步骤:
[0050]
步骤410:获取至少一个第二节点服务器待安装的目标软件的安装模板信息。
[0051]
在上述步骤中,第二节点服务器为已经安装有操作系统,需要安装软件的节点服务器,第二节点服务器的数量可以是一个或多个,当第二节点服务器的数量为多个时,所有
第二节点服务器的目标软件必须是相同的。数据库中预存有多个安装模板信息,每个安装模板信息对应于一种软件,安装模板信息中包括但不限于软件名称、系统需下载的安装包、域信息、桌面控制许可信息、环境类型等。
[0052]
步骤420:判断第二节点服务器的系统版本是否与目标软件匹配。
[0053]
在上述步骤中,判断第二节点服务器的系统版本是否与目标软件匹配,若第二节点服务器的系统版本与目标软件匹配,则执行步骤430,若第二节点服务器的系统版本与目标软件不匹配,则执行步骤450。
[0054]
步骤430:获取第二节点服务器的桌面类型信息。
[0055]
在上述步骤中,获取第二节点服务器的桌面类型信息,该桌面类型信息是指第二节点服务器上用于进行远程控制的相关信息。
[0056]
步骤440:根据桌面类型信息和安装模板信息,安装目标软件。
[0057]
在上述步骤中,目标软件的安装需要先确定第二节点服务器上有与该目标软件匹配的目标桌面类型软件,然后才能按照安装模板信息,安装目标软件。
[0058]
步骤450:获取第二节点服务器的授权信息。
[0059]
在上述步骤中,获取第二节点服务器的授权信息,该授权信息包括授权状态或未授权状态,授权状态是指该第二节点服务器已经授权给客户端,处于正在使用状态,未授权状态是指该第二节点服务器还未授权给客户端,处于闲置状态。
[0060]
步骤460:根据授权信息和安装模板信息,安装目标软件。
[0061]
在上述步骤中,由于第二节点服务器的系统版本与目标软件不匹配,需要重装系统才能继续安装目标软件,而重装系统必然会影响第二节点服务器当前的使用,因此授权状态的第二节点服务器无法进行重装系统等操作,结束安装目标软件的相关流程,未授权状态的第二节点服务器可以进行系统重装,在安装与目标软件匹配的系统后,再根据安装模板信息,安装目标软件。
[0062]
于一实施例中,当第二节点服务器的系统版本与目标软件不匹配时,在执行执行步骤450之前,还可以包括:发送第一提示信息,该第一提示信息用于提示管理员第二节点服务器的系统版本与目标软件不匹配,接收管理员根据第一提示信息输入的第一指令信息,该第一指令信息为继续指令或取消指令,当该第一指令信息为继续指令时,执行步骤450,当该第一指令信息为取消指令时,结束安装目标软件的相关流程。
[0063]
于一实施例中,在安装目标软件之后,可以判断目标软件是否安装成功,若目标软件安装成功,则生成对应的安装成功记录,若目标软件安装失败,则生成安装失败的提示信息,接收管理员根据该提示信息输入的指令类型,重新安装目标软件或结束安装目标软件的相关流程。
[0064]
如图5所示,其为本申请一实施例中步骤440的子步骤的流程示意图,步骤440:根据桌面类型信息和安装模板信息,安装目标软件,可以包括如下步骤:
[0065]
步骤441:根据桌面类型信息,判断第二节点服务器是否安装有桌面类型软件。
[0066]
在上述步骤中,判断第二节点服务器是否安装有桌面类型软件,若第二节点服务器未安装桌面类型软件,则执行步骤445,若第二节点服务器安装有桌面类型软件,则执行步骤442。桌面类型软件包括但不限于vnc、dcv2016、dcv2017等。
[0067]
步骤442:判断桌面类型软件是否与目标软件匹配。
[0068]
在上述步骤中,判断桌面类型软件是否与目标软件匹配,若桌面类型软件与目标软件匹配,则执行步骤446,若桌面类型软件与目标软件不匹配,则执行步骤443。
[0069]
步骤443:获取第二节点服务器的授权信息。
[0070]
步骤444:根据授权信息,判断第二节点服务器是否处于授权状态。
[0071]
在上述步骤中,判断第二节点服务器是否处于授权状态,若第二节点服务器不处于授权状态,则执行步骤445,若第二节点服务器处于授权状态,则结束安装目标软件的相关流程。
[0072]
于一实施例中,当桌面类型软件与目标软件不匹配时,在执行步骤443之前,还可以包括:发送第二提示信息,该第二提示信息用于提示管理员现有桌面类型软件与目标软件不匹配,接收管理员根据第二提示信息输入的第二指令信息,该第二指令信息为继续指令或取消指令,当第二指令信息为继续指令时,执行步骤443,当第二指令信息为取消指令时,结束安装目标软件的相关流程。
[0073]
步骤445:安装对应于目标软件的目标桌面类型软件。
[0074]
步骤446:根据安装模板信息,安装目标软件。
[0075]
如图6所示,其为本申请一实施例中步骤460的子步骤的流程示意图,步骤460:根据授权信息和安装模板信息,安装目标软件,可以包括如下步骤:
[0076]
步骤461:根据授权信息,判断第二节点服务器是否处于授权状态。
[0077]
在上述步骤中,判断第二节点服务器是否处于授权状态,若第二节点服务器不处于授权状态,则执行步骤462。
[0078]
步骤462:重新安装与目标软件匹配的第一系统。
[0079]
在上述步骤中,可以将第一系统作为目标系统,采用如上述实施例中步的系统自动部署方法,在第二节点服务器上重新进行系统安装。
[0080]
步骤463:根据安装模板信息,安装目标软件。
[0081]
如图7所示,其为本申请一实施例的自动部署装置500的结构示意图,该装置可应用于图2所示的电子设备200,包括:第一获取模块501、第一安装模块502、第一判断模块503、第二安装模块504和更新模块505。各个模块的原理关系如下:
[0082]
第一获取模块501,用于获取至少一个第一节点服务器待部署的目标系统的部署规范信息;
[0083]
第一安装模块502,用于根据所述部署规范信息,在所述第一节点服务器上安装所述目标系统;
[0084]
第一判断模块503,用于判断所述目标系统是否安装成功;
[0085]
第二安装模块504,用于当所述目标系统安装成功时,配置系统环境,安装显卡驱动以及代理软件;
[0086]
更新模块505,用于更新所述第一节点服务器的设备信息。
[0087]
于一实施例中,第一安装模块502用于:根据所述部署规范信息,进行pxe配置;发送启动指令至所述第一节点服务器,所述启动指令用于使所述第一节点服务器开机;在所述第一节点服务器上安装所述目标系统。
[0088]
于一实施例中,第一判断模块503用于:判断是否在预设时间段内接收到来自所述第一节点服务器的交互信息;若在预设时间段内接收到来自所述第一节点服务器的交互信
息,则所述目标系统安装成功;若在预设时间段内未接收到来自所述第一节点服务器的交互信息,则所述目标系统安装失败。
[0089]
如图8所示,其为本申请一实施例的自动部署装置500的结构示意图,该装置可应用于图2所示的电子设备200,包括:第一获取模块501、第一安装模块502、第一判断模块503、第二安装模块504、更新模块505、第二获取模块506、第二判断模块507、第三获取模块508、第三安装模块509、第四获取模块510和第四安装模块511。各个模块的原理关系如下:
[0090]
第一获取模块501,用于获取至少一个第一节点服务器待部署的目标系统的部署规范信息;
[0091]
第一安装模块502,用于根据所述部署规范信息,在所述第一节点服务器上安装所述目标系统;
[0092]
第一判断模块503,用于判断所述目标系统是否安装成功;
[0093]
第二安装模块504,用于当所述目标系统安装成功时,配置系统环境,安装显卡驱动以及代理软件;
[0094]
更新模块505,用于更新所述第一节点服务器的设备信息。
[0095]
第二获取模块506,用于获取至少一个第二节点服务器待安装的目标软件的安装模板信息;
[0096]
第二判断模块507,用于判断所述第二节点服务器的系统版本是否与所述目标软件匹配;
[0097]
第三获取模块508,用于若所述第二节点服务器的系统版本与所述目标软件匹配,则获取所述第二节点服务器的桌面类型信息;
[0098]
第三安装模块509,用于根据所述桌面类型信息和所述安装模板信息,安装所述目标软件;
[0099]
第四获取模块510,用于若所述第二节点服务器的系统版本与所述目标软件不匹配,则获取所述第二节点服务器的授权信息;
[0100]
第四安装模块511,用于根据所述授权信息和所述安装模板信息,安装所述目标软件。
[0101]
于一实施例中,第三安装模块509用于:根据所述桌面类型信息,判断所述第二节点服务器是否安装有桌面类型软件;当所述第二节点服务器安装有桌面类型软件时,判断所述桌面类型软件是否与所述目标软件匹配;当所述桌面类型软件与所述目标软件匹配时,根据所述安装模板信息,安装所述目标软件。
[0102]
于一实施例中,第三安装模块509还用于:当所述第二节点服务器未安装桌面类型软件时,安装对应于所述目标软件的目标桌面类型软件;根据所述安装模板信息,安装所述目标软件。
[0103]
于一实施例中,第四安装模块511用于:根据所述授权信息,判断所述第二节点服务器是否处于授权状态;当所述第二节点服务器不处于授权状态时,重新安装与所述目标软件匹配的第一系统;根据所述安装模板信息,安装所述目标软件。
[0104]
上述自动部署装置500的详细描述,请参见上述实施例中相关方法步骤的描述。
[0105]
本发明实施例还提供了一种电子设备可读存储介质,包括:程序,当其在电子设备上运行时,使得电子设备可执行上述实施例中方法的全部或部分流程。其中,存储介质可为
磁盘、光盘、只读存储记忆体(read-only memory,rom)、随机存储记忆体(random access memory,ram)、快闪存储器(flash memory)、硬盘(hard disk drive,缩写:hdd)或固态硬盘(solid-state drive,ssd)等。存储介质还可以包括上述种类的存储器的组合。
[0106]
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。以上仅为本申请的优选实施例而已,仅用于说明本申请的技术方案,并不用于限制本申请。对于本技术领域的普通技术人员而言,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1