CN110990127A - 虚拟机自动部署方法、装置、设备及存储介质 - Google Patents

虚拟机自动部署方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN110990127A
CN110990127A CN201911344587.7A CN201911344587A CN110990127A CN 110990127 A CN110990127 A CN 110990127A CN 201911344587 A CN201911344587 A CN 201911344587A CN 110990127 A CN110990127 A CN 110990127A
Authority
CN
China
Prior art keywords
virtual machine
target
task
target virtual
automatic deployment
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
CN201911344587.7A
Other languages
English (en)
Other versions
CN110990127B (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.)
Sangfor Technologies Co Ltd
Original Assignee
Sangfor 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 Sangfor Technologies Co Ltd filed Critical Sangfor Technologies Co Ltd
Priority to CN201911344587.7A priority Critical patent/CN110990127B/zh
Publication of CN110990127A publication Critical patent/CN110990127A/zh
Application granted granted Critical
Publication of CN110990127B publication Critical patent/CN110990127B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/45562Creating, deleting, cloning virtual machine instances
    • 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/45575Starting, stopping, suspending or resuming virtual machine instances
    • 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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

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

虚拟机自动部署方法、装置、设备及存储介质
技术领域
本发明涉及虚拟机管理技术领域,尤其涉及虚拟机自动部署方法、装置、设备及存储介质。
背景技术
目前,常用的手段是根据Zabbix的管理功能来进行业务编排,从而对虚拟机进行管理,但是Zabbix操作复杂,创建任务、部署虚拟机工作繁重,而且对资源要求比较高,虚拟化优势不友好,从而对操作人员技术水平的要求很高,一般的运维人员完成虚拟机部署等功能需要耗费较多时间。
所以,本质上存在着如何提高虚拟机部署效率的技术问题。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提出一种虚拟机自动部署方法、装置、设备及存储介质,旨在解决如何提高虚拟机部署效率的技术问题。
为实现上述目的,本发明提供一种虚拟机自动部署方法,所述虚拟机自动部署方法包括以下步骤:
接收预设集中管理平台下发的任务计划信号,并根据所述任务计划信号下载虚拟机任务包;
从所述虚拟机任务包中提取虚拟机模板,并根据所述虚拟机模板创建目标虚拟机;
判断所述目标虚拟机是否为虚拟网络设备;
若所述目标虚拟机为所述虚拟网络设备,则对所述目标虚拟机进行自动部署。
优选地,所述从所述虚拟机任务包中提取虚拟机模板,并根据所述虚拟机模板创建目标虚拟机,具体包括:
从所述虚拟机任务包中提取虚拟机模板和虚拟机序列号;
获取所述虚拟机模板对应的当前虚拟机格式;
判断所述当前虚拟机格式是否为预设格式;
若所述当前虚拟机格式为所述预设格式,则根据所述虚拟机模板和所述虚拟机序列号创建目标虚拟机。
优选地,所述根据所述虚拟机模板和所述虚拟机序列号创建目标虚拟机,具体包括:
根据所述虚拟机模板创建待验证虚拟机;
根据所述虚拟机序列号对所述待验证虚拟机进行设备验证,获得待处理虚拟机;
为所述待处理虚拟机添加网络授权,将添加网络授权后的待处理虚拟机作为目标虚拟机。
优选地,所述若所述目标虚拟机为所述虚拟网络设备,则对所述目标虚拟机进行自动部署,具体包括:
若所述目标虚拟机为所述虚拟网络设备,则生成自动部署询问指令,由用户基于所述自动部署询问指令输入自动部署指令;
接收所述自动部署指令,并根据所述自动部署指令生成信息获取指令;
根据所述信息获取指令对所述目标虚拟机进行自动部署。
优选地,所述根据所述信息获取指令对所述目标虚拟机进行自动部署,具体包括:
根据所述信息获取指令获取所述目标虚拟机的当前设备信息和当前配置信息;
检测所述当前设备信息和所述当前配置信息是否满足预设条件;
若所述当前设备信息和所述当前配置信息满足所述预设条件,则启动所述目标虚拟机;
对所述目标虚拟机进行参数设置和初始化向导,并获取所述目标虚拟机的当前状态信息;
根据所述当前状态信息对所述目标虚拟机进行自动部署。
优选地,所述根据所述当前状态信息对所述目标虚拟机进行自动部署,具体包括:
根据所述当前状态信息生成当前虚拟机场景;
将所述当前虚拟机场景与预设白名单场景进行比较;
根据比较结果判断所述当前虚拟机场景与所述预设白名单场景是否相同;
若所述当前虚拟机场景与所述预设白名单场景相同,则将所述目标虚拟机接入网络拓扑,以完成对所述目标虚拟机的自动部署。
优选地,所述接收预设集中管理平台下发的任务计划信号,并根据所述任务计划信号下载虚拟机任务包,具体包括:
接收预设集中管理平台下发的任务计划信号;
从所述任务计划信号中提取任务下载指令;
根据所述任务下载指令从所述预设集中管理平台下载虚拟机任务包。
此外,为实现上述目的,本发明还提出一种虚拟机自动部署装置,所述虚拟机自动部署装置包括:
任务下载模块,用于接收预设集中管理平台下发的任务计划信号,并根据所述任务计划信号下载虚拟机任务包;
目标创建模块,用于从所述虚拟机任务包中提取虚拟机模板,并根据所述虚拟机模板创建目标虚拟机;
设备判断模块,用于判断所述目标虚拟机是否为虚拟网络设备;
自动部署模块,用于若所述目标虚拟机为所述虚拟网络设备,则对所述目标虚拟机进行自动部署。
此外,为实现上述目的,本发明还提出一种虚拟机自动部署设备,所述虚拟机自动部署设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的虚拟机自动部署程序,所述虚拟机自动部署程序配置有实现如上所述的虚拟机自动部署方法的步骤。
此外,为实现上述目的,本发明还提出一种存储介质,所述存储介质上存储有虚拟机自动部署程序,所述虚拟机自动部署程序被处理器执行时实现如上文所述的虚拟机自动部署方法的步骤。
本发明提出的虚拟机自动部署方法,通过接收预设集中管理平台下发的任务计划信号,并根据所述任务计划信号下载虚拟机任务包;从所述虚拟机任务包中提取虚拟机模板,并根据所述虚拟机模板创建目标虚拟机;判断所述目标虚拟机是否为虚拟网络设备;若所述目标虚拟机为所述虚拟网络设备,则对所述目标虚拟机进行自动部署,从而根据任务计划信号获得虚拟机模板并创建目标虚拟机,在目标虚拟机为虚拟网络设备时,对目标虚拟机进行自动部署,解决了如何提高虚拟机部署效率的技术问题。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的虚拟机自动部署设备结构示意图;
图2为本发明虚拟机自动部署方法一实施例的流程示意图;
图3为本发明虚拟机自动部署方法另一实施例的流程示意图;
图4为本发明虚拟机自动部署方法再一实施例的流程示意图;
图5为本发明虚拟机自动部署装置一实施例的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参照图1,图1为本发明实施例方案涉及的硬件运行环境的虚拟机自动部署设备结构示意图。
如图1所示,该虚拟机自动部署设备可以包括:处理器1001,例如中央处理器(Central Processing Unit,CPU),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如按键,可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速随机存取存储器(Random Access Memory,RAM)存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的设备结构并不构成对虚拟机自动部署设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及虚拟机自动部署程序。
在图1所示的虚拟机自动部署设备中,网络接口1004主要用于连接外网,与其他网络设备进行数据通信;用户接口1003主要用于连接用户设备,与所述用户设备进行数据通信;本发明设备通过处理器1001调用存储器1005中存储的虚拟机自动部署程序,并执行本发明实施例提供的虚拟机自动部署方法。
基于上述硬件结构,提出本发明虚拟机自动部署方法实施例。
参照图2,图2为本发明虚拟机自动部署方法一实施例的流程示意图。
在图2实施例中,所述虚拟机自动部署方法包括以下步骤:
步骤S10,接收预设集中管理平台下发的任务计划信号,并根据所述任务计划信号下载虚拟机任务包。
需要说明的是,本实施例的执行主体可为虚拟机自动部署设备,所述虚拟机自动部署设备可为分支一体机设备,还可为可实现相同或相似功能的设备,本实施例对此不作限制,在本实施例中,以分支一体机设备为例进行说明。
应当理解的是,所述任务计划信号为操作人员从集中管理平台下发的,操作人员只需要通过在浏览器创建计划,便可在集中管理平台设置下发任务计划信号,就可自动实现创建、导入、部署虚拟机等操作,不需要再进行人工操控。
可以理解的是,设置下发任务计划信号首先需要在浏览器创建计划,请求模板和对应的设备数据,在计划创建完毕后保存计划信息并将计划信息发送至集中管理平台,由集中管理平台根据计划信息生成任务计划信号发送给分支一体机设备,应当理解的是,在计划创建完毕后,操作人员可对计划进行调整更新,此时集中管理平台根据更新后的计划生成新的任务计划信号,并发送给分支一体机。
在具体实现中,对于浏览器,创建计划流程为,浏览器将请求创建业务编排计划通知到CGI,CGI请求数据库查询模板和设备信息,数据库将查询到的结果返回给浏览器,浏览器请求完成计划创建,与此同时CGI将保存数据同时通知后台启用计划;操作计划流程为,浏览器请求操作计划(启用、禁用、编辑、结束),CGI根据相应的操作更新数据库中的计划信息,然后对于(启用、禁用、结束)操作CGI通知后台执行对应的操作;更新计划执行情况流程为,浏览器请求更新数据CGI从数据库中查询对应计划的信息然后将结果返回浏览器。
在具体实现中,对于集中管理平台,更新计划流程为,浏览器通知集中管理平台启用计划,更新计划子模块从数据库中加载计划,子模块加载到计划后将计划存入计划管理器中;计划同步流程为,分支一体机设备请求计划同步,集中管理平台收到请求后检查并发数,检查通过后遍历计划管理器中的子计划然后规划下发计划;请求下载流程为,分支一体机设备发起请求下载任务,集中管理平台收到请求后检查进行表是否有空位,如果有则加入进行表,没有空位则加入等待队列,并且检查是否在下发时间内,在下发时间内则根据请求决定是断点续传还是下发一个新文件,不在下载时间则返回,在下载过程中如果某个子计划出现中断,集中管理平台将把该计划从进行表中删除,该子计划下次请求重传时需要重新排队;更新进度流程为,如果查询到子计划的状态改变,上报当前子计划的状态信息和进度信息。
步骤S20,从所述虚拟机任务包中提取虚拟机模板,并根据所述虚拟机模板创建目标虚拟机。
可以理解的是,虚拟机任务包中有虚拟机模板、虚拟机序列号等信息,根据这些信息可创建任务计划信号对应的目标虚拟机,并且在创建的过程中会实时上报进度信息给集中管理平台,在创建完成时还会发送创建完成请求信号给集中管理平台。
应当理解的是,如果在创建目标虚拟机的过程中出现创建中断,则生成分支安装进度更新超信号并发送给集中管理平台,若在设定时间内恢复创建,则恢复安装并继续更新进度,若在设定时间内没有恢复创建,则判定为创建时间,重新创建目标虚拟机。
步骤S30,判断所述目标虚拟机是否为虚拟网络设备。
应当理解的是,虚拟机分为多个种类,通过判断虚拟机是否为虚拟网络设备来进行后续的操作,若目标虚拟机为虚拟网络设备,则对目标虚拟机进行自动部署,若目标虚拟机不为虚拟网络设备,则不采取操作,等待进一步地操作指令。
步骤S40,若所述目标虚拟机为所述虚拟网络设备,则对所述目标虚拟机进行自动部署。
可以理解的是,在对目标虚拟机进行自动部署的过程中会实时上报部署进度信息,并且在部署完成时生成部署完成信号,删除本地的虚拟机部署任务,并将部署完成信号发送至集中管理平台,以使所述集中管理平台删除子计划。
本实施例中通过接收预设集中管理平台下发的任务计划信号,并根据所述任务计划信号下载虚拟机任务包;从所述虚拟机任务包中提取虚拟机模板,并根据所述虚拟机模板创建目标虚拟机;判断所述目标虚拟机是否为虚拟网络设备;若所述目标虚拟机为所述虚拟网络设备,则对所述目标虚拟机进行自动部署,从而根据任务计划信号获得虚拟机模板并创建目标虚拟机,在目标虚拟机为虚拟网络设备时,对目标虚拟机进行自动部署,解决了如何提高虚拟机部署效率的技术问题。
参照图3,图3为本发明虚拟机自动部署方法另一实施例的流程示意图,基于上述图2所述的一实施例,提出本发明虚拟机自动部署方法的另一实施例,所述步骤S20,包括:
步骤S201,从所述虚拟机任务包中提取虚拟机模板和虚拟机序列号。
可以理解的是,虚拟机任务包中包含有集中管理平台根据创建的计划获取的对应的虚拟机模板和虚拟机序列号,所述虚拟机模板用于安装目标虚拟机,所述虚拟机序列号用于激活目标虚拟机,从而完成目标虚拟机的创建。
步骤S202,获取所述虚拟机模板对应的当前虚拟机格式。
应当理解的是,在创建目标虚拟机之前,需要检查剩余空间是否充足,然后检查虚拟机模板对应的虚拟机是否已经存在,在该虚拟机已经存在时,取消创建虚拟机,在该虚拟机不存在时,获取虚拟机模板对应的当前虚拟机格式。
需要说明的是,可从虚拟机模板中提取虚拟机镜像文件,虚拟机镜像文件用于虚拟机的安装,虚拟机模板中除了虚拟机镜像文件外,还可包含虚拟机安装信息等其他信息,本实施例对此不作限制。
需要说明的是,虚拟机格式为虚拟机镜像文件的格式,例如,虚拟机格式可为raw、cow、vmdk、vdi、vma等格式,这些都是比较常用的虚拟机镜像文件格式,也可为其他虚拟机镜像文件格式,本实施对比不作限制,所述当前虚拟机格式为从所述虚拟机模板中提取出的当前虚拟机镜像文件的格式。
步骤S203,判断所述当前虚拟机格式是否为预设格式。
可以理解的是,由于虚拟机存在多种格式,而分支一体机设备支持的虚拟机格式有限,可能存在不兼容的问题,如果强行安装不合适的虚拟机,可能会造成系统崩溃或者卡死等问题,因此,需要将虚拟机模板对应的当前虚拟机格式与预设格式进行比较,判断当前虚拟机格式是否为预设格式,所述预设格式为预先设置的分支一体机设备支持的虚拟机格式。
在具体实现中,例如,可预先设置预设格式为vma格式,将获取到的当前虚拟机格式与预设格式进行比较,判断当前虚拟机格式是否为预设格式,例如,在当前虚拟机格式为cow格式时,即当前虚拟机格式与预设格式并不相同,则停止目标虚拟机的创建,在当前虚拟机格式为vma格式时,即当前虚拟机格式与预设格式相同,则继续目标虚拟机的创建步骤,预设格式也可设置为其他虚拟机镜像文件格式,本实施例对此不作限制,在本实施例中,以预设格式为vma格式为例进行说明。
步骤S204,若所述当前虚拟机格式为所述预设格式,则根据所述虚拟机模板和所述虚拟机序列号创建目标虚拟机。
应当理解的是,若当前虚拟机格式为预设格式,则说明在分支一体机设备上根据虚拟机模板创建目标虚拟机是安全的,不会造成安全风险以及带来不必要的麻烦。
进一步地,所述根据所述虚拟机模板和所述虚拟机序列号创建目标虚拟机,包括:
根据所述虚拟机模板创建待验证虚拟机;根据所述虚拟机序列号对所述待验证虚拟机进行设备验证,获得待处理虚拟机;为所述待处理虚拟机添加网络授权,将添加网络授权后的待处理虚拟机作为目标虚拟机。
可以理解的是,根据虚拟机模板可创建待验证虚拟机,所述待验证虚拟机未未激活的虚拟机,未激活的虚拟机会影响正常使用,因此需进一步对其进行激活操作。
应当理解的是,根据从虚拟机任务包中提取的虚拟机序列号对待验证虚拟机进行设备验证,获得激活后的待处理虚拟机,然后为待处理虚拟机添加网络授权,将添加网络授权后的待处理虚拟机作为目标虚拟机,添加网络授权的授权项有:授权带宽、核心数、授权资源等。
进一步地,所述步骤S10,包括:
接收预设集中管理平台下发的任务计划信号;从所述任务计划信号中提取任务下载指令;根据所述任务下载指令从所述预设集中管理平台下载虚拟机任务包。
可以理解的是,接收预设集中管理平台下发的任务计划信号,根据任务计划信号可确定目标任务计划,在目标任务计划为自动部署虚拟机时,从任务计划信号中提取任务下载指令,所述任务下载指令中包含有下载目标以及下载链接地址,因此,根据任务下载指令可从预设集中管理平台下载任务计划信号对应的虚拟机任务包。
本实施例中通过从所述虚拟机任务包中提取虚拟机模板和虚拟机序列号,获取所述虚拟机模板对应的当前虚拟机格式,判断所述当前虚拟机格式是否为预设格式,若所述当前虚拟机格式为所述预设格式,则根据所述虚拟机模板和所述虚拟机序列号创建目标虚拟机,从而对虚拟机模板对应的当前虚拟机格式进行检测,在格式符合时再进行创建目标虚拟机的步骤,提高了创建虚拟机的成功率及安全性,也进一步地提升了创建虚拟机的效率。
参照图4,图4为本发明虚拟机自动部署方法再一实施例的流程示意图,基于上述图2或图3提出本发明虚拟机自动部署方法的再一实施例,在本实施例中,基于图2实施例进行说明,所述步骤S40,包括:
步骤S401,若所述目标虚拟机为所述虚拟网络设备,则生成自动部署询问指令,由用户基于所述自动部署询问指令输入自动部署指令。
可以理解的是,若目标虚拟机为虚拟机网络设备,则可对目标虚拟机进行自动部署,此时,生成自动部署询问指令,并将其展示给用户,由用户决定是否对目标虚拟机进行自动部署,在用户确定对目标虚拟机进行自动部署时,基于自动部署询问指令输入自动部署指令,所述自动部署指令可为按键指令,也可为代码指令,还可为其他形式的指令,本实施例对此不作限制。
步骤S402,接收所述自动部署指令,并根据所述自动部署指令生成信息获取指令。
应当理解的是,接收用户输入的自动部署指令,根据自动部署指令确定需要对目标虚拟机进行自动部署,因此,根据自动部署指令生成信息获取指令,所述信息获取指令用于获取目标虚拟机的当前信息。
步骤S403,根据所述信息获取指令对所述目标虚拟机进行自动部署。
进一步地,所述步骤S403,包括:
根据所述信息获取指令获取所述目标虚拟机的当前设备信息和当前配置信息;检测所述当前设备信息和所述当前配置信息是否满足预设条件;若所述当前设备信息和所述当前配置信息满足所述预设条件,则启动所述目标虚拟机;对所述目标虚拟机进行参数设置和初始化向导,并获取所述目标虚拟机的当前状态信息;根据所述当前状态信息对所述目标虚拟机进行自动部署。
可以理解的是,当前设备信息可为虚拟机是否创建正常等信息,当前设置信息可为虚拟机的配置信息,预设条件为预先设置的自动部署条件,例如,当前仅存在一个虚拟机,虚拟机配置为合法配置等,本实施例对此不作限制。
应当理解的是,若当前设备信息和当前配置信息满足预设条件,则启动目标虚拟机,对目标虚拟机进行参数设置和初始化向导,所述参数设置为进行IP等参数的配置,实现IP自动分配,并进行IP冲突检测,所述初始化向导为设置全局排除IP、设置网络、设置LAN口IP等,获取参数设置和初始化向导完成后的目标虚拟机的当前状态信息,根据当前状态信息对目标虚拟机进行自动部署。
进一步地,所述根据所述当前状态信息对所述目标虚拟机进行自动部署,包括:
根据所述当前状态信息生成当前虚拟机场景;将所述当前虚拟机场景与预设白名单场景进行比较;根据比较结果判断所述当前虚拟机场景与所述预设白名单场景是否相同;若所述当前虚拟机场景与所述预设白名单场景相同,则将所述目标虚拟机接入网络拓扑,以完成对所述目标虚拟机的自动部署。
可以理解的是,根据当前状态信息可生成当前虚拟机场景,将当前虚拟机场景与预设白名单场景进行比较来判断是够将目标虚拟机接入网络拓扑,所述预设白名单场景为:当前仅存在1个虚拟机、虚拟机仅以网桥或者网关部署、初始化向导成功、仅有一个LAN口、存在可分配的IP,在当前虚拟机场景与预设白名单场景相同时,将目标虚拟机接入网络拓扑,以完成对目标虚拟机的自动部署。
本实施例中通过若所述目标虚拟机为所述虚拟网络设备,则生成自动部署询问指令,由用户基于所述自动部署询问指令输入自动部署指令,接收所述自动部署指令,并根据所述自动部署指令生成信息获取指令,根据所述信息获取指令对所述目标虚拟机进行自动部署,从而通过用户确认自动部署后生成信息获取指令获取目标虚拟机的信息,再根据这些信息进行自动部署,提高了虚拟机自动部署的成功率。
此外,本发明实施例还提出一种存储介质,所述存储介质上存储有虚拟机自动部署程序,所述虚拟机自动部署程序被处理器执行时实现如上文所述的虚拟机自动部署方法的步骤。
由于本存储介质采用了上述所有实施例的全部技术方案,因此至少具有上述实施例的技术方案所带来的所有有益效果,在此不再一一赘述。
此外,参照图5,本发明实施例还提出一种虚拟机自动部署装置,所述虚拟机自动部署装置包括:
任务下载模块10,用于接收预设集中管理平台下发的任务计划信号,并根据所述任务计划信号下载虚拟机任务包。
应当理解的是,所述任务计划信号为操作人员从集中管理平台下发的,操作人员只需要通过在浏览器创建计划,便可在集中管理平台设置下发任务计划信号,就可自动实现创建、导入、部署虚拟机等操作,不需要再进行人工操控。
可以理解的是,设置下发任务计划信号首先需要在浏览器创建计划,请求模板和对应的设备数据,在计划创建完毕后保存计划信息并将计划信息发送至集中管理平台,由集中管理平台根据计划信息生成任务计划信号发送给分支一体机设备,应当理解的是,在计划创建完毕后,操作人员可对计划进行调整更新,此时集中管理平台根据更新后的计划生成新的任务计划信号,并发送给分支一体机。
在具体实现中,对于浏览器,创建计划流程为,浏览器将请求创建业务编排计划通知到CGI,CGI请求数据库查询模板和设备信息,数据库将查询到的结果返回给浏览器,浏览器请求完成计划创建,与此同时CGI将保存数据同时通知后台启用计划;操作计划流程为,浏览器请求操作计划(启用、禁用、编辑、结束),CGI根据相应的操作更新数据库中的计划信息,然后对于(启用、禁用、结束)操作CGI通知后台执行对应的操作;更新计划执行情况流程为,浏览器请求更新数据CGI从数据库中查询对应计划的信息然后将结果返回浏览器。
在具体实现中,对于集中管理平台,更新计划流程为,浏览器通知集中管理平台启用计划,更新计划子模块从数据库中加载计划,子模块加载到计划后将计划存入计划管理器中;计划同步流程为,分支一体机设备请求计划同步,集中管理平台收到请求后检查并发数,检查通过后遍历计划管理器中的子计划然后规划下发计划;请求下载流程为,分支一体机设备发起请求下载任务,集中管理平台收到请求后检查进行表是否有空位,如果有则加入进行表,没有空位则加入等待队列,并且检查是否在下发时间内,在下发时间内则根据请求决定是断点续传还是下发一个新文件,不在下载时间则返回,在下载过程中如果某个子计划出现中断,集中管理平台将把该计划从进行表中删除,该子计划下次请求重传时需要重新排队;更新进度流程为,如果查询到子计划的状态改变,上报当前子计划的状态信息和进度信息。
目标创建模块20,用于从所述虚拟机任务包中提取虚拟机模板,并根据所述虚拟机模板创建目标虚拟机。
可以理解的是,虚拟机任务包中有虚拟机模板、虚拟机序列号等信息,根据这些信息可创建任务计划信号对应的目标虚拟机,并且在创建的过程中会实时上报进度信息给集中管理平台,在创建完成时还会发送创建完成请求信号给集中管理平台。
应当理解的是,如果在创建目标虚拟机的过程中出现创建中断,则生成分支安装进度更新超信号并发送给集中管理平台,若在设定时间内恢复创建,则恢复安装并继续更新进度,若在设定时间内没有恢复创建,则判定为创建时间,重新创建目标虚拟机。
设备判断模块30,用于判断所述目标虚拟机是否为虚拟网络设备。
应当理解的是,虚拟机分为多个种类,通过判断虚拟机是否为虚拟网络设备来进行后续的操作,若目标虚拟机为虚拟网络设备,则对目标虚拟机进行自动部署,若目标虚拟机不为虚拟网络设备,则不采取操作,等待进一步地操作指令。
自动部署模块40,用于若所述目标虚拟机为所述虚拟网络设备,则对所述目标虚拟机进行自动部署。
可以理解的是,在对目标虚拟机进行自动部署的过程中会实时上报部署进度信息,并且在部署完成时生成部署完成信号,删除本地的虚拟机部署任务,并将部署完成信号发送至集中管理平台,以使所述集中管理平台删除子计划。
本实施例中通过接收预设集中管理平台下发的任务计划信号,并根据所述任务计划信号下载虚拟机任务包;从所述虚拟机任务包中提取虚拟机模板,并根据所述虚拟机模板创建目标虚拟机;判断所述目标虚拟机是否为虚拟网络设备;若所述目标虚拟机为所述虚拟网络设备,则对所述目标虚拟机进行自动部署,从而根据任务计划信号获得虚拟机模板并创建目标虚拟机,在目标虚拟机为虚拟网络设备时,对目标虚拟机进行自动部署,解决了如何提高虚拟机部署效率的技术问题。
在一实施例中,所述目标创建模块20,还用于从所述虚拟机任务包中提取虚拟机模板和虚拟机序列号;获取所述虚拟机模板对应的当前虚拟机格式;判断所述当前虚拟机格式是否为预设格式;若所述当前虚拟机格式为所述预设格式,则根据所述虚拟机模板和所述虚拟机序列号创建目标虚拟机。
在一实施例中,所述目标创建模块20,还用于根据所述虚拟机模板创建待验证虚拟机;根据所述虚拟机序列号对所述待验证虚拟机进行设备验证,获得待处理虚拟机;为所述待处理虚拟机添加网络授权,将添加网络授权后的待处理虚拟机作为目标虚拟机。
在一实施例中,所述自动部署模块40,还用于若所述目标虚拟机为所述虚拟网络设备,则生成自动部署询问指令,由用户基于所述自动部署询问指令输入自动部署指令;接收所述自动部署指令,并根据所述自动部署指令生成信息获取指令;根据所述信息获取指令对所述目标虚拟机进行自动部署。
在一实施例中,所述自动部署模块40,还用于根据所述信息获取指令获取所述目标虚拟机的当前设备信息和当前配置信息;检测所述当前设备信息和所述当前配置信息是否满足预设条件;若所述当前设备信息和所述当前配置信息满足所述预设条件,则启动所述目标虚拟机;对所述目标虚拟机进行参数设置和初始化向导,并获取所述目标虚拟机的当前状态信息;根据所述当前状态信息对所述目标虚拟机进行自动部署。
在一实施例中,所述自动部署模块40,还用于根据所述当前状态信息生成当前虚拟机场景;将所述当前虚拟机场景与预设白名单场景进行比较;根据比较结果判断所述当前虚拟机场景与所述预设白名单场景是否相同;若所述当前虚拟机场景与所述预设白名单场景相同,则将所述目标虚拟机接入网络拓扑,以完成对所述目标虚拟机的自动部署。
在一实施例中,所述任务下载模块10,还用于接收预设集中管理平台下发的任务计划信号;从所述任务计划信号中提取任务下载指令;根据所述任务下载指令从所述预设集中管理平台下载虚拟机任务包。
本发明所述虚拟机自动部署装置采用了上述所有实施例的全部技术方案,因此至少具有上述实施例的技术方案所带来的所有有益效果,在此不再一一赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个计算机可读存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台智能虚拟机自动部署设备(可以是手机,计算机,虚拟机自动部署设备,空调器,或者网络虚拟机自动部署设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种虚拟机自动部署方法,其特征在于,所述虚拟机自动部署方法包括以下步骤:
接收预设集中管理平台下发的任务计划信号,并根据所述任务计划信号下载虚拟机任务包;
从所述虚拟机任务包中提取虚拟机模板,并根据所述虚拟机模板创建目标虚拟机;
判断所述目标虚拟机是否为虚拟网络设备;
若所述目标虚拟机为所述虚拟网络设备,则对所述目标虚拟机进行自动部署。
2.如权利要求1所述的虚拟机自动部署方法,其特征在于,所述从所述虚拟机任务包中提取虚拟机模板,并根据所述虚拟机模板创建目标虚拟机,具体包括:
从所述虚拟机任务包中提取虚拟机模板和虚拟机序列号;
获取所述虚拟机模板对应的当前虚拟机格式;
判断所述当前虚拟机格式是否为预设格式;
若所述当前虚拟机格式为所述预设格式,则根据所述虚拟机模板和所述虚拟机序列号创建目标虚拟机。
3.如权利要求2所述的虚拟机自动部署方法,其特征在于,所述根据所述虚拟机模板和所述虚拟机序列号创建目标虚拟机,具体包括:
根据所述虚拟机模板创建待验证虚拟机;
根据所述虚拟机序列号对所述待验证虚拟机进行设备验证,获得待处理虚拟机;
为所述待处理虚拟机添加网络授权,将添加网络授权后的待处理虚拟机作为目标虚拟机。
4.如权利要求1~3中任一项所述的虚拟机自动部署方法,其特征在于,所述若所述目标虚拟机为所述虚拟网络设备,则对所述目标虚拟机进行自动部署,具体包括:
若所述目标虚拟机为所述虚拟网络设备,则生成自动部署询问指令,由用户基于所述自动部署询问指令输入自动部署指令;
接收所述自动部署指令,并根据所述自动部署指令生成信息获取指令;
根据所述信息获取指令对所述目标虚拟机进行自动部署。
5.如权利要求4所述的虚拟机自动部署方法,其特征在于,所述根据所述信息获取指令对所述目标虚拟机进行自动部署,具体包括:
根据所述信息获取指令获取所述目标虚拟机的当前设备信息和当前配置信息;
检测所述当前设备信息和所述当前配置信息是否满足预设条件;
若所述当前设备信息和所述当前配置信息满足所述预设条件,则启动所述目标虚拟机;
对所述目标虚拟机进行参数设置和初始化向导,并获取所述目标虚拟机的当前状态信息;
根据所述当前状态信息对所述目标虚拟机进行自动部署。
6.如权利要求5所述的虚拟机自动部署方法,其特征在于,所述根据所述当前状态信息对所述目标虚拟机进行自动部署,具体包括:
根据所述当前状态信息生成当前虚拟机场景;
将所述当前虚拟机场景与预设白名单场景进行比较;
根据比较结果判断所述当前虚拟机场景与所述预设白名单场景是否相同;
若所述当前虚拟机场景与所述预设白名单场景相同,则将所述目标虚拟机接入网络拓扑,以完成对所述目标虚拟机的自动部署。
7.如权利要求1~3中任一项所述的虚拟机自动部署方法,其特征在于,所述接收预设集中管理平台下发的任务计划信号,并根据所述任务计划信号下载虚拟机任务包,具体包括:
接收预设集中管理平台下发的任务计划信号;
从所述任务计划信号中提取任务下载指令;
根据所述任务下载指令从所述预设集中管理平台下载虚拟机任务包。
8.一种虚拟机自动部署装置,其特征在于,所述虚拟机自动部署装置包括:
任务下载模块,用于接收预设集中管理平台下发的任务计划信号,并根据所述任务计划信号下载虚拟机任务包;
目标创建模块,用于从所述虚拟机任务包中提取虚拟机模板,并根据所述虚拟机模板创建目标虚拟机;
设备判断模块,用于判断所述目标虚拟机是否为虚拟网络设备;
自动部署模块,用于若所述目标虚拟机为所述虚拟网络设备,则对所述目标虚拟机进行自动部署。
9.一种虚拟机自动部署设备,其特征在于,所述虚拟机自动部署设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的虚拟机自动部署程序,所述虚拟机自动部署程序配置有实现如权利要求1至7中任一项所述的虚拟机自动部署方法的步骤。
10.一种存储介质,其特征在于,所述存储介质上存储有虚拟机自动部署程序,所述虚拟机自动部署程序被处理器执行时实现如权利要求1至7中任一项所述的虚拟机自动部署方法的步骤。
CN201911344587.7A 2019-12-23 2019-12-23 虚拟机自动部署方法、装置、设备及存储介质 Active CN110990127B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911344587.7A CN110990127B (zh) 2019-12-23 2019-12-23 虚拟机自动部署方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911344587.7A CN110990127B (zh) 2019-12-23 2019-12-23 虚拟机自动部署方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN110990127A true CN110990127A (zh) 2020-04-10
CN110990127B CN110990127B (zh) 2023-05-12

Family

ID=70076105

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911344587.7A Active CN110990127B (zh) 2019-12-23 2019-12-23 虚拟机自动部署方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN110990127B (zh)

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110154320A1 (en) * 2009-12-18 2011-06-23 Verizon Patent And Licensing, Inc. Automated virtual machine deployment
CN102799464A (zh) * 2012-06-25 2012-11-28 北京奇虎科技有限公司 虚拟机创建方法及系统、虚拟机重装方法及系统
US20130034015A1 (en) * 2011-08-05 2013-02-07 International Business Machines Corporation Automated network configuration in a dynamic virtual environment
WO2016058412A1 (zh) * 2014-10-16 2016-04-21 中兴通讯股份有限公司 一种实现虚拟网络功能部署的方法、装置及存储介质
CN105827464A (zh) * 2016-05-16 2016-08-03 江南大学 可自动化部署的虚拟路由器构建方法
CN107229484A (zh) * 2016-03-23 2017-10-03 中兴通讯股份有限公司 一种虚拟化环境下自动部署应用程序的方法及装置
US9934052B1 (en) * 2013-12-19 2018-04-03 VCE IP Holding Company LLC Large scale virtual application deployment using system provisioning tools
CN108322490A (zh) * 2017-01-17 2018-07-24 阿里巴巴集团控股有限公司 虚拟机配置及部署分布式云服务系统的方法、装置和服务器
CN109391514A (zh) * 2018-10-11 2019-02-26 深信服科技股份有限公司 基于高可用性的设备部署方法、服务器、存储介质及装置
CN110377232A (zh) * 2019-07-19 2019-10-25 苏州浪潮智能科技有限公司 一种部署分布式存储集群的方法、装置及系统

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110154320A1 (en) * 2009-12-18 2011-06-23 Verizon Patent And Licensing, Inc. Automated virtual machine deployment
US20130034015A1 (en) * 2011-08-05 2013-02-07 International Business Machines Corporation Automated network configuration in a dynamic virtual environment
CN102799464A (zh) * 2012-06-25 2012-11-28 北京奇虎科技有限公司 虚拟机创建方法及系统、虚拟机重装方法及系统
US9934052B1 (en) * 2013-12-19 2018-04-03 VCE IP Holding Company LLC Large scale virtual application deployment using system provisioning tools
WO2016058412A1 (zh) * 2014-10-16 2016-04-21 中兴通讯股份有限公司 一种实现虚拟网络功能部署的方法、装置及存储介质
CN107229484A (zh) * 2016-03-23 2017-10-03 中兴通讯股份有限公司 一种虚拟化环境下自动部署应用程序的方法及装置
CN105827464A (zh) * 2016-05-16 2016-08-03 江南大学 可自动化部署的虚拟路由器构建方法
CN108322490A (zh) * 2017-01-17 2018-07-24 阿里巴巴集团控股有限公司 虚拟机配置及部署分布式云服务系统的方法、装置和服务器
CN109391514A (zh) * 2018-10-11 2019-02-26 深信服科技股份有限公司 基于高可用性的设备部署方法、服务器、存储介质及装置
CN110377232A (zh) * 2019-07-19 2019-10-25 苏州浪潮智能科技有限公司 一种部署分布式存储集群的方法、装置及系统

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
GIDEON JUVE等: "Automating Application Deployment in Infrastructure Clouds" *
万林: "快速部署虚拟机的新方法", 《中国教育网络》 *
贾莉静: "网络安全实验平台安全服务自动化部署系统研究与实现" *

Also Published As

Publication number Publication date
CN110990127B (zh) 2023-05-12

Similar Documents

Publication Publication Date Title
US7975289B2 (en) Program, client authentication requesting method, server authentication request processing method, client and server
JP4974749B2 (ja) 情報処理装置、配信方法、その方法を実行する制御プログラム
CN100583114C (zh) 用于远程安全启用的系统和方法
US9052847B2 (en) Image forming apparatus, information processing system, control method, and recording medium in accordance with a control command from a device driver
US10796001B2 (en) Software verification method and apparatus
CN110008690B (zh) 终端应用的权限管理方法、装置、设备和介质
CN107274587B (zh) 空闲洗衣机信息的显示方法及装置、洗衣系统和存储介质
CN104573494A (zh) 一种基于wmi软件白名单机制的移动安全办公方法
CN106775876B (zh) 安卓系统快速启动应用的方法
EP3982254A1 (en) Server, software update system, distribution method, and non-transitory storage medium
CN109213572B (zh) 一种基于虚拟机的可信度确定方法及服务器
CN112804222B (zh) 基于云部署的数据传输方法、装置、设备及存储介质
CN110990127B (zh) 虚拟机自动部署方法、装置、设备及存储介质
CN111045725B (zh) 代码管理系统的控制方法、装置及存储介质
CN112579997A (zh) 一种用户权限配置方法、装置、计算机设备及存储介质
CN110597520A (zh) 服务器及其部署方法、计算机可读存储介质
US20160116901A1 (en) Numerical control device
CN115576626A (zh) 一种usb设备安全挂载和卸载的方法、设备和存储介质
KR101279443B1 (ko) 어플리케이션 기반 업무 관리 시스템 및 방법
US20140237613A1 (en) Distribution apparatus, device, control method for distribution apparatus, and storage medium
CN115344401A (zh) 基于鸿蒙系统的xfs实现方法、装置、设备与可读存储介质
CN111090851B (zh) 虚拟机验证信息的重置方法、装置、宿主机和存储介质
CN110933736B (zh) 车载控制器通讯方法、装置、设备及存储介质
US20020174173A1 (en) Self-downloading network client
CN110505151B (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