CN117591247B - 云环境虚拟机的修复方法、装置及电子设备 - Google Patents
云环境虚拟机的修复方法、装置及电子设备 Download PDFInfo
- Publication number
- CN117591247B CN117591247B CN202410073153.2A CN202410073153A CN117591247B CN 117591247 B CN117591247 B CN 117591247B CN 202410073153 A CN202410073153 A CN 202410073153A CN 117591247 B CN117591247 B CN 117591247B
- Authority
- CN
- China
- Prior art keywords
- target
- virtual machine
- hard disk
- cloud hard
- identifier
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 92
- 238000003860 storage Methods 0.000 claims abstract description 91
- 230000008439 repair process Effects 0.000 claims abstract description 29
- 230000015654 memory Effects 0.000 claims description 25
- 238000004590 computer program Methods 0.000 claims description 23
- 230000006870 function Effects 0.000 claims description 6
- 239000008186 active pharmaceutical agent Substances 0.000 description 17
- 230000008569 process Effects 0.000 description 14
- 238000005516 engineering process Methods 0.000 description 13
- 230000003287 optical effect Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000007726 management method Methods 0.000 description 5
- 239000003795 chemical substances by application Substances 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 241000109539 Conchita Species 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000009897 systematic effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1438—Restarting or rejuvenating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45575—Starting, stopping, suspending or resuming virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例提供了云环境虚拟机的修复方法、装置、电子设备及存储介质,涉及虚拟机技术领域。该方法包括:接收控制台发送的第一请求,第一请求用于请求修复系统故障的目标虚拟机,第一请求包括目标虚拟机的虚拟机标识;在镜像数据库中查询与虚拟机标识对应的预先制作的自生系统镜像的目标镜像标识;根据目标镜像标识创建目标云硬盘,将目标云硬盘挂载到目标虚拟机所在的母机,以使得母机从镜像存储仓库将目标镜像标识对应的自生系统镜像下载到目标云硬盘,并将目标云硬盘挂载到目标虚拟机,以及通过目标云硬盘启动目标虚拟机。本申请实施例通过为目标虚拟机挂载装载有自生系统镜像的目标云硬盘,实现了对系统故障的目标虚拟机进行启动。
Description
技术领域
本申请涉及虚拟机技术领域,具体而言,本申请涉及一种云环境虚拟机的修复方法、装置、电子设备及计算机可读存储介质。
背景技术
随着云计算的发展,云环境虚拟机技术的应用越来越广泛,并且在各种领域发挥着重要的作用。在虚拟机使用的过程中,会出现各自故障问题,这些问题会导致虚拟机无法正常运行,因此需要对虚拟机进行修复。
对于忘记密码、硬盘数据损坏等问题,传统的云环境虚拟机的修复通常需要在虚拟机内部启动,进入单用户模式并完成修复,但是当虚拟机出现引导加载文件丢失、系统关键文件缺失以及动态库文件损坏或缺失等问题时,虚拟机无法在内部启动,因此虚拟机不能进入单用户模式对问题进行修复。
发明内容
本申请实施例提供了一种云环境虚拟机的修复方法、终端、服务器、电子设备、存储介质及计算机程序产品,可以解决现有技术的上述问题。所述技术方案如下:
根据本申请实施例的第一个方面,提供了一种云环境虚拟机的修复方法,应用于服务器,方法包括:
接收控制台发送的第一请求,所述第一请求用于请求修复系统故障的目标虚拟机,所述第一请求包括目标虚拟机的虚拟机标识;
在镜像数据库中查询与所述虚拟机标识对应的自生系统镜像的目标镜像标识;
根据所述目标镜像标识创建目标云硬盘,将所述目标云硬盘挂载到所述目标虚拟机所在的母机,以使得所述母机从镜像存储仓库将所述目标镜像标识对应的预先制作的自生系统镜像下载到所述目标云硬盘,并将所述目标云硬盘挂载到所述目标虚拟机,以及通过所述目标云硬盘启动所述目标虚拟机。
根据本申请实施例的第二个方面,提供了一种云环境虚拟机的修复方法,应用于母机,方法包括:
从镜像存储仓库将目标镜像标识对应的自生系统镜像下载到目标云硬盘;
将所述目标云硬盘挂载到目标虚拟机,通过所述目标云硬盘启动系统故障的目标虚拟机;
其中,所述目标云硬盘是服务器根据所述目标镜像标识创建,并挂载在所述母机的;目标镜像标识是所述服务器根据所述目标虚拟机的虚拟机标识从镜像数据库中查询得到的;所述目标虚拟机的虚拟机标识是第一请求中携带的,所述第一请求由控制器发送至所述服务器,用于请求修复所述目标虚拟机。
根据本申请实施例的第三个方面,提供了一种云环境虚拟机的修复装置,应用于服务器,方法包括:
接收模块,用于接收控制台发送的第一请求,所述第一请求用于请求修复系统故障的目标虚拟机,所述第一请求包括目标虚拟机的虚拟机标识;
查询模块,用于在镜像数据库中查询与所述虚拟机标识对应的预先制作的自生系统镜像的目标镜像标识;
创建模块,用于根据所述目标镜像标识创建目标云硬盘,将所述目标云硬盘挂载到所述目标虚拟机所在的母机,以使得所述母机从镜像存储仓库将所述目标镜像标识对应的自生系统镜像下载到所述目标云硬盘,并将所述目标云硬盘挂载到所述目标虚拟机,以及通过所述目标云硬盘启动所述目标虚拟机。
根据本申请实施例的第四个方面,提供了一种云环境虚拟机的修复装置,应用于母机,方法包括:
下载模块,用于从镜像存储仓库将目标镜像标识对应的自生系统镜像下载到目标云硬盘;
启动模块,将所述目标云硬盘挂载到目标虚拟机,通过所述目标云硬盘启动系统故障的目标虚拟机;
其中,所述目标云硬盘是服务器根据所述目标镜像标识创建,并挂载在所述母机的;目标镜像标识是所述服务器根据所述目标虚拟机的虚拟机标识从镜像数据库中查询得到的;所述目标虚拟机的虚拟机标识是第一请求中携带的,所述第一请求由控制器发送至所述服务器,用于请求修复所述目标虚拟机。
根据本申请实施例的第五个方面,提供了一种电子设备,该电子设备包括存储器、处理器及存储在存储器上的计算机程序,处理器执行计算机程序以实现第一至第三任意一个方面提供的云环境虚拟机的修复方法的步骤。
根据本申请实施例的第六个方面,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现第一至第三任意一个方面提供的云环境虚拟机的修复方法的步骤。
根据本申请实施例的第七个方面,提供了一种计算机程序产品,该计算机程序产品包括计算机程序,计算机程序被处理器执行时实现第一至第三任意一个方面提供的云环境虚拟机的修复方法的步骤。
本申请实施例提供的技术方案带来的有益效果是:
通过接收控制台发送的第一请求,获取到目标虚拟机的虚拟机标识,以确定出现系统故障的目标虚拟机;通过获取到的虚拟机标识,根据镜像数据库中虚拟机标识与目标镜像标识查询到与该虚拟机标识对应的目标镜像标识,用于确定对该目标虚拟机对应的自生系统镜像;通过目标镜像标识创建目标云硬盘,使得目标镜像标识、自生系统镜像以及目标云硬盘具有对应关系,以使得该目标云硬盘能够满足装载该自生系统镜像的要求,为母机从镜像存储仓库中下载该自生系统镜像到目标云硬盘上做好物质准备;通过将该目标云硬盘挂载到母机上,使得母机将该自生系统镜像下载到该目标云硬盘上,以及将装载自生系统镜像的目标云硬盘挂载到目标虚拟机上,以使得通过该目标云硬盘上的自生系统镜像启动系统故障的目标虚拟机,实现对系统故障的目标虚拟机进行启动,从而能够对目标虚拟机进行修复操作。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。
图1为本申请实施例提供的云环境虚拟机的修复方法的系统结构示意图;
图2a为本申请实施例提供的一种云环境虚拟机的修复方法的流程示意图;
图2b为本申请实施例提供的另一种云环境虚拟机的修复方法的流程示意图;
图2c为本申请实施例提供的制作Live CD镜像的流程示意图;
图3为本申请实施例提供的一种母机标识列表示意图;
图4为本申请实施例提供的另一种云环境虚拟机的修复方法的流程示意图;
图5a为本申请实施例提供的检测目标虚拟机的流程示意图;
图5b为本申请实施例提供的云环境虚拟机的修复方法中接入模块的执行过程的流程示意图;
图6a为本申请实施例提供的停止修复目标虚拟机的流程示意图;
图6b为本申请实施例提供的另一种停止修复目标虚拟机的流程示意图;
图6c为本申请实施例提供的停止修复目标虚拟机时接入模块的执行过程的流程示意图;
图7为本申请实施例提供的一种云环境虚拟机的修复方法的流程示意图;
图8为本申请实施例提供的另一种云环境虚拟机的修复方法的流程示意图;
图9为本申请实施例提供的停止修复目标虚拟机的流程示意图;
图10为本申请实施例提供的另一种云环境虚拟机的修复方法的流程示意图;
图11为本申请实施例提供的另一种云环境虚拟机的修复方法的流程示意图;
图12为本申请实施例提供的一种云环境虚拟机的修复装置的结构示意图;
图13为本申请实施例提供的一种云环境虚拟机的修复装置的结构示意图;
图14为本申请实施例提供的一种云环境虚拟机的修复的电子设备的结构示意图。
具体实施方式
下面结合本申请中的附图描述本申请的实施例。应理解,下面结合附图所阐述的实施方式,是用于解释本申请实施例的技术方案的示例性描述,对本申请实施例的技术方案不构成限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式 “一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请实施例所使用的术语“包括”以及“包含”是指相应特征可以实现为所呈现的特征、信息、数据、步骤、操作、元件和/或组件,但不排除实现为本技术领域所支持其他特征、信息、数据、步骤、操作、元件、组件和/或它们的组合等。应该理解,当我们称一个元件被“连接”或“耦接”到另一元件时,该一个元件可以直接连接或耦接到另一元件,也可以指该一个元件和另一元件通过中间元件建立连接关系。此外,这里使用的“连接”或 “耦接”可以包括无线连接或无线耦接。这里使用的术语“和/或”指示该术语所限定的项目中的至少一个,例如“A和/或B”可以实现为“A”,或者实现为“B”,或者实现为“A和B”。
本申请实施例中,术语“模块”或“单元”是指有预定功能的计算机程序或计算机程序的一部分,并与其他相关部分一起工作以实现预定目标,并且可以通过使用软件、硬件(如处理电路或存储器)或其组合来全部或部分实现。同样的,一个处理器(或多个处理器或存储器)可以用来实现一个或多个模块或单元。此外,每个模块或单元都可以是包含该模块或单元功能的整体模块或单元的一部分。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
首先对本申请涉及的几个名词进行介绍和解释:
云技术(Cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。
云技术(Cloud technology)基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。
云计算(Cloud computing)是一种计算模式,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。提供资源的网络被称为“云”。“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用,随时扩展,按使用付费。
作为云计算的基础能力提供商,会建立云计算资源池(简称云平台,一般称为IaaS(Infrastructure as a Service,基础设施即服务)平台,在资源池中部署多种类型的虚拟资源,供外部客户选择使用。云计算资源池中主要包括:计算设备(为虚拟化机器,包含操作系统)、存储设备、网络设备。
按照逻辑功能划分,在IaaS(Infrastructure as a Service,基础设施即服务)层上可以部署PaaS(Platform as a Service,平台即服务)层,PaaS层之上再部署SaaS(Software as a Service,软件即服务)层,也可以直接将SaaS部署在IaaS上。PaaS为软件运行的平台,如数据库、web容器等。SaaS为各式各样的业务软件,如web门户网站、短信群发器等。一般来说,SaaS和PaaS相对于IaaS是上层。
云存储(Cloud storage)是在云计算概念上延伸和发展出来的一个新的概念,分布式云存储系统 (以下简称存储系统)是指通过集群应用、网格技术以及分布存储文件系统等功能,将网络中大量各种不同类型的存储设备(存储设备也称之为存储节点)通过应用软件或应用接口集合起来协同工作,共同对外提供数据存储和业务访问功能的一个存储系统。
目前,存储系统的存储方法为:创建逻辑卷,在创建逻辑卷时,就为每个逻辑卷分配物理存储空间,该物理存储空间可能是某个存储设备或者某几个存储设备的磁盘组成。客户端在某一逻辑卷上存储数据,也就是将数据存储在文件系统上,文件系统将数据分成许多部分,每一部分是一个对象,对象不仅包含数据而且还包含数据标识(ID,ID entity)等额外的信息,文件系统将每个对象分别写入该逻辑卷的物理存储空间,且文件系统会记录每个对象的存储位置信息,从而当客户端请求访问数据时,文件系统能够根据每个对象的存储位置信息让客户端对数据进行访问。
存储系统为逻辑卷分配物理存储空间的过程,具体为:按照对存储于逻辑卷的对象的容量估量(该估量往往相对于实际要存储的对象的容量有很大余量)和独立冗余磁盘阵列(RAID,Redundant Array of Independent Disk)的组别,预先将物理存储空间划分成分条,一个逻辑卷可以理解为一个分条,从而为逻辑卷分配了物理存储空间。
虚拟机(Virtual Machine,VM)是一种软件模拟的计算机系统,它可以在物理计算机上运行多个操作系统和应用程序。虚拟机可以将物理计算机的处理器、内存、存储和网络等资源抽象化为多个虚拟资源,每个虚拟机都可以访问和使用这些虚拟资源。虚拟机的工作原理是通过虚拟化软件(也称为Hypervisor)在物理计算机上创建多个虚拟计算机,每个虚拟计算机都可以运行不同的操作系统和应用程序。虚拟化软件将物理计算机的处理器、内存、存储和网络等资源抽象化为多个虚拟资源,每个虚拟计算机都可以访问和使用这些虚拟资源。
母机:也称宿主机,是指部署了虚拟化环境的专属物理服务器,用户可以独享整台物理服务器资源,与其他租户的服务器物理隔离。用户购买了母机之后,可以通过在母机上分配的云服务器进行使用,支持用户自主规划物理机资源的使用,自定义母机上虚拟机的配置。
控制台:云环境提供的控制台是一种基于网页或应用程序的用户界面,用于管理云计算资源。通过控制台,可以创建、配置和管理虚拟机、存储、网络、数据库等各种云服务,以及获取其运行状态和性能。控制台通常提供了直观的操作界面,使用户能够轻松地进行各种操作,如创建、删除、调整资源,查看数据。
操作系统(Operating System,OS)是管理硬件与软件资源的程序,处理如管理与配置内存、决定系统资源供需的优先次序、控制输入设备与输出设备、操作网络与管理文件系统等事务,操作系统是电子设备中不可缺少的部分。
操作系统镜像是操作系统的所有文件的一个统称,在部署操作系统时,通常是从外界如互联网获取操作系统镜像,并通过安装操作系统镜像,完成操作系统在电子设备中的部署。
自生系统镜像也称为Live CD镜像,是运行在光盘上的操作系统镜像,Live CD,又译为自生系统,是事先存储于某种可移动存储设备上,可不特定于计算机硬件(non-hardware-specific)而启动的操作系统(通常亦包括一些其他软件),不需安装至计算机的本地外部存储器即硬盘。采用的介质包括CD-ROM(Live CD),DVD(Live DVD),闪存盘(LiveUSB)甚至是软盘等。退出自生系统并重启后,电脑就可以恢复到原本的操作系统。自生系统的运作机制,是透过“把原本放在硬盘里的文件,放到存储器的虚拟磁盘中”来运作;因此系统存储器愈大,则执行速度愈快。
挂载(mounting)是指由操作系统使一个存储设备(诸如硬盘、CD-ROM或共享资源)上的计算机文件和目录可供用户通过计算机的文件系统访问的一个过程。在windows操作系统中:挂载通常是指给磁盘分区(包括被虚拟出来的磁盘分区)分配一个盘符。在linux操作系统中:它指将一个设备(通常是存储设备)挂接到一个已存在的目录上。
本申请提供的对象的兴趣标签的确定方法、装置、电子设备、计算机可读存储介质以及计算机程序产品,旨在解决现有技术的如上技术问题。
下面通过对几个示例性实施方式的描述,对本申请实施例的技术方案以及本申请的技术方案产生的技术效果进行说明。需要指出的是,下述实施方式之间可以相互参考、借鉴或结合,对于不同实施方式中相同的术语、相似的特征以及相似的实施步骤等,不再重复描述。
图1其示例性的示出了本申请实施例提供的云环境虚拟机的修复方法的系统结构示意图。如图1所示,控制台101上包括云环境提供的控制台操作界面,服务器102具有多个应用程序接口(Application Programming Interface,API),控制台101向服务器102发送去请求修复目标虚拟机的请求指令,服务器102中包括接入模块和调度模块,接入模块中包括接收控制台101请求指令的API,用于接收控制台101的请求指令,并将请求指令传递到调度模块,调度模块接收接入模块传来的请求指令,根据请求指令创建目标云硬盘,并将目标云硬盘挂载到母机103,同时将请求指令发送给目标虚拟机所在的母机103,母机103接收服务器102的调度模块发出的请求指令,根据该请求指令查询并修改目标虚拟机的配置文件,最后通过目标云硬盘启动该目标虚拟机。
控制台101与服务器102,以及服务器102与母机103可以通过通信网络相连。可选的,该通信网络可以是无线网络或有线网络。
可选的,上述的无线网络或有线网络使用标准通信技术和/或协议。网络通常为因特网、但也可以是任何网络,包括但不限于局域网(Local Area Network,LAN)、城域网(Metropolitan Area Network,MAN)、广域网(Wide Area Network,WAN)、移动、有线或者无线网络、专用网络或者虚拟专用网络的任何组合)。在一些实施例中,使用包括超文本标记语言(Hyper Text Mark-up Language,HTML)、可扩展标记语言(Extensible MarkupLanguage,XML)等的技术和/或格式来代表通过网络交换的数据。此外还可以使用诸如安全套接字层(Secure Socket Layer,SSL)、传输层安全(Transport Layer Security,TLS)、虚拟专用网络(Virtual Private Network,VPN)、网际协议安全(Internet ProtocolSecurity,IPsec)等常规加密技术来加密所有或者一些链路。在另一些实施例中,还可以使用定制和/或专用数据通信技术取代或者补充上述数据通信技术。
本申请实施例中提供了一种云环境虚拟机的修复方法,该方法应用于服务器,如图2a所示,该方法包括S101、S102和S103。
S101、接收控制台发送的第一请求,第一请求用于请求修复系统故障的目标虚拟机,该第一请求包括目标虚拟机的虚拟机标识。
在本申请实施例中,当目标虚拟机出现系统故障时,为了对目标虚拟机进行修复,需要由控制台进行白屏操作,白屏操作是指在通过控制台在云环境的管理页面进行操作,云环境的管理页面是可视化的网页页面,在云环境的管理界面上,包括进入救援模式的虚拟机选项,当控制台在虚拟机选项中选择目标虚拟机后,控制台向服务器发送第一请求,该第一请求中包括目标虚拟机的虚拟机标识,服务器接收控制台发送的第一请求,从第一请求中获得该虚拟机标识,确定该第一请求用于请求修复该虚拟机标识对应的目标虚拟机。
在本申请实施例中,服务器中可以包括接入模块,该接入模块中具有接收控制台发送的第一请求的API,因此在本申请实施例可以通过API接收到控制台发送的第一请求。在本申请实施例中,接入模块由相关的程序代码组合构成,这些程序代码运行在服务器上。
S102、在镜像数据库中查询与虚拟机标识对应的预先制作的自生系统镜像的目标镜像标识。
在本申请实施例中,自生系统镜像为Live CD镜像,能够通过云硬盘、光盘或虚拟硬盘进行启动的操作系统镜像。在本申请实施例中,预先制作出Live CD镜像,并创建LiveCD镜像的标识,将Live CD镜像的镜像标识与虚拟机标识的对应关系存储在镜像数据库中,在本申请实施例中,一个镜像标识可以对应多个虚拟机标识,即本申请实施例中一个LiveCD镜像可以参与多台虚拟机的修复过程。
在本申请实施例中,为目标虚拟机设置了对应的Live CD镜像,服务器接收到第一请求后,获得第一请求中的虚拟机标识,根据该虚拟机标识,在镜像数据库中即可查询到对应的目标镜像标识,用于后续母机通过该目标镜像标识从镜像存储仓库中获得该Live CD镜像。在本申请实施例中可以将多个虚拟机与同一个Live CD镜像对应。
在一些实施例中,控制台还可以在第一请求中指定目标镜像标识,此时,服务器可以直接接收到目标镜像标识,不需要从镜像数据库中查询目标镜像标识。
在本申请实施例中,镜像数据库可以为专门存储Live CD镜像的数据库,也可以为存储云环境中所有镜像标识的数据库,在本申请中不做限制。
在本申请实施例中,服务器获取目标镜像标识后,将目标虚拟机的状态设置为进入救援模式。
S103、根据目标镜像标识创建目标云硬盘,将目标云硬盘挂载到目标虚拟机所在的母机,以使得母机从镜像存储仓库将目标镜像标识对应的自生系统镜像下载到目标云硬盘,并将目标云硬盘挂载到目标虚拟机,以及通过目标云硬盘启动目标虚拟机。
在本申请实施例中,服务器获取目标镜像标识后,从云环境中的系统云硬盘中申请目标云硬盘,系统云硬盘为服务器创建出目标云硬盘,该目标云硬盘用于存储目标镜像标识对应的Live CD镜像。
在本申请实施例中,服务器创建该目标云硬盘后,将该目标云硬盘挂载到目标虚拟机所在的母机上,也就是说,确定目标虚拟机是由哪台母机产生的,之后,将目标云硬盘挂载到确定的母机上,以使得该母机挂载云硬盘后,能够在镜像存储仓库中,下载目标镜像标识对应的Live CD镜像文件,将该Live CD镜像文件下载到目标云硬盘,并将该目标云硬盘挂载到目标虚拟机后启动该目标虚拟机。
在本申请实施例中,服务器中包括调度模块,通过调度模块申请目标云硬盘以及将目标云硬盘挂载到母机上。该调度模块中具有调用云硬盘的API。在本申请实施例中,调度模块由相关的程序代码组合构成,这些程序代码运行在服务器上,请参见图2b,其示例性的示出了本申请实施例提供的另一种云环境虚拟机的修复方法的流程示意图。
在本申请实施例中,在镜像数据库中查询目标镜像标识之前还包括制作Live CD镜像,并将制作的Live CD镜像存储至镜像存储仓库,并生成对应的目标镜像标识。以LiveCD镜像中的操作系统为centos7.x系统为例,制作Live CD镜像的过程为:构建环境准备,从官网上下载标准的centos7.x系统,在centos7.x系统上安装光盘操作系统工具livecd-tool包,命令为“yum install -y livecd-tools”,同时安装用于修复目标虚拟机时可能使用到的第三方工具或程序,提高对目标虚拟机的修复能力;下载官方的centos7.x系统的启动插件kickstart,对该插件按照需要进行修改,能够实现定制Live CD镜像;通过以下命令构建Live CD镜像“livecd-creator -v --config centos7livecd.cfg --cache /var/cache/livecd --name test-livecd”,通过上述命令生成名称为“test-livecd”的Live CD镜像,对该镜像进行检查与测试;测试通过后,将该Live CD镜像存储值镜像存储仓库,并生成对应的镜像标识,例如按照日期生成镜像标识“img202310010000.iso”,并将镜像标识存储值镜像数据库。如图2c所示,其示例性的示出了本申请实施例提供的制作Live CD镜像的流程示意图。
本申请实施例,通过接收控制台发送的第一请求,获取到目标虚拟机的虚拟机标识,以确定出现系统故障的目标虚拟机;通过获取到的虚拟机标识,根据镜像数据库中虚拟机标识与目标镜像标识查询到与该虚拟机标识对应的目标镜像标识,用于确定对该目标虚拟机对应的自生系统镜像;通过目标镜像标识创建目标云硬盘,使得目标镜像标识、自生系统镜像以及目标云硬盘具有对应关系,以使得该目标云硬盘能够满足装载该自生系统镜像的要求,为母机从镜像存储仓库中下载该自生系统镜像到目标云硬盘上做好物质准备;通过将该目标云硬盘挂载到母机上,使得母机将该自生系统镜像下载到该目标云硬盘上,以及将装载自生系统镜像的目标云硬盘挂载到目标虚拟机上,以使得通过该目标云硬盘上的自生系统镜像启动系统故障的目标虚拟机,实现对系统故障的目标虚拟机进行启动,从而能够对目标虚拟机进行修复操作。
在上述各实施例的基础上,作为一种可选实施例,本申请实施例中的目标镜像标识包括用于指示对应的Live CD镜像的占用空间的信息;
根据目标镜像标识创建目标云硬盘,将该目标云硬盘挂载到目标虚拟机所在的母机,包括:
S201、根据目标镜像标识确定对应的自生系统镜像的占用空间,根据该占用空间创建目标云硬盘;
S202、在母机标识列表中查询与虚拟机标识对应的母机标识,该母机标识列表中包括虚拟机标识与母机标识的对应关系;
S203、将目标云硬盘挂载到该母机标识对应的母机。
在本申请实施例中,在目标镜像标识中包括了对应的Live CD镜像的占用空间的信息,因此,服务器在创建云硬盘时,根据目标镜像标识指示的Live CD镜像的占用空间,创建出存储空间大于或等于该占用空间的目标云硬盘,避免云硬盘存储空间过小,使得后续母机无法将对应的Live CD镜像下载到该目标云硬盘中。
在本申请实施例中,服务器创建好目标云硬盘后,将目标云硬盘挂载到虚拟机所在的母机上。在本申请实施例中,预设有母机标识列表,如图3所示,其示例性的示出了本申请实施例提供的母机标识列表示意图。在图3中,虚拟机001和虚拟机002由母机a通过虚拟化技术产生,若目标虚拟机的标识为001,则可通过母机标识列表确定对应的母机标识为a,从而确定出目标虚拟机所在的母机。服务器可以从该列表中获取目标虚拟机是由哪台母机产生的,即母机标识列表中包括目标虚拟机的虚拟机标识以及该目标虚拟机对应的母机标识的对应关系,因此,服务器根据虚拟机标识获得母机标识,从而确定出目标虚拟机所在的母机。
在本申请实施例中,服务器确定母机标识后,将云硬盘挂载到该母机上。在本申请实施例中,可以通过小型计算机系统接口(Internet Small Computer System Interface,iSCSI)协议,将云硬盘挂载到该母机上。通过iSCSI协议可以将远程的云硬盘挂载到母机上,实现数据的共享和访问。通过iSCSI协议,母机可以像访问本地磁盘一样访问目标云硬盘。
在上述各实施例的基础上,作为一种可选实施例,本申请实施例根据目标镜像标识指示的Live CD镜像的占用空间创建目标云硬盘时,还创建了该目标云硬盘的云硬盘标识;
进一步的,将目标云硬盘挂载到目标标识对应的母机,之后还包括:
向该母机发送第二请求,第二请求用于请求该母机下载目标镜像标识对应的LiveCD镜像到云硬盘标识对应的目标云硬盘,并将目标云硬盘挂载到目标虚拟机,以及通过目标云硬盘启动目标虚拟机;
其中,第二请求中包括虚拟机标识,目标镜像标识,以及目标云硬盘的云硬盘标识。
在本申请实施例中,服务器通过在系统云硬盘中申请目标云硬盘,此时系统云硬盘为服务器创建出目标云硬盘的同时也为目标云硬盘创建了对应的云硬盘标识。需要理解的是,服务器在对一块云硬盘执行操作时,需要执行与该云硬盘对应的指令,而指令中必须包括对应的云硬盘标识,服务器才能理解是对哪个云硬盘进行操作,因此在本申请实施例中,在创建目标云硬盘的同时也为目标云硬盘创建了对应的云硬盘标识。创建目标云硬盘的云硬盘标识后,将该目标虚拟机的虚拟机标识以及对应的云硬盘标识存储至云硬盘数据库中,即云硬盘数据库中存储量虚拟机标识和云硬盘标识的对应关系。
如图4所示,图4实例性的示出了本申请实施例提出的另一种云环境虚拟机的修复方法的流程示意图。通过步骤S101、步骤S102以及步骤S103,服务器接收到控制台发送的第一请求,服务器在镜像数据库中查询与虚拟机标识对应的Live CD镜像的目标镜像标识,服务器根据目标镜像标识创建目标云硬盘,之后还包括,服务器将目标云硬盘挂载到对应的母机,此时,服务器向该母机发送第二请求,该第二请求中包括虚拟机标识,目标镜像标识以及云硬盘标识,母机通过目标镜像标识和云硬盘标识下载Live CD镜像到目标云硬盘中,母机将目标云硬盘挂载到目标虚拟机,并通过目标云硬盘启动目标虚拟机。
通过将服务器获得的虚拟机标识、目标镜像标识以及云硬盘标识等信息传递给母机,使得母机在获取这些信息后,能够实现将目标镜像对应的Live CD镜像下载到云硬盘标识对应的目标云硬盘、将目标云硬盘挂载到虚拟机标识对应的目标虚拟机,以及通过该目标云硬盘启动该目标虚拟机。
在上述各实施例的基础上,作为一种可选的实施例,在镜像数据库中查询与该虚拟机标识对应的Live CD镜像的目标镜像标识,之前还包括:
S401、判断目标虚拟机是否处于第一状态,第一状态为关机状态或运行状态;
S402、若确定目标虚拟机处于第一状态,则判断目标虚拟机的启动密码的复杂度是否满足预设条件,目标虚拟机的启动密码是由控制台在发送第一请求时设置的;
S403、若确定目标虚拟机的启动密码的复杂度满足预设条件,则在镜像数据库中查询与目标虚拟机的虚拟机标识对应的自生系统镜像的目标镜像标识。
如图5a所示,其示例性的示出了本申请实施例提供的一种检测目标虚拟机的流程示意图。在本申请实施例中,服务器接收到控制台发送的虚拟机标识,根据该虚拟机标识在镜像数据库中查询与该虚拟机标识对应的Live CD镜像对应的镜像标识,在此之前,服务器需要对该虚拟机标识对应的目标虚拟机的第一状态进行判断。第一状态包括关机状态和运行状态,只有当目标虚拟机的状态为第一状态时,才能对该目标虚拟机进行相关修复操作。需要理解的是,当目标虚拟机处于出第一状态以外的其他状态时,可能存在子任务,所以不可以进入救援模式,因此不能执行相关修复操作。
在本申请实施例中,服务器确定目标虚拟机处于第一状态后,进一步判断目标虚拟机的启动密码的复杂度是否满足预设条件。在控制台向服务器第一请求时,为目标虚拟机设置启动密码,服务器为保证修复目标虚拟机过程的安全性,将会验证该启动密码的复杂度,若该启动密码的复杂度较低,这说明该启动密码设置的过于简单,目标虚拟机容易收到非法攻击,不能保证修复过程的安全性。
在本申请实施例中,服务器包括接入模块,步骤S401~步骤S403由接入模块执行。如图5b所示,其示例性的示出了本申请实施例提供的云环境虚拟机的修复方法中接入模块的执行过程的流程示意图。在本申请实施例中,接入模块负责接收控制台发送的第一请求,确定目标虚拟机的状态,以及检查目标虚拟机的启动密码的复杂度,获取虚拟机标识对应的目标镜像标识,将目标虚拟机状态更新为救援模式,并将虚拟机标识,目标镜像标识以及目标虚拟机的启动密码发送至调度模块。
通过本申请实施例,服务器在查询虚拟机标识对应的目标镜像标识之前,确定了目标虚拟机的状态,避免了在目标虚拟机运行子任务时,对该目标虚拟机执行修复操作,影响子任务的运行;以及对目标虚拟机启动密码的复杂度进了验证,防止该启动密码的复杂度较低,在对该目标虚拟机进行修复时,受到非法程序的攻击,保障了修复过程的安全性。
在上述各实施例的基础上,作为一种可选实施例,判断目标虚拟机的启动密码的复杂度是否满足预设条件,之后还包括:
若目标虚拟机的启动密码的复杂度不满足预设条件,向控制台发送目标虚拟机进入救援模式失败信息,指示控制台重新设置目标虚拟机的启动密码。
在本申请实施例中,当目标虚拟机的启动密码的复杂度不满足预设条件时,说明该启动密码的复杂度较低,即控制台在设施目标虚拟机的启动密码时设置的较为简单,则服务器会想控制台发送目标虚拟机进入救援模式失败的信息,即服务器不能继续执行对虚拟机进行修复的操作,并提示控制台重新设置目标虚拟机的启动密码。
通过本申请实施例,当目标虚拟机的启动密码的复杂度不满足预设条件时,能够及时反馈给控制台,使得控制台及时重新设置启动密码,避免因启动密码的复杂度较低,不能及时对目标虚拟机进行修复操作。
在上述各实施例的基础上,作为一种可选实施例,将目标云硬盘挂载到目标虚拟机所在的母机,之后还包括:
S601、接收控制台发送的第三请求,第三请求用于请求停止修复目标虚拟机,第三请求中包括目标虚拟机的虚拟机标识;
S602、在母机标识列表中查询与虚拟机标识对应的母机标识,根据母机标识,向母机发送第四请求,以使得母机标识对应的母机解挂目标虚拟机挂载的目标云硬盘,并将云硬盘标识发送至服务器,第四请求中包括虚拟机标识和云硬盘标识;
S603、接收母机发送的云硬盘标识,根据云硬盘标识,删除目标云硬盘中的自生系统镜像。
如图6a所示,其示例性的示出了本申请实施例提供的停止修复目标虚拟机的流程示意图。在本申请实施例中,服务器将目标云硬盘挂载得到目标虚拟机所在的母机,之后会接收到控制台发送的第三请求,该第三请求中包括目标虚拟机的虚拟机标识,该第三请求用于请求服务器根据虚拟机标识,将目标虚拟机退出救援模式,即停止修复目标虚拟机。
在本申请实施例中,服务器接收到虚拟机标识后,首先确定该虚拟机标识对应的目标虚拟机所处的状态,若目标虚拟机的状态为救援模式,即目标虚拟机处于修复过程,则从母机标识列表中查询与该虚拟机标识对应的母机标识,查找到虚拟机标识对应的目标虚拟机所在的母机,也就是确定目标虚拟机是由哪台母机虚拟化生成的。然后通过虚拟机标识确定云硬盘标识,服务器从云硬盘数据库中查询与虚拟机标识对应的云硬盘标识,确定母机标识以及云硬盘标识后,向该母机标识对应的母机发送第四请求,该第四请求中包括该虚拟机标识和云硬盘标识,使得母机根据该虚拟机标识,确定目标虚拟机,解挂该目标虚拟机之前挂载的目标云硬盘。
在本申请实施例中,服务器将第四请求发送到母机后,接收到母机发回的云硬盘标识,以使得服务器能够将目标云硬盘中的内容进行删除,即删除目标云硬盘中的Live CD镜像,清空该目标云硬盘中的内容后,将该目标云硬盘归还至系统云硬盘。
如图6b所示,图6b示例性的示出了本申请实施例提供的另一种停止修复目标虚拟机的流程示意图。在本申请实施例中,服务器包括接入模块和调度模块,其中接入模块用于接收控制台发送的目标虚拟机的虚拟机标识,并将虚拟机标识传递给调度模块,调度模块根据虚拟机标识在云硬盘数据库中获取云硬盘标识,将虚拟机标识和云硬盘标识发送至母机,以使得母机解挂目标虚拟机上的目标云硬盘,调度模块接收母机返回的云硬盘标识,删除目标云硬盘中的Live CD镜像,将目标云硬盘退还至系统云硬盘。
如图6c所示,图6c实施例的示出了本申请实施例提供的停止修复目标虚拟机时接入模块的执行过程的流程示意图。接入模块用于接收控制台发送的第三请求,检查目标虚拟机的状态是都为救援模式,检查通过后,将目标虚拟机的虚拟机标识发送至调度模块。
通过本申请实施例,将目标虚拟机退出救援模式,即结束对目标虚拟机进行修复操作。通过接收控制台的第三请求,获取虚拟机标识,根据该虚拟机标识,确定该目标虚拟机对应的母机,并发送第四请求到该母机,使得该母机解挂目标虚拟机上的目标云硬盘,接收母机发回的目标云硬盘的云硬盘标识,实现对目标云硬盘中的内容清除,归还该目标云硬盘至系统云硬盘。
本申请实施例中提供了一种云环境虚拟机的修复方法,该方法应用于母机,如图7所示,该方法包括S701和S702。
S701、从镜像存储仓库将目标镜像标识对应的自生系统镜像下载到目标云硬盘;
在本申请实施例中,目标云硬盘是服务器根据目标镜像标识创建,并挂载到母机的;目标镜像标识是服务器根据目标虚拟机的虚拟机标识从镜像数据库中查询得到的;目标虚拟机的虚拟机标识是第一请求中携带的,第一请求由控制器发送至服务器,用于请求修复系统故障的目标虚拟机。母机根据目标镜像标识,在镜像存储仓库中下载该目标镜像标识对应的Live CD镜像到目标云硬盘上。目标云硬盘挂载在母机上,母机可以像管理自身的硬盘一样管理该目标云硬盘,实现将Live CD镜像下载到该目标云硬盘中,需要理解的是,此时的目标云硬盘挂载在母机上,是服务器通过iSCSI协议将目标云硬盘远程的挂载到母机上,实现数据的共享和访问。
在本申请实施例中,镜像存储仓库中的Live CD镜像有服务器进行制作,并存储至镜像存储仓库,同时生成目标镜像标识存储至镜像数据库中。
S702、将目标云硬盘挂载到目标虚拟机,通过目标云硬盘启动系统故障的目标虚拟机。
在本申请实施例中,母机将目标镜像标识对应的Live CD镜像下载到目标云硬盘后,将目标云硬盘挂载到虚拟机标识对应的目标虚拟机中。控制台发送虚拟机标识至服务器,服务器再将虚拟机标识发送至母机,母机根据该虚拟机标识,确定需要修复的目标虚拟机,然后将装载有Live CD镜像的目标云硬盘挂载到目标虚拟机上。
将上述目标云硬盘挂载到目标虚拟机后,将目标云硬盘作为启动目标虚拟机的启动盘,基于该目标云硬盘启动目标虚拟机,启动目标虚拟机后,即可针对该目标虚拟机的系统故障,执行相关修复操作,需要理解的是,在挂载目标云硬盘到目标虚拟机之前,目标虚拟机有其自身的系统盘,该系统盘出现故障后,目标虚拟机无法启动,通过本申请实施例,将目标云硬盘作为启动盘,此时目标虚拟机的系统盘作为目标虚拟机的普通硬盘,目标云硬盘启动虚拟机后,即可对目标虚拟机的系统盘执行相关修复操作。
通过本申请实施例,将目标镜像标识对应的Live CD镜像下载到目标云硬盘中,构造出了能够启动系统故障的目标虚拟机的启动盘,通过将装载Live CD镜像的目标云硬盘挂载到目标虚拟机上,使得该目标云硬盘能够启动目标虚拟机,解决了目标虚拟机因系统故障而不能启动的问题,实现了对系统故障的目标虚拟机的修复。
在上述各实施例的基础上,作为一种可选实施例,从镜像存储仓库将目标镜像标识对应的Live CD镜像下载到目标云硬盘,之前还包括:
接收服务器发送的第二请求,第二请求用于请求母机下载目标镜像标识对应的Live CD镜像到云硬盘标识对应的目标云硬盘,并将目标云硬盘挂载到目标虚拟机,通过目标云硬盘启动目标虚拟机;
其中,第二请求中包括虚拟机标识,目标镜像标识,以及目标云硬盘的云硬盘标识。
在本申请实施例中,母机在从镜像存储仓库中下载Live CD镜像到目标云硬盘之前,接收服务器发送的第二请求,该第二请求中包括虚拟机标识,目标镜像标识,以及云硬盘标识。母机中包括agent组件,该组件能够接收服务器发送的第二请求,母机上的agent组件是母机上运行的代理软件模块,用于管理和执行特定任务。
该虚拟机标识是由控制台向服务器发送的,是系统故障的目标虚拟机的虚拟机标识;该目标镜像标识为服务器根据虚拟机标识在镜像数据库中查询的该虚拟机标识对应的目标镜像标识,目标镜像标识对应一个Live CD镜像;该云硬盘标识为用于装载Live CD镜像的目标云硬盘的云硬盘标识。
通过本申请实施例,接收服务器发送的第二请求,获得该虚拟机标识,目标镜像标识,以及云硬盘标识,用于母机根据三种标识,实现将Live CD镜像下载到目标云硬盘中,以及将目标云硬盘挂载到目标虚拟机,并基于该目标云硬盘启动目标虚拟机,即本申请中的虚拟机标识、目标镜像标识以及云硬盘标识之前具有对应关系,为启动系统故障的目标虚拟机提供了系统性的方法。
在上述各实施例的基础上,作为一种可选实施例,从镜像存储仓库将目标镜像标识对应的Live CD镜像下载到目标云硬盘,之前还包括:
S901、根据云硬盘标识,判断目标云硬盘是否已挂载到母机;
S902、若确定目标云硬盘已挂载,根据目标镜像标识从镜像存储仓库中查找自生系统镜像;
S903、将自生系统镜像下载到目标云硬盘。
在本申请实施例中,母机在将Live CD镜像下载到目标云硬盘之前还包括检查母机上是否挂载了目标云硬盘。母机根据云硬盘标识,查询自身是否挂载了该目标云硬盘。
若母机确定了该目标云硬盘挂载在母机上,再根据目标镜像标识从镜像存储仓库中下载Live CD镜像下载到目标云硬盘。作为本申请的一种可选实施例,在母机检查是否挂载目标云硬盘时,获取目标云硬盘的存储地址,根据该存储地址,将Live CD镜像下载到该目标云硬盘上。
通过本申请实施例,母机在下载Live CD镜像到目标云硬盘时,检查是否挂载了该目标云硬盘,考虑到服务器将目标云硬盘挂载到母机时可能挂载失误的情况,确保该目标云硬盘挂载到母机后,再从镜像存储仓库中下载Live CD镜像到目标云硬盘上,防止了下载Live CD失败的情况的出现。
在上述各实施例的基础上,作为一种可选实施例,将目标云硬盘挂载到目标虚拟机,通过目标云硬盘启动系统故障的目标虚拟机,包括:
S1001、若确定目标虚拟机处于运行状态,则对目标虚拟机进行关机;
S1002、根据虚拟机标识,获取目标虚拟机的配置文件,通过在配置文件中添加云硬盘标识,以使目标云硬盘挂载到目标虚拟机;
S1003、在配置文件中将目标云硬盘的优先级,设置为具有启动目标虚拟机的各个启动硬盘的优先级中的最高优先级,启动硬盘为具有启动目标虚拟机功能的硬盘;
S1004、通过目标云硬盘启动目标虚拟机。
在本申请实施例中,母机将目标云硬盘挂载到目标虚拟机机时,首先确定出目标虚拟机所处的状态,母机根据虚拟机标识,确定出系统故障的目标虚拟机,确定出此时目标虚拟机的状态,在服务器发送第三请求至母机之前,服务器以及确定出该目标虚拟机的状态为第一状态,第一状态为关机状态或运行状态。母机此时再次对目标虚拟机的状态进行确定,若目标虚拟机的状态为运行状态,则对目标虚拟机进行关机。
在本申请实施例中,母机通过调用虚拟化接口libvirt API对目标虚拟机关机,libvirt API是用于管理虚拟化平台的工具包,为管理虚拟化平台(包括虚拟机、存储和网络)提供了稳定、安全和可扩展的接口,可用于执行各种虚拟化管理任务,如创建、启动、停止和管理虚拟机,管理存储卷和网络接口,以及配置虚拟化主机。
在本申请实施例中,母机对目标虚拟机关机后,根据虚拟机标识,获取目标虚拟机的配置文件。通过再次调用libvirt API获取目标虚拟机的xml配置文件,基于上述母机上的agent组件修改目标虚拟机的xml配置文件。
在本申请实施例中,对目标虚拟机的xml配置文件两处修改,第一处修改用于将目标云硬盘挂载到目标虚拟机上,修改过程为在xml的设备devices标签下新增目标云硬盘标识;第二处修改用于将目标云硬盘启动目标虚拟机的优先级设置为各个云硬盘启动目标虚拟机的优先级的最高级,修改过程为将xml配置文件中目标云硬盘的启动顺序boot order设置为1,将目标虚拟机的系统盘的boot order设置为9。
需要理解的是,本申请实施例意在基于目标云硬盘启动该目标虚拟机,而在此之前,目标虚拟机的启动盘为该目标虚拟机的系统盘,在本申请实施例中,将目标云硬盘启动目标虚拟机的优先级设置为最高优先级,使得目标虚拟机不再由系统盘进行启动,此时,系统盘作为目标虚拟机的普通硬盘来使用,最后母机调用libvirt API对目标虚拟机进行启动。
通过本申请实施例,实现了对目标虚拟机xml配置文件进行修改,将目标云硬盘挂载到目标虚拟机上,以使得基于该目标云硬盘上的Live CD镜像启动目标虚拟机。
在上述各实施例的基础上,作为一种可选的实施例,通过目标云硬盘启动目标虚拟机包括:
S1101、向自生系统镜像注入用户名和目标虚拟机的启动密码;
S1102、对目标虚拟机进行开机,用户名和目标虚拟机的启动密码是由服务器发送第二请求中携带的。
在本申请实施例中,基于目标云硬盘启动目标虚拟机,通过云服务器初始化工具cloudinit向目标云硬盘中的Live CD镜像注入目标虚拟机对应的用户名和启动密码,该用户名和启动密码是服务器向母机发送第二请求时携带的,也是控制台向服务器发送第一请求时携带的,通过cloudinit向Live CD镜像注入用户名和启动密码,调用libvirt API对目标虚拟机进行启动。
目标虚拟机启动后,用户可以通过向目标虚拟机输入用户名和密码,服务器对用户输入的用户名和启动密码进行验证,若用户输入的用户名和启动密码与注入Live CD镜像的用户名和密码一致时,验证通过,此时用户即可对目标虚拟机执行具体的修复操作。具体请参见图8,图8示例性的示出了本申请实施例提供的另一种云环境虚拟机的修复方法的流程示意图,在云环境虚拟机的修复方法应用于母机时,母机接收服务器的调度模块发送的第二请求,检查目标云硬盘是都挂载到母机,检查通过后,从镜像存储仓库中下载LiveCD镜像到目标云硬盘,调用libvirt API对目标虚拟机关机,调用libvirt API获取目标虚拟机的xml配置文件,修改xml配置文件,通过cloudinit组件向Live CD镜像注入目标虚拟机的用户名和启动密码,最后调用libvirt API对目标虚拟机启动。
在上述各实施例的基础上,作为一种可选实施例,通过目标云硬盘启动目标虚拟机,之后还包括:
S1201、接收服务器发送的第四请求,第四请求用于请求母机将目标云硬盘从目标虚拟机上进行解挂,第四请求中包括虚拟机标识和云硬盘标识,虚拟机标识是由控制台向服务器发送的第三请求中携带的;
S1202、根据虚拟机标识和云硬盘标识,解挂目标虚拟机上的目标云硬盘。
S1203、发送云硬盘标识至服务器,以使得服务器删除目标云硬盘中的自生系统镜像。
在本申请实施例中,母机接收服务器发送的第四请求,该第四请求中包括虚拟机标识和云硬盘标识,母机的agent组件能够接收该第四请求,获取该第四请求中的虚拟机标识和云硬盘标识,该虚拟机标识是由控制台向服务器发送的第三请求中携带的,该云硬盘标识为服务器根据云硬盘数据库中虚拟机标识与云硬盘标识的对应关系获得的,该第四请求用于请求母机将目标虚拟机退出救援模式,以及请求母机归还目标云硬盘。
在本申请实施例中,母机获取虚拟机标识后,确定出目标虚拟机,同时确定出云硬盘标识对应的目标云硬盘,解挂目标虚拟机上的目标云硬盘。
在本申请实施例中,母机对目标云硬盘进行解挂后,退还目标云硬盘,并将云硬盘标识发送至服务器,以使得服务器能够对解挂后的目标云硬盘中的Live CD镜像进行清除,归还该目标云硬盘至系统云硬盘中。
通过本申请实施例,实现了将目标虚拟机退出救援模式,即结束对目标虚拟机的修复操作。因此本申请实施例实现了系统化的目标虚拟机的修复过程。
在上述各实施例的基础上,作为一种可选实施例,根据虚拟机标识和云硬盘标识,解挂目标虚拟机上的目标云硬盘,包括:
S1301、对虚拟机标识对应的目标虚拟机进行关机;
S1302、获取目标虚拟机的配置文件,在配置文件中,删除云硬盘标识,以使得母机解挂目标虚拟机上的目标云硬盘,并在配置文件中启动目标虚拟机的各个启动硬盘的优先级还原。
如图9所示,图9示例性的示出了本申请实施例提供的停止修复目标虚拟机的流程示意图。在本申请实施例中,母机接收到第四请求后,调用libvirt API对目标虚拟机进行关机,然后通过调用libvirt API获取目标虚拟机的xml配置文件。母机获取到目标虚拟机的xml配置文件后,根据云硬盘标识对该配置文件进行修改。修改包括两处,第一处是根据云硬盘标识删除目标云硬盘对应的disk标签,用于将目标虚拟机上的目标云硬盘进行解挂;第二处是将目标虚拟机的系统盘的boot order设置为1,用于恢复目标虚拟机的系统盘的启动顺序。
目标虚拟机的xml配置文件修改完毕后,母机即可在此调用libvirt API对目标虚拟机进行开机,此时目标虚拟机通过系统盘进行启动。
通过本申请实施例,对目标虚拟机的xml配置文件进行了再次修改,使得目标虚拟机解挂了目标云硬盘,并且恢复了目标虚拟机的系统盘的启动顺序,使得修复好的目标虚拟机能够按照系统盘启动。
如图10所示,其示例性的示出了本申请实施例提供的另一种云环境虚拟机的修复方法的流程示意图,本申请实施例中提供云环境的修复方法应用在云环境中的服务器,具体如下:
S1401、接收控制台发送的第一请求,第一请求包括目标虚拟机的虚拟机标识;
S1402、判断目标虚拟机是否处于第一状态;
S1403、若确定目标虚拟机处于第一状态,则判断目标虚拟机的启动密码的复杂度是否满足预设条件;
S1404、若确定目标虚拟机的启动密码的复杂度满足预设条件,则在镜像数据库中查询与虚拟机标识对应的自生系统镜像的目标镜像标识
S1405、若目标虚拟机的启动密码的复杂度不满足预设条件,向控制台发送目标虚拟机进入救援模式失败信息,指示控制台重新设置目标虚拟机的启动密码;
S1406、根据目标镜像标识确定自生系统镜像的占用空间,根据占用空间创建目标云硬盘;
S1407、在母机标识列表中查询与虚拟机标识对应的母机标识;
S1408、将目标云硬盘挂载到母机标识对应的母机;
S1409、向母机发送第二请求,第二请求中包括虚拟机标识,目标镜像标识,以及目标云硬盘的云硬盘标识;
S1410、接收控制台发送的第三请求,第三请求中包括目标虚拟机的虚拟机标识;
S1411、在母机标识列表中查询与虚拟机标识对应的母机标识;
S1412、根据母机标识,向母机发送第四请求,第四请求中包括虚拟机标识和云硬盘标识;
S1413、接收母机发送的云硬盘标识,删除目标云硬盘中的自生系统镜像。
其中步骤S1401~S1405,以及步骤S1410由服务器中的接入模块执行,步骤S1406~S1409,以及步骤S1411~S1413由服务器中的调度模块执行。
如图11,其示例性的示出了本申请实施例提供的另一种云环境虚拟机的修复方法的流程示意图,如图11所示,本申请实施例中提供云环境的修复方法应用在目标虚拟机所在的母机,具体如下:
S1501、接收服务器发送的第二请求,第二请求中包括虚拟机标识,目标镜像标识,以及目标云硬盘的云硬盘标识;
S1502、判断目标云硬盘是否已挂载到母机;
S1503、若确定目标云硬盘已挂载,将自生系统镜像下载到目标云硬盘;
S1504、判断目标虚拟机是否处于运行状态;
S1505、若确定目标虚拟机处于运行状态,则对目标虚拟机进行关机;
S1506、根据虚拟机标识,获取目标虚拟机的配置文件;
S1507、通过在配置文件中添加云硬盘标识,以使目标云硬盘挂载到目标虚拟机;
S1508、在配置文件中将目标云硬盘的优先级,设置为具有启动目标虚拟机的各个启动硬盘的优先级中的最高优先级;
S1509、向自生系统镜像注入用户名和目标虚拟机的启动密码;
S1510、通过目标云硬盘启动目标虚拟机;
S1511、接收服务器发送的第四请求,第四请求中包括虚拟机标识和云硬盘标识;
S1512、根据虚拟机标识和云硬盘标识,解挂目标虚拟机上的目标云硬盘;
S1513、发送目标云硬盘的云硬盘标识至服务器。
本申请实施例提供了一种云环境虚拟机的修复装置,如图12所示,该云环境虚拟机的修复装置可以包括:接收模块1001、查询模块1002和创建模块1003,其中,
接收模块1001,用于接收控制台发送的第一请求,第一请求用于请求修复系统故障的目标虚拟机,第一请求包括目标虚拟机的虚拟机标识;
查询模块1002,用于在镜像数据库中查询与虚拟机标识对应的预先制作的自生系统镜像的目标镜像标识;
创建模块1003,用于根据目标镜像标识创建目标云硬盘,将目标云硬盘挂载到目标虚拟机所在的母机,以使得母机从镜像存储仓库将目标镜像标识对应的自生系统镜像下载到目标云硬盘,并将目标云硬盘挂载到目标虚拟机,以及通过目标云硬盘启动目标虚拟机。
本申请实施例提供了一种云环境虚拟机的修复装置,如图13所示,该云环境虚拟机的修复装置可以包括:下载模块1101、启动模块1102,其中,
下载模块1101,用于从镜像存储仓库将目标镜像标识对应的自生系统镜像下载到目标云硬盘;
启动模块1102,将目标云硬盘挂载到目标虚拟机,通过目标云硬盘启动系统故障的目标虚拟机;
其中,目标云硬盘是服务器根据目标镜像标识创建,并挂载在母机的;目标镜像标识是服务器根据目标虚拟机的虚拟机标识从镜像数据库中查询得到的;目标虚拟机的虚拟机标识是第一请求中携带的,第一请求由控制器发送至服务器,用于请求修复目标虚拟机。
在一个可选实施例中提供了一种电子设备,如图14所示,图14所示的电子设备4000包括:处理器4001和存储器4003。其中,处理器4001和存储器4003相连,如通过总线4002相连。可选地,电子设备4000还可以包括收发器4004,收发器4004可以用于该电子设备与其他电子设备之间的数据交互,如数据的发送和/或数据的接收等。需要说明的是,实际应用中收发器4004不限于一个,该电子设备4000的结构并不构成对本申请实施例的限定。
处理器4001可以是CPU(Central Processing Unit,中央处理器),通用处理器,DSP(Digital Signal Processor,数据信号处理器),ASIC(Application SpecificIntegrated Circuit,专用集成电路),FPGA(Field Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器4001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线4002可包括一通路,在上述组件之间传送信息。总线4002可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(ExtendedIndustry Standard Architecture,扩展工业标准结构)总线等。总线4002可以分为地址总线、数据总线、控制总线等。为便于表示,图14中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器4003可以是ROM(Read Only Memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,RAM(Random Access Memory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM(Electrically ErasableProgrammable Read Only Memory,电可擦可编程只读存储器)、CD-ROM(Compact DiscRead Only Memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质、其他磁存储设备、或者能够用于携带或存储计算机程序并能够由计算机读取的任何其他介质,在此不做限定。
存储器4003用于存储执行本申请实施例的计算机程序,并由处理器4001来控制执行。处理器4001用于执行存储器4003中存储的计算机程序,以实现前述方法实施例所示的步骤。
其中,电子设备包可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图14所示的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现前述方法实施例的步骤及相应内容。与现有技术相比可实现:通过接收控制台发送的第一请求,获取到目标虚拟机的虚拟机标识,以确定出现系统故障的目标虚拟机;通过获取到的虚拟机标识,根据镜像数据库中虚拟机标识与目标镜像标识查询到与该虚拟机标识对应的目标镜像标识,用于确定对该目标虚拟机对应的自生系统镜像;通过目标镜像标识创建目标云硬盘,使得目标镜像标识、自生系统镜像以及目标云硬盘具有对应关系,以使得该目标云硬盘能够满足装载该自生系统镜像的要求,为母机从镜像存储仓库中下载该自生系统镜像到目标云硬盘上做好物质准备;通过将该目标云硬盘挂载到母机上,使得母机将该自生系统镜像下载到该目标云硬盘上,以及将装载自生系统镜像的目标云硬盘挂载到目标虚拟机上,以使得通过该目标云硬盘上的自生系统镜像启动系统故障的目标虚拟机,实现对系统故障的目标虚拟机进行启动,从而能够对目标虚拟机进行修复操作。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
本申请实施例还提供了一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时可实现前述方法实施例的步骤及相应内容。与现有技术相比可实现:通过接收控制台发送的第一请求,获取到目标虚拟机的虚拟机标识,以确定出现系统故障的目标虚拟机;通过获取到的虚拟机标识,根据镜像数据库中虚拟机标识与目标镜像标识查询到与该虚拟机标识对应的目标镜像标识,用于确定对该目标虚拟机对应的自生系统镜像;通过目标镜像标识创建目标云硬盘,使得目标镜像标识、自生系统镜像以及目标云硬盘具有对应关系,以使得该目标云硬盘能够满足装载该自生系统镜像的要求,为母机从镜像存储仓库中下载该自生系统镜像到目标云硬盘上做好物质准备;通过将该目标云硬盘挂载到母机上,使得母机将该自生系统镜像下载到该目标云硬盘上,以及将装载自生系统镜像的目标云硬盘挂载到目标虚拟机上,以使得通过该目标云硬盘上的自生系统镜像启动系统故障的目标虚拟机,实现对系统故障的目标虚拟机进行启动,从而能够对目标虚拟机进行修复操作。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”、“1”、“2”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除图示或文字描述以外的顺序实施。
应该理解的是,虽然本申请实施例的流程图中通过箭头指示各个操作步骤,但是这些步骤的实施顺序并不受限于箭头所指示的顺序。除非本文中有明确的说明,否则在本申请实施例的一些实施场景中,各流程图中的实施步骤可以按照需求以其他的顺序执行。此外,各流程图中的部分或全部步骤基于实际的实施场景,可以包括多个子步骤或者多个阶段。这些子步骤或者阶段中的部分或全部可以在同一时刻被执行,这些子步骤或者阶段中的每个子步骤或者阶段也可以分别在不同的时刻被执行。在执行时刻不同的场景下,这些子步骤或者阶段的执行顺序可以根据需求灵活配置,本申请实施例对此不限制。
以上所述仅是本申请部分实施场景的可选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请的方案技术构思的前提下,采用基于本申请技术思想的其他类似实施手段,同样属于本申请实施例的保护范畴。
Claims (17)
1.一种云环境虚拟机的修复方法,其特征在于,应用于服务器,所述方法包括:
接收控制台发送的第一请求,所述第一请求用于请求修复系统故障的目标虚拟机,所述第一请求包括目标虚拟机的虚拟机标识;
在镜像数据库中查询与所述虚拟机标识对应的预先制作的自生系统镜像的目标镜像标识;
根据所述目标镜像标识创建目标云硬盘,将所述目标云硬盘挂载到所述目标虚拟机所在的母机,以使得所述母机从镜像存储仓库将所述目标镜像标识对应的自生系统镜像下载到所述目标云硬盘,并将所述目标云硬盘挂载到所述目标虚拟机,以及通过所述目标云硬盘启动所述目标虚拟机;
所述在镜像数据库中查询与所述虚拟机标识对应的自生系统镜像的目标镜像标识,之前还包括:
判断所述目标虚拟机是否处于第一状态,所述第一状态为关机状态或运行状态;
若确定所述目标虚拟机处于第一状态,则判断所述目标虚拟机的启动密码的复杂度是否满足预设条件,所述目标虚拟机的启动密码是由所述控制台在发送所述第一请求时设置的;
若确定所述目标虚拟机的启动密码的复杂度满足预设条件,则在镜像数据库中查询与所述虚拟机标识对应的自生系统镜像的目标镜像标识。
2.根据权利要求1所述的方法,其特征在于,所述目标镜像标识包括用于指示所述自生系统镜像的占用空间的信息;
所述根据所述目标镜像标识创建目标云硬盘,将所述目标云硬盘挂载到所述目标虚拟机所在的母机,包括:
根据所述目标镜像标识确定所述自生系统镜像的占用空间,根据所述占用空间创建目标云硬盘;
在母机标识列表中查询与所述虚拟机标识对应的母机标识,所述母机标识列表中包括所述虚拟机标识与所述母机标识的对应关系;
将所述目标云硬盘挂载到所述母机标识对应的母机。
3.根据权利要求2所述的方法,其特征在于,所述根据所述占用空间创建目标云硬盘,还包括创建所述目标云硬盘的云硬盘标识;
所述将所述目标云硬盘挂载到所述母机标识对应的母机,还包括:
向所述母机发送第二请求,所述第二请求用于请求所述母机下载所述目标镜像标识对应的自生系统镜像到所述云硬盘标识对应的目标云硬盘,并将所述目标云硬盘挂载到所述目标虚拟机,以及通过所述目标云硬盘启动所述目标虚拟机;
其中,所述第二请求中包括所述虚拟机标识,所述目标镜像标识,以及所述目标云硬盘的云硬盘标识。
4.根据权利要求1所述的方法,其特征在于,所述判断所述目标虚拟机的启动密码的复杂度是否满足预设条件,之后还包括:
若所述目标虚拟机的启动密码的复杂度不满足预设条件,向所述控制台发送所述目标虚拟机进入救援模式失败信息,指示所述控制台重新设置所述目标虚拟机的启动密码。
5.根据权利要求1所述的方法,其特征在于,所述将所述目标云硬盘挂载到所述目标虚拟机所在的母机,之后还包括:
接收所述控制台发送的第三请求,所述第三请求用于请求停止修复所述目标虚拟机,所述第三请求中包括所述目标虚拟机的虚拟机标识;
在母机标识列表中查询与所述虚拟机标识对应的母机标识,根据所述母机标识,向所述母机发送第四请求,以使得所述母机标识对应的母机解挂所述目标虚拟机挂载的所述目标云硬盘,并将所述目标云硬盘发送至所述服务器,第四请求中包括所述虚拟机标识和所述云硬盘标识;
接收所述母机发送的所述云硬盘标识,根据所述云硬盘标识,删除所述目标云硬盘中的所述自生系统镜像。
6.一种云环境虚拟机的修复方法,其特征在于,应用于母机,所述方法包括:
从镜像存储仓库将目标镜像标识对应的自生系统镜像下载到目标云硬盘;
将所述目标云硬盘挂载到目标虚拟机,通过所述目标云硬盘启动系统故障的目标虚拟机;
其中,所述目标云硬盘是服务器根据所述目标镜像标识创建,并挂载在所述母机的;目标镜像标识是所述服务器根据所述目标虚拟机的虚拟机标识从镜像数据库中查询得到的;所述目标虚拟机的虚拟机标识是第一请求中携带的,所述第一请求由控制器发送至所述服务器,用于请求修复所述目标虚拟机;
所述服务器查询所述目标镜像标识之前,还包括:
判断所述目标虚拟机是否处于第一状态,所述第一状态为关机状态或运行状态;
若确定所述目标虚拟机处于第一状态,则判断所述目标虚拟机的启动密码的复杂度是否满足预设条件,所述目标虚拟机的启动密码是由控制台在发送所述第一请求时设置的;
若确定所述目标虚拟机的启动密码的复杂度满足预设条件,则在镜像数据库中查询与所述虚拟机标识对应的自生系统镜像的目标镜像标识。
7.根据权利要求6所述的方法,其特征在于,所述从镜像存储仓库将目标镜像标识对应的自生系统镜像下载到目标云硬盘,之前还包括:
接收服务器发送的第二请求,所述第二请求用于请求所述母机下载所述目标镜像标识对应的自生系统镜像到所述云硬盘标识对应的目标云硬盘,并将所述目标云硬盘挂载到所述目标虚拟机,通过所述目标云硬盘启动所述目标虚拟机;
其中,所述第二请求中包括所述虚拟机标识,所述目标镜像标识,以及所述目标云硬盘的云硬盘标识。
8.根据权利要求7所述的方法,其特征在于,所述从镜像存储仓库将目标镜像标识对应的自生系统镜像下载到目标云硬盘,之前还包括:
根据所述云硬盘标识,判断所述目标云硬盘是否已挂载到所述母机;
若确定所述目标云硬盘已挂载,根据所述目标镜像标识从镜像存储仓库中查找所述自生系统镜像;
将所述自生系统镜像下载到所述目标云硬盘。
9.根据权利要求8所述的方法,其特征在于,所述将所述目标云硬盘挂载到所述目标虚拟机,通过所述目标云硬盘启动系统故障的目标虚拟机,包括:
若确定所述目标虚拟机处于运行状态,则对所述目标虚拟机进行关机;
根据所述虚拟机标识,获取所述目标虚拟机的配置文件,通过在所述配置文件中添加所述云硬盘标识,以使所述目标云硬盘挂载到所述目标虚拟机;
在所述配置文件中将所述目标云硬盘的优先级,设置为具有启动所述目标虚拟机的各个启动硬盘的优先级中的最高优先级,所述启动硬盘为具有启动所述目标虚拟机功能的硬盘;
通过所述目标云硬盘启动所述目标虚拟机。
10.根据权利要求9所述的方法,其特征在于,所述通过所述目标云硬盘启动所述目标虚拟机,包括:
向所述自生系统镜像注入用户名和所述目标虚拟机的启动密码;
对所述目标虚拟机进行开机,所述用户名和所述目标虚拟机的启动密码是由所述服务器发送第二请求中携带的。
11.根据权利要求9所述的方法,其特征在于,所述通过所述目标云硬盘启动所述目标虚拟机,之后还包括:
接收所述服务器发送的第四请求,所述第四请求用于请求所述母机将所述目标云硬盘从所述目标虚拟机上进行解挂,所述第四请求中包括所述虚拟机标识和所述云硬盘标识,所述虚拟机标识是由控制台向所述服务器发送的第三请求中携带的;
根据所述虚拟机标识和所述云硬盘标识,解挂所述目标虚拟机上的目标云硬盘;
发送所述云硬盘标识至服务器,以使得所述服务器删除所述目标云硬盘中的所述自生系统镜像。
12.根据权利要求11所述的方法,其特征在于,所述根据所述虚拟机标识和所述云硬盘标识,解挂所述目标虚拟机上的目标云硬盘,包括:
对所述虚拟机标识对应的所述目标虚拟机进行关机;
获取所述目标虚拟机的配置文件,在所述配置文件中,删除所述云硬盘标识,以使得所述云硬盘标识解挂所述目标虚拟机上的目标云硬盘,并将所述配置文件中启动所述目标虚拟机的各个启动硬盘的优先级还原。
13.一种云环境虚拟机的修复装置,其特征在于,应用于服务器,所述装置包括:
接收模块,用于接收控制台发送的第一请求,所述第一请求用于请求修复系统故障的目标虚拟机,所述第一请求包括目标虚拟机的虚拟机标识;
查询模块,用于在镜像数据库中查询与所述虚拟机标识对应的预先制作的自生系统镜像的目标镜像标识;
创建模块,用于根据所述目标镜像标识创建目标云硬盘,将所述目标云硬盘挂载到所述目标虚拟机所在的母机,以使得所述母机从镜像存储仓库将所述目标镜像标识对应的自生系统镜像下载到所述目标云硬盘,并将所述目标云硬盘挂载到所述目标虚拟机,以及通过所述目标云硬盘启动所述目标虚拟机;
所述在镜像数据库中查询与所述虚拟机标识对应的自生系统镜像的目标镜像标识,之前还包括:
判断所述目标虚拟机是否处于第一状态,所述第一状态为关机状态或运行状态;
若确定所述目标虚拟机处于第一状态,则判断所述目标虚拟机的启动密码的复杂度是否满足预设条件,所述目标虚拟机的启动密码是由所述控制台在发送所述第一请求时设置的;
若确定所述目标虚拟机的启动密码的复杂度满足预设条件,则在镜像数据库中查询与所述虚拟机标识对应的自生系统镜像的目标镜像标识。
14.一种云环境虚拟机的修复装置,其特征在于,应用于母机,所述装置包括:
下载模块,用于从镜像存储仓库将目标镜像标识对应的自生系统镜像下载到目标云硬盘;
启动模块,将所述目标云硬盘挂载到目标虚拟机,通过所述目标云硬盘启动系统故障的目标虚拟机;
其中,所述目标云硬盘是服务器根据所述目标镜像标识创建,并挂载在所述母机的;目标镜像标识是所述服务器根据所述目标虚拟机的虚拟机标识从镜像数据库中查询得到的;所述目标虚拟机的虚拟机标识是第一请求中携带的,所述第一请求由控制器发送至所述服务器,用于请求修复所述目标虚拟机;
所述服务器查询所述目标镜像标识之前,还包括:
判断所述目标虚拟机是否处于第一状态,所述第一状态为关机状态或运行状态;
若确定所述目标虚拟机处于第一状态,则判断所述目标虚拟机的启动密码的复杂度是否满足预设条件,所述目标虚拟机的启动密码是由控制台在发送所述第一请求时设置的;
若确定所述目标虚拟机的启动密码的复杂度满足预设条件,则在镜像数据库中查询与所述虚拟机标识对应的自生系统镜像的目标镜像标识。
15.一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,其特征在于,所述处理器执行所述计算机程序以实现权利要求1-12任一项所述方法的步骤。
16.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-12任一项所述方法的步骤。
17.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-12任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410073153.2A CN117591247B (zh) | 2024-01-18 | 2024-01-18 | 云环境虚拟机的修复方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410073153.2A CN117591247B (zh) | 2024-01-18 | 2024-01-18 | 云环境虚拟机的修复方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117591247A CN117591247A (zh) | 2024-02-23 |
CN117591247B true CN117591247B (zh) | 2024-04-26 |
Family
ID=89910236
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410073153.2A Active CN117591247B (zh) | 2024-01-18 | 2024-01-18 | 云环境虚拟机的修复方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117591247B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102662783A (zh) * | 2012-03-20 | 2012-09-12 | 浪潮电子信息产业股份有限公司 | 一种桌面云环境下修复虚拟机的方法 |
CN103853595A (zh) * | 2012-11-29 | 2014-06-11 | 国际商业机器公司 | 用于替换虚拟机盘的方法和系统 |
CN106598658A (zh) * | 2016-12-07 | 2017-04-26 | 国云科技股份有限公司 | 一种Windows的ghost文件还原到虚拟机的方法 |
CN114840362A (zh) * | 2022-04-29 | 2022-08-02 | 济南浪潮数据技术有限公司 | 一种云主机恢复方法、装置、介质 |
CN115437749A (zh) * | 2022-09-30 | 2022-12-06 | 招商局金融科技有限公司 | 基于OpenStack集群的云主机救援方法、装置、设备及存储介质 |
CN117290059A (zh) * | 2023-11-27 | 2023-12-26 | 四川中电启明星信息技术有限公司 | 一种跨芯片架构的linux虚拟机转移方法及系统 |
-
2024
- 2024-01-18 CN CN202410073153.2A patent/CN117591247B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102662783A (zh) * | 2012-03-20 | 2012-09-12 | 浪潮电子信息产业股份有限公司 | 一种桌面云环境下修复虚拟机的方法 |
CN103853595A (zh) * | 2012-11-29 | 2014-06-11 | 国际商业机器公司 | 用于替换虚拟机盘的方法和系统 |
CN106598658A (zh) * | 2016-12-07 | 2017-04-26 | 国云科技股份有限公司 | 一种Windows的ghost文件还原到虚拟机的方法 |
CN114840362A (zh) * | 2022-04-29 | 2022-08-02 | 济南浪潮数据技术有限公司 | 一种云主机恢复方法、装置、介质 |
CN115437749A (zh) * | 2022-09-30 | 2022-12-06 | 招商局金融科技有限公司 | 基于OpenStack集群的云主机救援方法、装置、设备及存储介质 |
CN117290059A (zh) * | 2023-11-27 | 2023-12-26 | 四川中电启明星信息技术有限公司 | 一种跨芯片架构的linux虚拟机转移方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN117591247A (zh) | 2024-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11178207B2 (en) | Software version control without affecting a deployed container | |
US9304752B2 (en) | Software deployment in a distributed virtual machine environment | |
US9667496B2 (en) | Configuration updates across peer storage systems | |
CN112104723B (zh) | 一种多集群的数据处理系统及方法 | |
US11385903B2 (en) | Firmware update patch | |
CN110032413B (zh) | 一种桌面虚拟化方法、相关设备及计算机存储介质 | |
US8904159B2 (en) | Methods and systems for enabling control to a hypervisor in a cloud computing environment | |
US11340893B2 (en) | Mobile application update preserving changes to the application made by a client | |
CN111527474B (zh) | 软件功能的动态交付 | |
CN113296792B (zh) | 存储方法、装置、设备、存储介质和系统 | |
US9170850B2 (en) | Minimizing workload migrations during cloud maintenance operations | |
US10838751B1 (en) | Virtual machine configuration | |
CN110945480A (zh) | 用于更新和加载应用程序的系统和方法 | |
US9747091B1 (en) | Isolated software installation | |
US11113075B2 (en) | Launching a middleware-based application | |
US20220385532A1 (en) | Adding host systems to existing containerized clusters | |
CN112015448A (zh) | 一种基于空中下载技术的系统升级方法及装置 | |
CN115039100A (zh) | 为安全访客保留一个或多个安全模块 | |
US10768961B2 (en) | Virtual machine seed image replication through parallel deployment | |
CN116028163A (zh) | 一种容器组的动态链接库调度方法、装置及存储介质 | |
CN117591247B (zh) | 云环境虚拟机的修复方法、装置及电子设备 | |
US11847611B2 (en) | Orchestrating and automating product deployment flow and lifecycle management | |
US20230142148A1 (en) | Automated Deployment of Enterprise Archive with Dependency on Application Server Via Script | |
US11953972B2 (en) | Selective privileged container augmentation | |
US20230318925A1 (en) | Local arrangement of remote deployment |
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 |