CN112181593A - 虚拟机调度方法、装置、设备及存储介质 - Google Patents

虚拟机调度方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN112181593A
CN112181593A CN202011032087.2A CN202011032087A CN112181593A CN 112181593 A CN112181593 A CN 112181593A CN 202011032087 A CN202011032087 A CN 202011032087A CN 112181593 A CN112181593 A CN 112181593A
Authority
CN
China
Prior art keywords
virtual machine
standby virtual
nfs server
identification information
standby
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.)
Pending
Application number
CN202011032087.2A
Other languages
English (en)
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.)
Capitalonline Data Service Co ltd
Original Assignee
Capitalonline Data Service 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 Capitalonline Data Service Co ltd filed Critical Capitalonline Data Service Co ltd
Priority to CN202011032087.2A priority Critical patent/CN112181593A/zh
Publication of CN112181593A publication Critical patent/CN112181593A/zh
Pending legal-status Critical Current

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/4557Distribution of virtual machine instances; Migration and load balancing

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)

Abstract

本申请提出一种虚拟机调度方法、装置、设备及存储介质,该方法包括:第一设备接收网络文件系统NFS服务器的状态信息;该第一设备根据该状态信息,确定该NFS服务器是否出现故障;在该第一设备确定该NFS服务器出现故障的情况下,向第二设备发送切换请求,该切换请求用于指示该第二设备根据备用虚拟机的标识信息将该NFS服务器切换为该备用虚拟机。实现了对NFS服务器故障的有效应对和处理,使得NFS服务器可以提供持续稳定的服务,从而提高了NFS服务器中数据的安全性。

Description

虚拟机调度方法、装置、设备及存储介质
技术领域
本申请涉及计算机技术领域,尤其涉及一种虚拟机调度方法、装置、设备及存储介质。
背景技术
随着计算机技术的不断发展,现有技术中出现了诸多能够提高计算机工作效率的技术,例如,虚拟化为其中一种。
虚拟化是指通过虚拟化技术将一台物理的计算机虚拟为多个逻辑计算机,其中,每个逻辑计算机可作为一个虚拟机。也就是说,可以在一台物理的计算机上同时运行多个逻辑计算机。另外,每个逻辑计算机上可以运行有不同的操作系统。此外,每个逻辑计算机上还可以安装有相应的应用程序,从而使得不同逻辑计算机上的应用程序可以相互独立运行而互不影响。
现有技术中,虚拟机可以有多种应用,其中一种应用是将虚拟机作为网络文件系统(Network File System,NFS)服务器,NFS服务器可以为客户端提供NFS服务。但是,NFS服务器在一些情况下可能会出现故障,导致NFS服务器无法提供持续稳定的服务,同时降低了NFS服务器中数据的安全性。
发明内容
本申请实施例提供一种虚拟机调度方法、装置、设备及存储介质,以解决相关技术存在的问题,技术方案如下:
第一方面,本申请实施例提供了一种虚拟机调度方法,包括:
第一设备接收网络文件系统NFS服务器的状态信息;
该第一设备根据该状态信息,确定该NFS服务器是否出现故障;
在该第一设备确定该NFS服务器出现故障的情况下,向第二设备发送切换请求,该切换请求用于指示该第二设备根据备用虚拟机的标识信息将该NFS服务器切换为该备用虚拟机。
在一种实施方式中,该状态信息包括故障类型;
该第一设备根据该状态信息,确定该NFS服务器是否出现故障,包括:
该第一设备确定该状态信息中的故障类型是否为预设类型;
若该故障类型为预设类型,则该第一设备根据该预设类型向该NFS服务器发送故障验证信息;
若该第一设备在预设时间内未接收到该NFS服务器的响应信息,则确定该NFS服务器出现故障。
在一种实施方式中,该预设类型包括如下至少一种:该NFS服务器超时故障、该NFS服务器通信故障、NFS服务故障。
第二方面,本申请实施例提供了一种虚拟机调度方法,包括:
第二设备接收第一设备在确定NFS服务器出现故障时发送的切换请求;
该第二设备根据该切换请求获取备用虚拟机的标识信息;
该第二设备根据该备用虚拟机的标识信息,将该NFS服务器切换为该备用虚拟机。
在一种实施方式中,该第二设备根据该切换请求获取备用虚拟机的标识信息,包括:
该第二设备根据该切换请求,查询第一预设表;
若该第一预设表包括备用虚拟机的标识信息,则该第二设备从第一预设表中获取备用虚拟机的标识信息。
在一种实施方式中,若该第一预设表中没有备用虚拟机的标识信息,则该第二设备创建备用虚拟机。
在一种实施方式中,该第二设备根据该切换请求获取备用虚拟机的标识信息,包括:
该第二设备根据该切换请求,向第三设备发送标识获取请求,该标识获取请求用于请求备用虚拟机的标识信息;
该第二设备从该第三设备接收备用虚拟机的标识信息。
在一种实施方式中,该方法还包括:
若该第二设备未从该第三设备接收到备用虚拟机的标识信息,则该第二设备创建备用虚拟机。
在一种实施方式中,将该NFS服务器切换为该备用虚拟机,包括:
将该NFS服务器的存储盘迁移到该备用虚拟机;
将该NFS服务器的IP地址和该备用虚拟机的IP地址进行互换。
在一种实施方式中,将该NFS服务器的存储盘迁移到该备用虚拟机,包括:
将该NFS服务器的存储盘迁移到该备用虚拟机、启动该备用虚拟机中的NFS服务、以及根据该存储盘中存储的数据配置该备用虚拟机的共享目录。
第三方面,本申请实施例提供了一种虚拟机调度方法,包括:
第三设备接收第二设备发送的标识获取请求,该标识获取请求用于请求备用虚拟机的标识信息;
该第三设备根据该标识获取请求,查询第一预设表;
若该第一预设表包括备用虚拟机的标识信息,则该第三设备将该备用虚拟机的标识信息发送给该第二设备;
若该第一预设表没有备用虚拟机的标识信息,则该第三设备创建备用虚拟机,并将创建完成的备用虚拟机的标识信息发送给该第二设备。
在一种实施方式中,第三设备接收第二设备发送的标识获取请求之前,该方法还包括:
该第三设备获取第二预设表,该第二预设表包括备用虚拟机的预期数量、以及备用虚拟机的目标配置信息;
该第三设备根据该目标配置信息创建该预期数量的备用虚拟机;
该第三设备将已创建的备用虚拟机的信息存储在该第一预设表中;
其中,该备用虚拟机的信息包括如下至少一种:
该备用虚拟机的标识信息、该备用虚拟机的地址信息、该备用虚拟机所属的可用区、该备用虚拟机的实际配置信息。
在一种实施方式中,第三设备接收第二设备发送的标识获取请求之前,该方法还包括:
该第三设备获取第二预设表中包括的备用虚拟机的预期数量;
该第三设备比较该备用虚拟机的预期数量和该第一预设表中实际可用的备用虚拟机的数量;
若该备用虚拟机的预期数量大于实际可用的备用虚拟机的数量,则该第三设备创建预设数量的备用虚拟机,该预设数量为该备用虚拟机的预期数量与实际可用的备用虚拟机的数量的差值的绝对值;
若该备用虚拟机的预期数量小于实际可用的备用虚拟机的数量,则该第三设备删除该预设数量的备用虚拟机。
在一种实施方式中,该方法还包括:
在该第三设备创建或删除该预设数量的备用虚拟机之后,该第三设备更新该第一预设表。
第四方面,本申请实施例提供了一种虚拟机调度装置,该装置包括:
接收模块,用于接收网络文件系统NFS服务器的状态信息;
确定模块,用于根据该状态信息,确定该NFS服务器是否出现故障;
发送模块,用于在该确定模块确定该NFS服务器出现故障的情况下,向第二设备发送切换请求,该切换请求用于指示该第二设备根据备用虚拟机的标识信息将该NFS服务器切换为该备用虚拟机。
在一种实施方式中,该状态信息包括故障类型;确定模块具体用于:确定该状态信息中的故障类型是否为预设类型;若该故障类型为预设类型,则发送模块用于根据该预设类型向该NFS服务器发送故障验证信息;若该第一设备在预设时间内未接收到该NFS服务器的响应信息,则确定模块确定该NFS服务器出现故障。
在一种实施方式中,该预设类型包括如下至少一种:该NFS服务器超时故障、该NFS服务器通信故障、NFS服务故障。
第五方面,本申请实施例提供了一种虚拟机调度装置,该装置包括:
接收模块,用于接收第一设备在确定NFS服务器出现故障时发送的切换请求;
获取模块,用于根据该切换请求获取备用虚拟机的标识信息;
切换模块,用于根据该备用虚拟机的标识信息,将该NFS服务器切换为该备用虚拟机。
在一种实施方式中,获取模块具体用于:根据该切换请求,查询第一预设表;若该第一预设表包括备用虚拟机的标识信息,则从第一预设表中获取备用虚拟机的标识信息。
在一种实施方式中,该装置还包括:创建模块,用于在该第一预设表中没有备用虚拟机的标识信息的情况下,创建备用虚拟机。
在一种实施方式中,获取模块具体用于:根据该切换请求,向第三设备发送标识获取请求,该标识获取请求用于请求备用虚拟机的标识信息;从该第三设备接收备用虚拟机的标识信息。
在一种实施方式中,创建模块还用于:在该第二设备未从该第三设备接收到备用虚拟机的标识信息的情况下,创建备用虚拟机。
在一种实施方式中,切换模块具体用于:将该NFS服务器的存储盘迁移到该备用虚拟机;将该NFS服务器的IP地址和该备用虚拟机的IP地址进行互换。
在一种实施方式中,切换模块具体用于:将该NFS服务器的存储盘迁移到该备用虚拟机、启动该备用虚拟机中的NFS服务、以及根据该存储盘中存储的数据配置该备用虚拟机的共享目录。
第六方面,本申请实施例提供了一种虚拟机调度装置,该装置包括:
接收模块,用于接收第二设备发送的标识获取请求,该标识获取请求用于请求备用虚拟机的标识信息;
查询模块,用于根据该标识获取请求,查询第一预设表;
发送模块,用于在该第一预设表包括备用虚拟机的标识信息的情况下,将该备用虚拟机的标识信息发送给该第二设备;
创建模块,用于在该第一预设表没有备用虚拟机的标识信息的情况下,创建备用虚拟机,并将创建完成的备用虚拟机的标识信息发送给该第二设备。
在一种实施方式中,该装置还包括:获取模块,用于在接收模块接收第二设备发送的标识获取请求之前,获取第二预设表,该第二预设表包括备用虚拟机的预期数量、以及备用虚拟机的目标配置信息;创建模块还用于根据该目标配置信息创建该预期数量的备用虚拟机;该装置还包括:存储模块,用于将已创建的备用虚拟机的信息存储在该第一预设表中;其中,该备用虚拟机的信息包括如下至少一种:该备用虚拟机的标识信息、该备用虚拟机的地址信息、该备用虚拟机所属的可用区、该备用虚拟机的实际配置信息。
在一种实施方式中,获取模块还用于在接收模块接收第二设备发送的标识获取请求之前,获取第二预设表中包括的备用虚拟机的预期数量;该装置还包括:比较模块,用于比较该备用虚拟机的预期数量和该第一预设表中实际可用的备用虚拟机的数量;创建模块还用于:在该备用虚拟机的预期数量大于实际可用的备用虚拟机的数量的情况下,创建预设数量的备用虚拟机,该预设数量为该备用虚拟机的预期数量与实际可用的备用虚拟机的数量的差值的绝对值;该装置还包括:删除模块,用于在该备用虚拟机的预期数量小于实际可用的备用虚拟机的数量的情况下,删除该预设数量的备用虚拟机。
在一种实施方式中,该装置还包括:更新模块,用于在创建或删除该预设数量的备用虚拟机之后,更新该第一预设表。
第七方面,本申请实施例提供了一种服务器,该设备包括:存储器和处理器。其中,该存储器和该处理器通过内部连接通路互相通信,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,并且当该处理器执行该存储器存储的指令时,使得该处理器执行上述各方面任一种实施方式中的方法。
第八方面,本申请实施例提供了一种计算机可读存储介质,计算机可读存储介质存储计算机程序,当计算机程序在计算机上运行时,上述各方面任一种实施方式中的方法被执行。
上述技术方案中的优点或有益效果至少包括:通过NFS服务器向第一设备上报NFS服务器的状态信息,在第一设备根据该状态信息确定该NFS服务器出现故障的情况下,向第二设备发送切换请求。第二设备可以根据该切换请求获取备用虚拟机的标识信息,并根据该备用虚拟机的标识信息,将该故障的NFS服务器切换为该备用虚拟机,使得该备用虚拟机可以作为NFS服务器继续提供服务,从而实现了对NFS服务器故障的有效应对和处理,使得NFS服务器可以提供持续稳定的服务,从而提高了NFS服务器中数据的安全性。
上述概述仅仅是为了说明书的目的,并不意图以任何方式进行限制。除上述描述的示意性的方面、实施方式和特征之外,通过参考附图和以下的详细描述,本申请进一步的方面、实施方式和特征将会是容易明白的。
附图说明
在附图中,除非另外规定,否则贯穿多个附图相同的附图标记表示相同或相似的部件或元素。这些附图不一定是按照比例绘制的。应该理解,这些附图仅描绘了根据本申请公开的一些实施方式,而不应将其视为是对本申请范围的限制。
图1为本申请一实施例的虚拟机调度方法的流程图;
图2为本申请一实施例的应用场景的示意图;
图3为本申请一实施例的虚拟机调度的流程图;
图4为本申请另一实施例的虚拟机调度的流程图;
图5为本申请另一实施例的虚拟机调度的流程图;
图6为本申请另一实施例的虚拟机调度的流程图;
图7为本申请另一实施例的虚拟机调度的流程图;
图8为本申请另一实施例的应用场景的示意图;
图9为本申请一实施例的虚拟机调度装置的结构框图;
图10为本申请另一实施例的虚拟机调度装置的结构框图;
图11为本申请另一实施例的虚拟机调度装置的结构框图;
图12为本申请一实施例的服务器的结构框图。
具体实施方式
在下文中,仅简单地描述了某些示例性实施例。正如本领域技术人员可认识到的那样,在不脱离本申请的精神或范围的情况下,可通过各种不同方式修改所描述的实施例。因此,附图和描述被认为本质上是示例性的而非限制性的。
虚拟化是指通过虚拟化技术将一台物理的计算机虚拟为多个逻辑计算机,其中,每个逻辑计算机可作为一个虚拟机。也就是说,可以在一台物理的计算机上同时运行多个逻辑计算机。另外,每个逻辑计算机上可以运行有不同的操作系统。此外,每个逻辑计算机上还可以安装有相应的应用程序,从而使得不同逻辑计算机上的应用程序可以相互独立运行而互不影响。
另外,虚拟化可以采用软件的方法对信息技术(Information Technology,IT)资源进行重新定义、划分。从而使得IT资源可以被动态分配、灵活调度、跨域共享,以提高IT资源的利用率,使IT资源能够真正成为社会基础设施,服务于各行各业中灵活多变的应用需求。通过虚拟化技术创建的多个虚拟机可以共享物理计算机的物理层的存储资源。
现有技术中,虚拟机可以有多种应用,其中一种应用是将虚拟机作为网络文件系统(Network File System,NFS)服务器,例如,一个虚拟机可以作为一个NFS服务器,NFS服务器也可以称为NFS文件服务器或文件存储服务器。具体的,NFS服务器可以为客户端提供NFS服务。但是,NFS服务器在一些情况下可能会出现故障,导致NFS服务器无法提供持续稳定的服务,同时降低了NFS服务器中数据的安全性。为了解决该问题,本申请实施例提供了一种虚拟机调度方法。下面结合具体的实施例对本申请实施例提供的一种虚拟机调度方法进行详细介绍。
图1示出根据本申请一实施例的虚拟机调度方法的流程图。如图1所示,该方法可以包括:
S101、第一设备接收网络文件系统NFS服务器的状态信息。
本申请实施例所述的方法可以适应于如图2所示的应用场景。如图2所示,NFS服务器集群包括多个NFS服务器,每个NFS服务器又可以称为NFS文件服务器或文件存储服务器。本实施例中的每个NFS服务器具体可以是基于虚拟(VMware)技术创建的虚拟机。也就是说,本实施例中的虚拟机可以是VMware类型的虚拟机。具体的,本申请实施例所述的方法可以应用于计算机领域的云计算,基于VMware技术对NFS服务器进行监控和调度。
具体的,NFS服务器可以提供NFS服务(NFS service)或文件存储服务。每个NFS服务器可对应有一个或多个存储数据的存储盘,根据每个NFS服务器对应的一个或多个存储盘中的数据可生成该NFS服务器的共享目录,该NFS服务器在提供NFS服务或文件存储服务时,可以将该共享目录共享给客户端或其他应用。
具体的,每个NFS服务器可同时运行有NFS服务和代理(Agent)服务。其中,在NFSHA检测和告警过程中,代理服务用于定期或非定期检测NFS服务器的状态信息,并将NFS服务器的状态信息上报给第一设备,第一设备具体可以是如图2所示的21。其中,代理服务定期或非定期检测NFS服务器的状态信息的过程可以称为NFS高可用性集群(HighlyAvailable,HA)检测过程。例如,图2所示的NFS服务器集群包括多个NFS服务器,每个NFS服务器中运行的代理服务可以向第一设备21发送该代理服务对应的NFS服务器的状态信息。相应的,第一设备21可以接收到NFS服务器集群中每个NFS服务器的状态信息。可选的,状态信息也可以称为健康状态信息。该状态信息可以包括状态信息的检测时间和故障类型。可选的,第一设备21中可运行有通知(Notifier)服务。
S102、该第一设备根据该状态信息,确定该NFS服务器是否出现故障。
第一设备21在接收到NFS服务器的状态信息时,可以根据该NFS服务器的状态信息,确定该NFS服务器是否出现故障。具体的,根据该NFS服务器的状态信息,确定该NFS服务器是否出现故障的过程具体可以是告警过程。
S103、在该第一设备确定该NFS服务器出现故障的情况下,向第二设备发送切换请求,该切换请求用于指示该第二设备根据备用虚拟机的标识信息将该NFS服务器切换为该备用虚拟机。
例如,在第一设备21确定该NFS服务器出现故障的情况下,可以向第二设备22发送切换请求,第二设备22可以称为虚机管理中心。该切换请求还可以称为切换NFS服务器请求。在第二设备22接收到第一设备21发送的切换请求的情况下,第二设备22可以根据该切换请求获取备用虚拟机的标识信息,并根据该备用虚拟机的标识信息,将该NFS服务器切换为该备用虚拟机。
可以理解的是,第一设备21向第二设备22发送的切换请求可以包括第一设备21检测到的已故障的NFS服务器的个数。具体的,在该切换请求中包括的已故障的NFS服务器的个数为1的情况下,第二设备22可以获取一个备用虚拟机的标识信息,并将该故障的NFS服务器替换为备用虚拟机。在该切换请求中包括的已故障的NFS服务器的个数为多个的情况下,第二设备22可以为每个故障的NFS服务器分别获取一个备用虚拟机的标识信息,并将每个故障的NFS服务器替换为一个备用虚拟机。另外,第一设备21向第二设备22发送的切换请求还可以包括已故障的NFS服务器的标识信息、网络协议(Internet Protocol,IP)地址、端口号等信息。
本申请实施例通过NFS服务器向第一设备上报NFS服务器的状态信息,在第一设备根据该状态信息确定该NFS服务器出现故障的情况下,向第二设备发送切换请求。第二设备可以根据该切换请求获取备用虚拟机的标识信息,并根据该备用虚拟机的标识信息,将该故障的NFS服务器切换为该备用虚拟机,使得该备用虚拟机可以作为NFS服务器继续提供服务,从而实现了对NFS服务器故障的有效应对和处理,使得NFS服务器可以提供持续稳定的服务,从而提高了NFS服务器中数据的安全性。
在上述实施例的基础上,该状态信息包括故障类型;该第一设备根据该状态信息,确定该NFS服务器是否出现故障,包括如图3所示的如下几个步骤:
S301、该第一设备确定该状态信息中的故障类型是否为预设类型。
例如,在第一设备21接收到NFS服务器的状态信息的情况下,可以根据该状态信息中包括的故障类型,检测该故障类型是否为预设类型。可选的,该预设类型包括如下至少一种:该NFS服务器超时故障、该NFS服务器通信故障、NFS服务故障。其中,该NFS服务器超时故障具体可以是指该NFS服务器中的代理服务超时上报状态信息。该NFS服务器(NFS server)通信故障具体可以是指该NFS服务器的网络通信故障。NFS服务故障具体可以是指NFS服务器中运行的NFS服务出现故障。在该NFS服务器超时故障、该NFS服务器通信故障和NFS服务故障中的至少一种出现的情况下,可以确定该NFS服务器出现故障。
S302、若该故障类型为预设类型,则该第一设备根据该预设类型向该NFS服务器发送故障验证信息。
例如,在第一设备21确定NFS服务器的状态信息包括该NFS服务器超时故障、该NFS服务器通信故障和NFS服务故障中的至少一种的情况下,第一设备21可以确定该NFS服务器出现故障。
或者在第一设备21确定NFS服务器的状态信息包括该NFS服务器超时故障、该NFS服务器通信故障和NFS服务故障中的至少一种的情况下,第一设备21还可以进行二次确认,例如,NFS服务器的状态信息还可以包括NFS服务器的IP地址和端口号。第一设备21可以根据NFS服务器的IP地址和端口号向该NFS服务器发送故障验证信息。第一设备21确认故障确实存在后,可以上报切换NFS服务器请求到虚机管理中心。
S303、若该第一设备在预设时间内未接收到该NFS服务器的响应信息,则确定该NFS服务器出现故障。
例如,在NFS服务器的状态信息包括的故障类型为NFS服务器超时故障的情况下,第一设备21可以向该NFS服务器发送故障验证信息,该故障验证信息用于请求该NFS服务器上报状态信息。若第一设备21在发送故障验证信息之后的预设时间内未接收到该NFS服务器的响应信息,例如状态信息,则第一设备21确定该NFS服务器出现故障。
或者在NFS服务器的状态信息包括的故障类型为该NFS服务器通信故障的情况下,第一设备21可以向该NFS服务器发送故障验证信息,该故障验证信息用于检测该NFS服务器的网络通信。若第一设备21在发送故障验证信息之后的预设时间内未接收到该NFS服务器的响应信息,则第一设备21确定该NFS服务器出现故障。
再例如,在NFS服务器的状态信息包括的故障类型为NFS服务故障的情况下,第一设备21可以向该NFS服务器发送故障验证信息,该故障验证信息用于查询该NFS服务器的共享目录。若第一设备21在发送故障验证信息之后的预设时间内未接收到该NFS服务器的响应信息,例如共享目录,则第一设备21确定该NFS服务器出现故障。
本实施例通过第一设备确定该状态信息中的故障类型是否为预设类型,在该故障类型为预设类型的情况下,该第一设备根据该预设类型向该NFS服务器发送故障验证信息,在该第一设备在预设时间内未接收到该NFS服务器的响应信息的情况下,第一设备确定该NFS服务器出现故障,实现了对NFS服务器出现故障的二次确认,从而提高了NFS服务器故障检测的准确度。
图4示出根据本申请另一实施例的虚拟机调度方法的流程图。如图4所示,该方法可以包括:
S401、第二设备接收第一设备在确定NFS服务器出现故障时发送的切换请求。
如图2所示,在第一设备21确定NFS服务器出现故障的情况下,向第二设备22发送切换请求,相应的,第二设备22接收第一设备21发送的切换请求。第二设备22可以执行故障自动切换算法。该故障自动切换算法可以包括如下S402和S403的步骤。在本实施例中,第一设备21可以是一个物理的计算机,或者第一设备21还可以是一个虚拟机。
S402、该第二设备根据该切换请求获取备用虚拟机的标识信息。
例如,在第二设备22接收到第一设备21发送的切换请求的情况下,第二设备22可以根据该切换请求获取备用虚拟机的标识信息。具体的,第二设备22根据该切换请求获取备用虚拟机的标识信息可以有多种实现方式,下面介绍几种可行的实现方式。
在一种可行的实现方式中,该第二设备根据该切换请求获取备用虚拟机的标识信息,包括:该第二设备根据该切换请求,查询第一预设表;若该第一预设表包括备用虚拟机的标识信息,则该第二设备从第一预设表中获取备用虚拟机的标识信息。
例如,在第二设备22接收到第一设备21发送的切换请求的情况下,第二设备22根据该切换请求查询第一预设表,该第一预设表具体可以是虚机池状态表。如图2所示,虚机池中包括多个虚拟机,虚机池中的虚拟机是备用虚拟机,也就是说,虚机池中的虚拟机还未被用作NFS服务器,并且虚机池中的虚拟机处于准备(ready)状态。虚机池状态表用于记录虚机池中备用虚拟机的信息,例如,备用虚拟机的标识信息、备用虚拟机的地址信息、备用虚拟机所属的可用区(Availability Zones,AZ)、备用虚拟机的实际配置信息等。其中,备用虚拟机的标识信息例如可以是标识号码(Identity,ID),备用虚拟机的地址信息例如可以是IP地址,备用虚拟机的实际配置信息具体可以包括该备用虚拟机对应的中央处理器(Central Processing Unit,CPU)和内存。该虚机池状态表可以存储在数据库中,第二设备22可以在该数据库中查询该虚机池状态表。在第二设备22确定该虚机池状态表中包括备用虚拟机的标识信息的情况下,可以从该虚机池状态表中获取备用虚拟机的标识信息。
可选的,若该第一预设表中没有备用虚拟机的标识信息,则该第二设备创建备用虚拟机。
例如,在第二设备22确定该虚机池状态表中没有备用虚拟机的标识信息的情况下,第二设备22可以自行创建备用虚拟机。例如,第二设备22可以自行调用VMware虚拟机创建接口创建备用虚拟机,再进行切换。
在另一种可行的实现方式中,该第二设备根据该切换请求获取备用虚拟机的标识信息,包括:该第二设备根据该切换请求,向第三设备发送标识获取请求,该标识获取请求用于请求备用虚拟机的标识信息;该第二设备从该第三设备接收备用虚拟机的标识信息。
例如,在第二设备22接收到第一设备21发送的切换请求的情况下,第二设备22根据该切换请求向第三设备23发送标识获取请求,该标识获取请求用于请求备用虚拟机的标识信息。第三设备23可以运行虚机池管理服务。第三设备23可以是一个物理计算机或者是一个虚拟机。另外,可以理解的是,本实施例中的第一设备、第二设备、第三设备可以是同一个设备,或者可以是相互独立的不同的设备。
例如,该标识获取请求包括第二设备22请求获取的备用虚拟机的个数。在一些实施例中,该标识获取请求还可以包括第二设备22请求获取的备用虚拟机所属的可用区。具体的,可用区包括一个或多个服务器集群,每个服务器集群包括一个或多个物理计算机,每个物理计算机包括一个或多个虚拟机。第三设备23根据第二设备22发送的标识获取请求获取备用虚拟机的标识信息,并将备用虚拟机的标识信息发送给第二设备22,相应的,第二设备22可以接收第三设备23反馈的备用虚拟机的标识信息。
可选的,若该第二设备未从该第三设备接收到备用虚拟机的标识信息,则该第二设备创建备用虚拟机。
例如,在虚机池中没有可用的备用虚拟机的情况下,第三设备23根据第二设备22发送的标识获取请求将无法获取到备用虚拟机的标识信息,此时第三设备23可以向第二设备22发送失败信息,或者第三设备23可以不向第二设备22发送信息。在第二设备22确定未从该第三设备23成功接收到备用虚拟机的标识信息的情况下,第二设备22可以自行创建备用虚拟机。
S403、该第二设备根据该备用虚拟机的标识信息,将该NFS服务器切换为该备用虚拟机。
例如,第二设备22中运行有切换算法,该切换算法可以根据第一设备21发送的切换请求从虚机池中选择一个备用虚拟机,并将该NFS服务器切换为该备用虚拟机。
可选的,将该NFS服务器切换为该备用虚拟机,包括:将该NFS服务器的存储盘迁移到该备用虚拟机;将该NFS服务器的IP地址和该备用虚拟机的IP地址进行互换。
例如,第二设备22在将已故障的NFS服务器切换为备用虚拟机时,第二设备22可以控制该已故障的NFS服务器关机,进一步将已故障的NFS服务器的存储盘迁移到该备用虚拟机。示例性地,NFS服务器的存储盘可以是虚拟机VMware创建的虚拟硬盘格式(VMWareVirtual Machine Disk Format,VMDK)存储盘。另外,第二设备22还可以将已故障的NFS服务器的IP地址和该备用虚拟机的IP地址进行互换,从而保证切换后的备用虚拟机可以根据已故障的NFS服务器的IP地址继续正常的为客户端提供NFS服务,也就是说,可以保证NFS服务器对外提供的NFS服务的IP地址不变。
可选的,将该NFS服务器的存储盘迁移到该备用虚拟机,包括:将该NFS服务器的存储盘迁移到该备用虚拟机、启动该备用虚拟机中的NFS服务、以及根据该存储盘中存储的数据配置该备用虚拟机的共享目录。
例如,第二设备22将已故障的NFS服务器的VMDK存储盘迁移到该备用虚拟机的同时,第二设备22还可以启动该备用虚拟机中的NFS服务、以及根据该备用虚拟机中的VMDK存储盘中存储的数据配置该备用虚拟机的共享目录,以便该备用虚拟机可以将该共享目录共享给客户端或其他应用。
本实施例通过第二设备将该NFS服务器切换为该备用虚拟机时,将该NFS服务器的存储盘迁移到该备用虚拟机,从而保证了备用虚拟机中数据的完整性。另外,通过将该NFS服务器的IP地址和该备用虚拟机的IP地址进行互换,可以保证NFS服务器对外提供的NFS服务的IP地址不变,即保证切换后的备用虚拟机可以根据已故障的NFS服务器的IP地址继续正常的为客户端提供NFS服务,提高了NFS服务的可靠性。
图5示出根据本申请另一实施例的虚拟机调度方法的流程图。如图5所示,该方法可以包括:
S501、第三设备接收第二设备发送的标识获取请求,该标识获取请求用于请求备用虚拟机的标识信息。
例如,第二设备22在新创建虚拟机或切换已故障NFS服务器时,第二设备22可以向第三设备23发送的标识获取请求。相应的,第三设备23可以接收第二设备22发送的标识获取请求,该标识获取请求用于请求备用虚拟机的标识信息。
S502、该第三设备根据该标识获取请求,查询第一预设表。
例如,第三设备23可以运行虚机池调度算法。在第三设备23接收到第二设备22发送的标识获取请求的情况下,第三设备23可以根据该标识获取请求查询第一预设表,该第一预设表可以是如上所述的虚机池状态表。具体的,第三设备23可以从数据库中读取该虚机池状态表。
S503、若该第一预设表包括备用虚拟机的标识信息,则该第三设备将该备用虚拟机的标识信息发送给该第二设备。
在第三设备23确定该虚机池状态表中包括备用虚拟机的标识信息的情况下,第三设备23可以从该虚机池状态表中获取备用虚拟机的标识信息,并将该备用虚拟机的标识信息发送给该第二设备22。进一步,第二设备22可以根据该备用虚拟机的标识信息,将已故障的NFS服务器切换为该备用虚拟机。
S504、若该第一预设表没有备用虚拟机的标识信息,则该第三设备创建备用虚拟机,并将创建完成的备用虚拟机的标识信息发送给该第二设备。
例如,在第三设备23确定该虚机池状态表中没有备用虚拟机的标识信息的情况下,第三设备23可以自行创建备用虚拟机,具体的,第三设备23可以自行调用VMware虚拟机创建接口创建备用虚拟机,并将创建完成的备用虚拟机的标识信息发送给该第二设备22。
本实施例通过第三设备接收第二设备发送的标识获取请求,并根据该标识获取请求,查询第一预设表,若该第一预设表包括备用虚拟机的标识信息,则该第三设备将该备用虚拟机的标识信息发送给该第二设备。若该第一预设表没有备用虚拟机的标识信息,则该第三设备创建备用虚拟机,并将创建完成的备用虚拟机的标识信息发送给该第二设备。使得第二设备可以通过第三设备获取到备用虚拟机的标识信息,节省了第二设备创建备用虚拟机所需的时间。
在上述实施例的基础上,第三设备接收第二设备发送的标识获取请求之前,该方法还包括如图6所示的如下几个步骤:
S601、该第三设备获取第二预设表,该第二预设表包括备用虚拟机的预期数量、以及备用虚拟机的目标配置信息。
例如,数据库中还存储有第二预设表,该第二预设表具体可以是虚机池配置表。第三设备23可以从该数据库中获取虚机池配置表。例如,第二设备22在新创建虚拟机或切换已故障NFS服务器时,第二设备22可以向第三设备23发送的标识获取请求,第三设备23可以根据该标识获取请求从该数据库中读取虚机池配置表。该虚机池配置表可以包括备用虚拟机的预期数量、以及备用虚拟机的目标配置信息。其中,备用虚拟机的目标配置信息包括备用虚拟机的目标CPU和目标内存。具体的,虚机池配置表中的备用虚拟机的预期数量、以及备用虚拟机的目标配置信息可以是在初始化时配置的。
S602、该第三设备根据该目标配置信息创建该预期数量的备用虚拟机。
例如,在虚机池监控过程中,如果在初始化时虚机池中还没有备用虚拟机,此时,第三设备23可以根据备用虚拟机的目标配置信息,创建该预期数量的备用虚拟机,使得虚拟机中的备用虚拟机的个数为预期数量。该预期数量可以是用户设置的,也可以是第三设备23设置的。
S603、该第三设备将已创建的备用虚拟机的信息存储在该第一预设表中。
例如,当备用虚拟机的预期数量为8个,当第三设备23创建完8个备用虚拟机后,第三设备23可以将该8个备用虚拟机的信息存储在第一预设表例如虚机池状态表中。也就是说,第三设备23可以根据虚机池配置表生成虚机池状态表。其中,该备用虚拟机的信息包括如下至少一种:该备用虚拟机的标识信息、该备用虚拟机的地址信息、该备用虚拟机所属的可用区、该备用虚拟机的实际配置信息。
可选的,第三设备23可以根据可用区自动维护虚机池配置表,进一步,第三设备23可以根据该可用区和该可用区的虚机池配置表,生成该可用区对应的虚机池状态表。另外,在其他一些实施例中,第三设备23还可以根据虚机池配置表维护虚机池状态表。
下面结合一个实施例对第三设备23根据虚机池配置表维护虚机池状态表的过程进行说明。具体的,在上述实施例的基础上,第三设备接收第二设备发送的标识获取请求之前,该方法还包括如图7所示的如下几个步骤:
S701、该第三设备获取第二预设表中包括的备用虚拟机的预期数量。
例如,第三设备23可以定期或非定期的从数据库中获取虚机池配置表,并获取该虚机池配置表中包括的备用虚拟机的预期数量。
S702、该第三设备比较该备用虚拟机的预期数量和该第一预设表中实际可用的备用虚拟机的数量。
例如,第三设备23可以运行虚机池监控算法定期执行监控程序。将虚机池配置表中配置的备用虚机机的预期数量与虚机池状态表中实际可用的备用虚机数量进行对比。在获取到备用虚拟机的预期数量之后,进一步获取虚机池状态表中包括的实际可用的备用虚拟机的数量。其中,虚机池状态表中包括的实际可用的备用虚拟机的数量与如图2所示的虚机池中包括的备用虚拟机的数量相同。进一步,第三设备23比较备用虚拟机的预期数量和实际可用的备用虚拟机的数量。
S703、若该备用虚拟机的预期数量大于实际可用的备用虚拟机的数量,则该第三设备创建预设数量的备用虚拟机,该预设数量为该备用虚拟机的预期数量与实际可用的备用虚拟机的数量的差值的绝对值。
在备用虚拟机的预期数量大于实际可用的备用虚拟机的数量的情况下,第三设备23可以根据备用虚拟机的预期数量和实际可用的备用虚拟机的数量的差值,创建预设数量的备用虚拟机,该预设数量为该差值的绝对值。例如,第三设备23可以将用于创建预设数量的备用虚拟机的创建请求放入创建队列,进一步执行创建队列中的创建请求,从而使得实际可用的备用虚拟机的数量可以满足预期数量。
S704、若该备用虚拟机的预期数量小于实际可用的备用虚拟机的数量,则该第三设备删除该预设数量的备用虚拟机。
在备用虚拟机的预期数量小于实际可用的备用虚拟机的数量的情况下,第三设备23可以根据备用虚拟机的预期数量和实际可用的备用虚拟机的数量的差值,删除预设数量的备用虚拟机,该预设数量为该差值的绝对值。例如,第三设备23可以将用于删除预设数量的备用虚拟机的删除请求放入删除队列,进一步执行删除队列中的删除请求,从而使得实际可用的备用虚拟机的数量可以满足预期数量。
可选的,在该第三设备创建或删除该预设数量的备用虚拟机之后,该第三设备更新该第一预设表。
例如,第三设备23创建预设数量的备用虚拟机后,进一步将该预设数量的备用虚拟机的信息记录到虚机池状态表中。在第三设备23删除预设数量的备用虚拟机后,进一步将该预设数量的备用虚拟机的信息从该虚机池状态表中进行删除。从而使得虚机池状态表可以随着实际可用的备用虚拟机的数量变化而不断被更新。
本申请实施例通过第三设备获取第二预设表中包括的备用虚拟机的预期数量,并比较该备用虚拟机的预期数量和该第一预设表中实际可用的备用虚拟机的数量,若该备用虚拟机的预期数量大于实际可用的备用虚拟机的数量,则该第三设备创建预设数量的备用虚拟机,该预设数量为该备用虚拟机的预期数量与实际可用的备用虚拟机的数量的差值的绝对值;若该备用虚拟机的预期数量小于实际可用的备用虚拟机的数量,则该第三设备删除该预设数量的备用虚拟机,从而使得实际可用的备用虚拟机的数量可以满足预期数量。
下面结合一个具体的实施例对如上所述的虚拟机调度方法进行介绍。该虚拟机调度方法包括如图8所示的如下几个步骤:
S801、第三设备23从数据库24中的虚机池配置表获取备用虚拟机的预期数量。
S802、第三设备23创建预期数量的备用虚拟机。
S803、备用虚拟机将其信息发送给第三设备23。
S804、第三设备23将备用虚拟机的信息存储到数据库24中的虚机池状态表。
S805、NFS服务器向第一设备21发送NFS服务器的状态信息。
S806、第一设备21向NFS服务器发送故障验证信息。
S807、第一设备21未接收到NFS服务器的响应信息,第一设备21确定NFS服务器故障,并向第二设备22发送切换请求。
S808、第二设备22根据该切换请求向第三设备23发送标识获取请求。
S809、第三设备23根据标识获取请求查询数据库24中的虚机池状态表,从虚机池状态表中获取备用虚拟机的标识信息,并将备用虚拟机的标识信息反馈给第二设备22。
S810、第二设备22控制故障的NFS服务器关机。
S811、第二设备22将故障的NFS服务器的存储盘迁移到备用虚拟机。
S812、第二设备22将故障的NFS服务器的IP地址和备用虚拟机的IP地址进行互换。
S813、第三设备23监控和维护备用虚拟机,例如,经过S810-S813之后,备用虚拟机变成了NFS服务器,相当于虚机池中的备用虚拟机减少了,此时,第三设备23可以在虚机池中新创建虚拟机,使得虚机池中的备用虚拟机的数量保持预期数量。
本申请实施例通过NFS服务器向第一设备上报NFS服务器的状态信息,在第一设备根据该状态信息确定该NFS服务器出现故障的情况下,向第二设备发送切换请求。第二设备可以根据该切换请求获取备用虚拟机的标识信息,并根据该备用虚拟机的标识信息,将该故障的NFS服务器切换为该备用虚拟机,使得该备用虚拟机可以作为NFS服务器继续提供服务,从而实现了对NFS服务器故障的有效应对和处理,使得NFS服务器可以提供持续稳定的服务,从而提高了NFS服务器中数据的安全性。
图9示出根据本申请一实施例的虚拟机调度装置的结构框图。在本申请实施例中,该装置具体可以是如上实施例中的第一设备,或第一设备中的部件。如图9所示,该装置90可以包括:
接收模块91,用于接收网络文件系统NFS服务器的状态信息;
确定模块92,用于根据该状态信息,确定该NFS服务器是否出现故障;
发送模块93,用于在该确定模块确定该NFS服务器出现故障的情况下,向第二设备发送切换请求,该切换请求用于指示该第二设备根据备用虚拟机的标识信息将该NFS服务器切换为该备用虚拟机。
可选的,该状态信息包括故障类型;确定模块92具体用于:确定该状态信息中的故障类型是否为预设类型;若该故障类型为预设类型,则发送模块93用于根据该预设类型向该NFS服务器发送故障验证信息;若该第一设备在预设时间内未接收到该NFS服务器的响应信息,则确定模块92确定该NFS服务器出现故障。
可选的,该预设类型包括如下至少一种:该NFS服务器超时故障、该NFS服务器通信故障、NFS服务故障。
本申请实施例各装置中的各模块的功能可以参见上述方法中的对应描述,在此不再赘述。
图10示出根据本申请一实施例的虚拟机调度装置的结构框图。在本申请实施例中,该装置具体可以是如上实施例中的第二设备,或第二设备中的部件。如图10所示,该装置100可以包括:
接收模块101,用于接收第一设备在确定NFS服务器出现故障时发送的切换请求;
获取模块102,用于根据该切换请求获取备用虚拟机的标识信息;
切换模块103,用于根据该备用虚拟机的标识信息,将该NFS服务器切换为该备用虚拟机。
可选的,获取模块102具体用于:根据该切换请求,查询第一预设表;若该第一预设表包括备用虚拟机的标识信息,则从第一预设表中获取备用虚拟机的标识信息。
可选的,该装置100还包括:创建模块104,用于在该第一预设表中没有备用虚拟机的标识信息的情况下,创建备用虚拟机。
可选的,获取模块102具体用于:根据该切换请求,向第三设备发送标识获取请求,该标识获取请求用于请求备用虚拟机的标识信息;从该第三设备接收备用虚拟机的标识信息。
可选的,创建模块104还用于:在该第二设备未从该第三设备接收到备用虚拟机的标识信息的情况下,创建备用虚拟机。
可选的,切换模块103具体用于:将该NFS服务器的存储盘迁移到该备用虚拟机;将该NFS服务器的IP地址和该备用虚拟机的IP地址进行互换。
可选的,切换模块103具体用于:将该NFS服务器的存储盘迁移到该备用虚拟机、启动该备用虚拟机中的NFS服务、以及根据该存储盘中存储的数据配置该备用虚拟机的共享目录。
本申请实施例各装置中的各模块的功能可以参见上述方法中的对应描述,在此不再赘述。
图11示出根据本申请一实施例的虚拟机调度装置的结构框图。在本申请实施例中,该装置具体可以是如上实施例中的第三设备,或第三设备中的部件。如图11所示,该装置110可以包括:
接收模块111,用于接收第二设备发送的标识获取请求,该标识获取请求用于请求备用虚拟机的标识信息;
查询模块112,用于根据该标识获取请求,查询第一预设表;
发送模块113,用于在该第一预设表包括备用虚拟机的标识信息的情况下,将该备用虚拟机的标识信息发送给该第二设备;
创建模块114,用于在该第一预设表没有备用虚拟机的标识信息的情况下,创建备用虚拟机,并将创建完成的备用虚拟机的标识信息发送给该第二设备。
可选的,该装置110还包括:获取模块115,用于在接收模块111接收第二设备发送的标识获取请求之前,获取第二预设表,该第二预设表包括备用虚拟机的预期数量、以及备用虚拟机的目标配置信息;创建模块114还用于根据该目标配置信息创建该预期数量的备用虚拟机;该装置110还包括:存储模块116,用于将已创建的备用虚拟机的信息存储在该第一预设表中;其中,该备用虚拟机的信息包括如下至少一种:该备用虚拟机的标识信息、该备用虚拟机的地址信息、该备用虚拟机所属的可用区、该备用虚拟机的实际配置信息。
可选的,获取模块115还用于在接收模块111接收第二设备发送的标识获取请求之前,获取第二预设表中包括的备用虚拟机的预期数量;该装置110还包括:比较模块117,用于比较该备用虚拟机的预期数量和该第一预设表中实际可用的备用虚拟机的数量;创建模块114还用于:在该备用虚拟机的预期数量大于实际可用的备用虚拟机的数量的情况下,创建预设数量的备用虚拟机,该预设数量为该备用虚拟机的预期数量与实际可用的备用虚拟机的数量的差值的绝对值;该装置110还包括:删除模块118,用于当该备用虚拟机的预期数量小于实际可用的备用虚拟机的数量时,删除该预设数量的备用虚拟机。
可选的,该装置110还包括:更新模块119,用于在创建或删除该预设数量的备用虚拟机之后,更新该第一预设表。
本申请实施例各装置中的各模块的功能可以参见上述方法中的对应描述,在此不再赘述。
图12示出根据本申请一实施例的服务器的结构框图。在本申请实施例中,该服务器具体可以是如上实施例中的第一设备、第二设备或第三设备。如图12所示,该服务器包括:存储器1210和处理器1220,存储器1210内存储有可在处理器1220上运行的计算机程序。处理器1220执行该计算机程序时实现上述实施例中的虚拟机调度方法。存储器1210和处理器1220的数量可以为一个或多个。
该应用程序现场还原设备还包括:
通信接口1230,用于与外界设备进行通信,进行数据交互传输。
如果存储器1210、处理器1220和通信接口1230独立实现,则存储器1210、处理器1220和通信接口1230可以通过总线相互连接并完成相互间的通信。该总线可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(PeripheralComponentInterconnect,PCI)总线或扩展工业标准体系结构(Extended IndustryStandard Architecture,EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图12中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
可选的,在具体实现上,如果存储器1210、处理器1220及通信接口1230集成在一块芯片上,则存储器1210、处理器1220及通信接口1230可以通过内部接口完成相互间的通信。
本申请实施例提供了一种计算机可读存储介质,其存储有计算机程序,该程序被处理器执行时实现本申请实施例中提供的方法。
本申请实施例还提供了一种芯片,该芯片包括,包括处理器,用于从存储器中调用并运行存储器中存储的指令,使得安装有芯片的通信设备执行本申请实施例提供的方法。
本申请实施例还提供了一种芯片,包括:输入接口、输出接口、处理器和存储器,输入接口、输出接口、处理器以及存储器之间通过内部连接通路相连,处理器用于执行存储器中的代码,当代码被执行时,处理器用于执行申请实施例提供的方法。
应理解的是,上述处理器可以是中央处理器(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(digital signal processing,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现场可编程门阵列(fieldprogrammablegate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者是任何常规的处理器等。值得说明的是,处理器可以是支持进阶精简指令集机器(advanced RISC machines,ARM)架构的处理器。
进一步地,可选的,上述存储器可以包括只读存储器和随机存取存储器,还可以包括非易失性随机存取存储器。该存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以包括只读存储器(read-onlymemory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以包括随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用。例如,静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic random access memory,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data dateSDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhancedSDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(directrambus RAM,DR RAM)。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包括于本申请的至少一个实施例或示例中。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分。并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。
应理解的是,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。上述实施例方法的全部或部分步骤是可以通过程序来指令相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。上述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读存储介质中。该存储介质可以是只读存储器,磁盘或光盘等。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到其各种变化或替换,这些都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

Claims (19)

1.一种虚拟机调度方法,其特征在于,所述方法包括:
第一设备接收网络文件系统NFS服务器的状态信息;
所述第一设备根据所述状态信息,确定所述NFS服务器是否出现故障;
在所述第一设备确定所述NFS服务器出现故障的情况下,向第二设备发送切换请求,所述切换请求用于指示所述第二设备根据备用虚拟机的标识信息将所述NFS服务器切换为所述备用虚拟机。
2.根据权利要求1所述的方法,其特征在于,所述状态信息包括故障类型;
所述第一设备根据所述状态信息,确定所述NFS服务器是否出现故障,包括:
所述第一设备确定所述状态信息中的故障类型是否为预设类型;
若所述故障类型为预设类型,则所述第一设备根据所述预设类型向所述NFS服务器发送故障验证信息;
若所述第一设备在预设时间内未接收到所述NFS服务器的响应信息,则确定所述NFS服务器出现故障。
3.根据权利要求2所述的方法,其特征在于,所述预设类型包括如下至少一种:
所述NFS服务器超时故障、所述NFS服务器通信故障、NFS服务故障。
4.一种虚拟机调度方法,其特征在于,所述方法包括:
第二设备接收第一设备在确定NFS服务器出现故障时发送的切换请求;
所述第二设备根据所述切换请求获取备用虚拟机的标识信息;
所述第二设备根据所述备用虚拟机的标识信息,将所述NFS服务器切换为所述备用虚拟机。
5.根据权利要求4所述的方法,其特征在于,所述第二设备根据所述切换请求获取备用虚拟机的标识信息,包括:
所述第二设备根据所述切换请求,查询第一预设表;
若所述第一预设表包括备用虚拟机的标识信息,则所述第二设备从第一预设表中获取备用虚拟机的标识信息。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
若所述第一预设表中没有备用虚拟机的标识信息,则所述第二设备创建备用虚拟机。
7.根据权利要求4所述的方法,其特征在于,所述第二设备根据所述切换请求获取备用虚拟机的标识信息,包括:
所述第二设备根据所述切换请求,向第三设备发送标识获取请求,所述标识获取请求用于请求备用虚拟机的标识信息;
所述第二设备从所述第三设备接收备用虚拟机的标识信息。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
若所述第二设备未从所述第三设备接收到备用虚拟机的标识信息,则所述第二设备创建备用虚拟机。
9.根据权利要求4至8中任一项所述的方法,其特征在于,将所述NFS服务器切换为所述备用虚拟机,包括:
将所述NFS服务器的存储盘迁移到所述备用虚拟机;
将所述NFS服务器的IP地址和所述备用虚拟机的IP地址进行互换。
10.根据权利要求9所述的方法,其特征在于,将所述NFS服务器的存储盘迁移到所述备用虚拟机,包括:
将所述NFS服务器的存储盘迁移到所述备用虚拟机、启动所述备用虚拟机中的NFS服务、以及根据所述存储盘中存储的数据配置所述备用虚拟机的共享目录。
11.一种虚拟机调度方法,其特征在于,所述方法包括:
第三设备接收第二设备发送的标识获取请求,所述标识获取请求用于请求备用虚拟机的标识信息;
所述第三设备根据所述标识获取请求,查询第一预设表;
若所述第一预设表包括备用虚拟机的标识信息,则所述第三设备将所述备用虚拟机的标识信息发送给所述第二设备;
若所述第一预设表没有备用虚拟机的标识信息,则所述第三设备创建备用虚拟机,并将创建完成的备用虚拟机的标识信息发送给所述第二设备。
12.根据权利要求11所述的方法,其特征在于,第三设备接收第二设备发送的标识获取请求之前,所述方法还包括:
所述第三设备获取第二预设表,所述第二预设表包括备用虚拟机的预期数量、以及备用虚拟机的目标配置信息;
所述第三设备根据所述目标配置信息创建所述预期数量的备用虚拟机;
所述第三设备将已创建的备用虚拟机的信息存储在所述第一预设表中;
其中,所述备用虚拟机的信息包括如下至少一种:
所述备用虚拟机的标识信息、所述备用虚拟机的地址信息、所述备用虚拟机所属的可用区、所述备用虚拟机的实际配置信息。
13.根据权利要求11所述的方法,其特征在于,第三设备接收第二设备发送的标识获取请求之前,所述方法还包括:
所述第三设备获取第二预设表中包括的备用虚拟机的预期数量;
所述第三设备比较所述备用虚拟机的预期数量和所述第一预设表中实际可用的备用虚拟机的数量;
若所述备用虚拟机的预期数量大于实际可用的备用虚拟机的数量,则所述第三设备创建预设数量的备用虚拟机,所述预设数量为所述备用虚拟机的预期数量与实际可用的备用虚拟机的数量的差值的绝对值;
若所述备用虚拟机的预期数量小于实际可用的备用虚拟机的数量,则所述第三设备删除所述预设数量的备用虚拟机。
14.根据权利要求13所述的方法,其特征在于,所述方法还包括:
在所述第三设备创建或删除所述预设数量的备用虚拟机之后,所述第三设备更新所述第一预设表。
15.一种虚拟机调度装置,其特征在于,包括:
接收模块,用于接收网络文件系统NFS服务器的状态信息;
确定模块,用于根据所述状态信息,确定所述NFS服务器是否出现故障;
发送模块,用于在所述确定模块确定所述NFS服务器出现故障时,向第二设备发送切换请求,所述切换请求用于指示所述第二设备根据备用虚拟机的标识信息将所述NFS服务器切换为所述备用虚拟机。
16.一种虚拟机调度装置,其特征在于,包括:
接收模块,用于接收第一设备在确定NFS服务器出现故障时发送的切换请求;
获取模块,用于根据所述切换请求获取备用虚拟机的标识信息;
切换模块,用于根据所述备用虚拟机的标识信息,将所述NFS服务器切换为所述备用虚拟机。
17.一种虚拟机调度装置,其特征在于,包括:
接收模块,用于接收第二设备发送的标识获取请求,所述标识获取请求用于请求备用虚拟机的标识信息;
查询模块,用于根据所述标识获取请求,查询第一预设表;
发送模块,用于在所述第一预设表包括备用虚拟机的标识信息的情况下,将所述备用虚拟机的标识信息发送给所述第二设备;
创建模块,用于在所述第一预设表没有备用虚拟机的标识信息的情况下,创建备用虚拟机,并将创建完成的备用虚拟机的标识信息发送给所述第二设备。
18.一种服务器,其特征在于,包括:处理器和存储器,所述存储器中存储指令,所述指令由处理器加载并执行,以实现如权利要求1至14任一项所述的方法。
19.一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至14任一项所述的方法。
CN202011032087.2A 2020-09-27 2020-09-27 虚拟机调度方法、装置、设备及存储介质 Pending CN112181593A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011032087.2A CN112181593A (zh) 2020-09-27 2020-09-27 虚拟机调度方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011032087.2A CN112181593A (zh) 2020-09-27 2020-09-27 虚拟机调度方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN112181593A true CN112181593A (zh) 2021-01-05

Family

ID=73944199

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011032087.2A Pending CN112181593A (zh) 2020-09-27 2020-09-27 虚拟机调度方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN112181593A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115277810A (zh) * 2022-08-03 2022-11-01 北京仁光科技有限公司 信号源并行交互系统
CN115794470A (zh) * 2022-12-01 2023-03-14 北京首都在线科技股份有限公司 虚拟机的运行管理方法、装置、电子设备及存储介质
CN116662016A (zh) * 2023-07-25 2023-08-29 太平金融科技服务(上海)有限公司 端口切换方法、装置、计算机设备、存储介质和程序产品

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100299666A1 (en) * 2009-05-25 2010-11-25 International Business Machines Corporation Live Migration of Virtual Machines In a Computing environment
CN103457775A (zh) * 2013-09-05 2013-12-18 中国科学院软件研究所 一种基于角色的高可用虚拟机池化管理系统
CN103618627A (zh) * 2013-11-27 2014-03-05 华为技术有限公司 一种管理虚拟机的方法、装置及系统
CN104753992A (zh) * 2013-12-29 2015-07-01 中国移动通信集团公司 一种数据存储、虚拟平台故障恢复的方法、设备和系统
CN106293874A (zh) * 2016-07-29 2017-01-04 浪潮(北京)电子信息产业有限公司 一种对高可用集群进行监控的方法及装置
CN106506201A (zh) * 2016-10-31 2017-03-15 中国联合网络通信集团有限公司 Vnf迁移方法、mano和系统
CN108614728A (zh) * 2018-04-27 2018-10-02 平安科技(深圳)有限公司 虚拟机服务提供方法、装置、设备及计算机可读存储介质
CN111181780A (zh) * 2019-12-21 2020-05-19 苏州浪潮智能科技有限公司 基于ha集群的主机池切换方法、系统、终端及存储介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100299666A1 (en) * 2009-05-25 2010-11-25 International Business Machines Corporation Live Migration of Virtual Machines In a Computing environment
CN103457775A (zh) * 2013-09-05 2013-12-18 中国科学院软件研究所 一种基于角色的高可用虚拟机池化管理系统
CN103618627A (zh) * 2013-11-27 2014-03-05 华为技术有限公司 一种管理虚拟机的方法、装置及系统
CN104753992A (zh) * 2013-12-29 2015-07-01 中国移动通信集团公司 一种数据存储、虚拟平台故障恢复的方法、设备和系统
CN106293874A (zh) * 2016-07-29 2017-01-04 浪潮(北京)电子信息产业有限公司 一种对高可用集群进行监控的方法及装置
CN106506201A (zh) * 2016-10-31 2017-03-15 中国联合网络通信集团有限公司 Vnf迁移方法、mano和系统
CN108614728A (zh) * 2018-04-27 2018-10-02 平安科技(深圳)有限公司 虚拟机服务提供方法、装置、设备及计算机可读存储介质
CN111181780A (zh) * 2019-12-21 2020-05-19 苏州浪潮智能科技有限公司 基于ha集群的主机池切换方法、系统、终端及存储介质

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115277810A (zh) * 2022-08-03 2022-11-01 北京仁光科技有限公司 信号源并行交互系统
CN115277810B (zh) * 2022-08-03 2024-02-09 北京仁光科技有限公司 信号源并行交互系统
CN115794470A (zh) * 2022-12-01 2023-03-14 北京首都在线科技股份有限公司 虚拟机的运行管理方法、装置、电子设备及存储介质
CN116662016A (zh) * 2023-07-25 2023-08-29 太平金融科技服务(上海)有限公司 端口切换方法、装置、计算机设备、存储介质和程序产品
CN116662016B (zh) * 2023-07-25 2023-10-20 太平金融科技服务(上海)有限公司 端口切换方法、装置、计算机设备、存储介质和程序产品

Similar Documents

Publication Publication Date Title
US10678648B2 (en) Method, apparatus, and system for migrating virtual machine backup information
US11106556B2 (en) Data service failover in shared storage clusters
EP3502877B1 (en) Data loading method and apparatus for virtual machines
CN112181593A (zh) 虚拟机调度方法、装置、设备及存储介质
EP2923272B1 (en) Distributed caching cluster management
JP4349871B2 (ja) ファイル共有装置及びファイル共有装置間のデータ移行方法
JP7034806B2 (ja) 分散ストレージネットワークにおけるデータ経路モニタリング
US8560628B2 (en) Supporting autonomous live partition mobility during a cluster split-brained condition
JP5902716B2 (ja) 大規模記憶システム
JP5011073B2 (ja) サーバ切り替え方法、およびサーバシステム
RU2595482C2 (ru) Обеспечение прозрачной отработки отказа в файловой системе
JP2007279890A (ja) バックアップシステム及びバックアップ方法
US11169835B1 (en) VM data migration between storage devices
US20020198996A1 (en) Flexible failover policies in high availability computing systems
US9792150B1 (en) Detecting site change for migrated virtual machines
TW201824823A (zh) 虛擬互聯網協定位址的切換方法及裝置
JP6123626B2 (ja) 処理再開方法、処理再開プログラムおよび情報処理システム
CN105740049B (zh) 一种控制方法及装置
WO2018171728A1 (zh) 服务器、存储系统及相关方法
CN114553900A (zh) 一种分布式块存储管理系统、方法及电子设备
US11237747B1 (en) Arbitrary server metadata persistence for control plane static stability
KR101618992B1 (ko) 가상 데스크탑 서비스 제공 시스템 및 그 제어방법과, 그 제어방법을 실행하기 위한 프로그램을 기록한 기록 매체와, 하드웨어와 결합되어 그 제어방법을 실행시키기 위하여 매체에 저장된 애플리케이션
US20240028611A1 (en) Granular Replica Healing for Distributed Databases
JP6954693B2 (ja) フォールトトレラントシステム、サーバ、それらの運用方法、及びプログラム
CN114500577A (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
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20210105