CN103793258A - 基于管理程序的服务器复制系统及其方法 - Google Patents

基于管理程序的服务器复制系统及其方法 Download PDF

Info

Publication number
CN103793258A
CN103793258A CN201310022388.0A CN201310022388A CN103793258A CN 103793258 A CN103793258 A CN 103793258A CN 201310022388 A CN201310022388 A CN 201310022388A CN 103793258 A CN103793258 A CN 103793258A
Authority
CN
China
Prior art keywords
file system
virtual machine
supervisory routine
server
fault
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
CN201310022388.0A
Other languages
English (en)
Other versions
CN103793258B (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.)
Samsung SDS Co Ltd
Original Assignee
Samsung SDS 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 Samsung SDS Co Ltd filed Critical Samsung SDS Co Ltd
Publication of CN103793258A publication Critical patent/CN103793258A/zh
Application granted granted Critical
Publication of CN103793258B publication Critical patent/CN103793258B/zh
Expired - Fee Related 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/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1479Generic software techniques for error detection or fault masking
    • G06F11/1482Generic software techniques for error detection or fault masking by means of middleware or OS functionality
    • G06F11/1484Generic software techniques for error detection or fault masking by means of middleware or OS functionality involving virtual machines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2038Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with a single idle spare processing component
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2097Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements maintaining the standby controller/processing unit updated
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • 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/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • 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
    • 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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2041Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with more than one idle spare processing component
    • 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
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/815Virtual

Abstract

本发明公开一种在复制管理程序上形成一个以上的虚拟机的服务器时,使虚拟机呼叫文件输入输出调用时的响应速度加快的服务器复制系统及其方法。根据本发明的服务器复制方法包括如下步骤:在主服务器的管理程序上生成第一文件系统虚拟机;在所述第一文件系统虚拟机上设置预定的文件系统;在分配给所述第一文件系统虚拟机的虚拟存储器上布置与所述文件系统协同工作的缓冲器高缓;在所述管理程序上生成根据用户请求而生成的用户虚拟机,且设定为所述用户虚拟机资源外包所述文件系统而使用,将所述缓冲器高缓复制到备用服务器的管理程序上生成的第二文件系统虚拟机的缓冲器高缓。

Description

基于管理程序的服务器复制系统及其方法
技术领域
本发明涉及服务器复制系统及方法以及记录有服务器复制计算机程序的记录介质。尤其涉及复制在管理程序(hypervisor,也被称为虚拟机监视器)上生成一个以上的虚拟机(virtual machine)的服务器的过程中,在虚拟机呼叫文件输入输出调用时,加快其响应速度的服务器复制系统及其方法以及记录有服务器复制计算机程序的记录介质。
背景技术
传统意义上的服务器复制是指如下的方式,即,将一个数据置于共享存贮器,并由两台以上的服务器中的一台服务器运行应用的过程中,若相关服务器发生障碍,则在处于备用中的服务器中运行应用,以持续提供服务。此时,从障碍发生时间点至处于备用中的服务器运行应用的准备完成的时间点为止,存在服务发生中断的问题。
针对此,提供有不仅是数据,连CPU、存储器、网络设备都进行复制的容错(Fault Tolerance;FT)技术。由于复制数据的同时还复制CPU内容,因此可以在所有服务器运行应用而执行服务。这种容错技术进行尝试的有利用用于容错的硬件模块执行实时复制的方式或基于管理程序的复制方式。基于硬件的复制方式虽然性能优良,但由于针对复制需要进行固件级别的控制,因而存在需要配备高成本的硬件的问题。
图1为示出应用根据现有技术的基于管理程序的容错技术的系统结构的图。随着管理程序技术的提供,能够在一个物理服务器上生成多个虚拟机而提供多个虚拟服务器。这种技术可应用于例如云计算领域。例如,云计算服务用户通过在服务运营者提供的物理服务器设备上建立被分配符合自己所需的资源的虚拟机,据此可以节省服务器运营成本。为了将高可用性(HighAvailability,HA)也提供给这种服务运营者,提供基于管理程序的容错技术。
如图1所示,基于管理程序的容错技术通过在管理程序等级上复制虚拟资源,可实现主服务器被复制到备用服务器的效果。即,应用基于管理程序的容错技术的系统,主服务器和备用服务器的管理程序中所配备的FT模块同步两者的管理程序所管理的虚拟资源。所述虚拟资源可包括例如虚拟CPU的寄存器值、虚拟存储器的数据、虚拟存贮器的数据等。
但是,基于管理程序的容错技术的虚拟资源的同步作业需要耗费时间,因此尤其对于需要进行运行速度慢的存贮器设备的同步化的作业,具有内核服务函数的归还(return)需要耗费很多时间的问题。关于此,参照图2详细进行说明。
图2为示出在主服务器运行的虚拟机(Primary VM)中运行的应用的执行过程中,当呼叫数据写入调用时,应用基于管理程序的容错技术的系统中的数据写入调用的执行操作的信号流向图。
首先,当虚拟机向主服务器的管理程序(Primary Hypervisor)请求数据写入时,主服务器的管理程序中所配备的FT模块向备用服务器的管理程序(Standby Hypervisor)的FT模块请求进行同步(Sync)。备用服务器的管理程序接收所述同步请求信号而向备用服务器的虚拟机(Standby VM)请求更新。
备用服务器的虚拟机再现在主服务器的虚拟机中运行的应用呼叫数据写入调用的操作。即,备用服务器的虚拟机向备用服务器的管理程序请求数据写入,备用服务器的管理程序在备用服务器的存贮器(Standby HDD)中实际写入数据。在备用服务器的存贮器写入数据之后,备用服务器的虚拟机归还所述更新(Update_Ack)。然后,备用服务器的管理程序归还所述同步请求(Sync_Ack)。
然后,主服务器的管理程序也在主服务器的存贮器中物理地写入数据。在针对主服务器的存贮器的数据的写入完成之后,最终从主服务器的虚拟机呼叫的数据写入调用被归还。
如图2所示,对于应用了基于管理程序的FT技术的系统来说,尤其在伴随低速的存贮器设备的同步化的作业中,具有速度降低的问题。
发明内容
本发明所要解决的技术问题在于,提供一种提高针对存贮器设备的数据输入输出操作的速度的基于管理程序的服务器复制系统。
本发明所要解决的另一技术问题在于,提供一种提高针对存贮器设备的数据输入输出操作的速度的基于管理程序的服务器复制系统。
本发明所要解决的又一技术问题在于,提供一种提高数据的输入输出速度的虚拟机提供系统。
本发明的技术问题不限于以上提及的技术问题,本领域技术人员可从以下的记载明确地理解到没有提及的其他技术问题。
为了解决上面提及的技术问题,根据本发明的一方面的将主服务器复制到作为所述主服务器的容错一方的备用服务器的方法包括如下步骤:在所述主服务器上生成第一文件系统虚拟机,该第一文件系统虚拟机提供所述主服务器的管理程序上生成的用户虚拟机进行资源外包(out sourcing)的文件系统;在所述备用服务器上生成第二文件系统虚拟机,该第二文件系统虚拟机提供复制到所述备用服务器的管理程序上的所述用户虚拟机进行资源外包的所述文件系统;通过所述第一文件系统虚拟机与所述文件系统协同运营的缓冲器高缓被复制到所述第二文件系统虚拟机与所述文件系统协同运营的缓冲器高缓。
所述第一文件系统虚拟机可以以回写方式运营所述缓冲器高缓。此时,所述复制方法还可以包括如下步骤:检测到载入所述第一文件系统虚拟机的缓冲器高缓的数据在被清除(flush)之前发生损失;冻结所述主服务器的管理程序上生成的用户虚拟机的状态,激活所述备用服务器的管理程序上生成的用户虚拟机的状态。
所述第二文件系统虚拟机生成于所述备用服务器的步骤可包括步骤:通过所述第一文件系统虚拟机被复制于所述备用服务器,生成所述第二文件系统虚拟机。
所述第一文件系统虚拟机生成于所述主服务器的步骤可包括如下步骤:接收针对分配给文件系统的资源的信息;所述第一文件系统虚拟机根据关于所述资源的信息被分配资源。此时,所述第一文件系统虚拟机根据关于所述资源的信息被分配资源的步骤可包括步骤:根据关于所述资源的信息,分配给所述主服务器的文件系统虚拟机的虚拟存储器容量中的依照预定比率的存储区域被分配给所述缓冲器高缓。
所述主服务器的管理程序和所述备用服务器的管理程序分别具备基于管理程序的容错模块,所述复制步骤可包括如下步骤:所述第一文件系统虚拟机的缓冲器高缓通过所述主服务器的管理程序的容错模块和所述备用服务器的管理程序的容错模块被复制到所述第二文件系统虚拟机的缓冲器高缓。此时,被复制到所述第二文件系统虚拟机的缓冲器高缓的步骤可包括如下步骤:当从所述用户虚拟机呼叫数据写入调用时,写入对象数据被载入所述第一文件系统虚拟机的缓冲器高缓;所述写入对象数据经由所述主服务器的管理程序的容错模块和所述备用服务器的管理程序的容错模块被载入到所述第二文件系统虚拟机的缓冲器高缓;当所述写入对象数据完全被载入到所述第二文件系统虚拟机的缓冲器高缓时,所述数据写入调用被归还。
所述被复制的步骤可包括步骤:通过将生成于所述主服务器的所述文件系统虚拟机复制到所述备用服务器,所述第一文件系统虚拟机所运营的缓冲器高缓被复制到所述第二文件系统虚拟机所运营的缓冲器高缓。
所述基于管理程序的复制方法还可以包括步骤:根据在所述主服务器上生成的用户虚拟机的数量调整所述缓冲器高缓的容量。
所述基于管理程序的复制方法还可以包括步骤:根据所述主服务器上生成的用户虚拟机的数量调整所述缓冲器高缓的容量。
所述基于管理程序的复制方法还可以包括步骤:根据所述主服务器上生成的全部用户虚拟机呼叫的数据写入调用的呼叫量调整所述缓冲器高缓的容量。
所述基于管理程序的复制方法还可以包括步骤:以所述主服务器的I/O发生量以及缓冲器高缓使用量中的至少一个为基准,载入到所述缓冲器高缓的数据被清除。
根据本发明又一方面的服务器复制系统包括:主服务器,包括具有基于管理程序的容错模块的管理程序和第一文件系统虚拟机;第一备用服务器,包括管理程序,该管理程序具备与所述主服务器的管理程序所具备的容错模块收发数据,以复制所述主服务器的基于管理程序的容错模块。此时,所述第一文件系统虚拟机提供建立在所述主服务器的管理程序上的用户虚拟机所共享的第一文件系统,将与所述第一文件系统协同使用的缓冲器高缓布置在分配给所述第一文件系统虚拟机的虚拟存储器上。而且,所述第一文件系统虚拟机利用所述主服务器的基于管理程序的容错模块和所述备用服务器的基于管理程序的容错模块被复制到所述备用服务器。
根据一实施例,所述第一文件系统虚拟机在分配给所述第一文件系统虚拟机的虚拟存贮器的一部分区域分配虚拟卷,且可以在所述虚拟卷上安装所述第一文件系统。此时,所述第一文件系统虚拟机在分配给所述第一文件系统虚拟机的虚拟存贮器的另一部分区域分配虚拟卷,并在所述虚拟卷上安装不同于所述第一文件系统的第二文件系统,且可以提供在所述主服务器的管理程序上生成的其他用户虚拟机所共享的所述第二文件系统。
而且,还可以包括第二备用服务器,该第二备用服务器包括管理程序,该管理程序具备与所述主服务器的管理程序所具备的容错模块收发数据而复制所述主服务器或者与所述第一备用服务器的管理程序所具备的容错模块收发数据而复制所述第一备用服务器的基于管理程序的容错模块。此时,若所述主服务器中发生障碍,则所述主服务器的全部的用户虚拟机被冻结,所述第二备用服务器的全部用户虚拟机被激活,所述第一备用服务器可被复制到所述主服务器。
根据本发明又一方面的服务器复制系统可包括:主文件系统服务器,包括具备基于管理程序的容错模块的第一管理程序和生成于所述第一管理程序上的文件系统虚拟机;主服务服务器,包括具备基于管理程序的容错模块的第二管理程序和生成于所述第二管理程序上的用户虚拟机;备用文件系统服务器,包括第三管理程序,该第三管理程序具备基于管理程序的容错模块,该容错模块与所述第一管理程序所具备的容错模块收发数据而复制所述主文件系统服务器;备用服务服务器,包括第四管理程序,该第四管理程序具备基于管理程序的容错模块,该容错模块与所述第二管理程序所具备的容错模块收发数据而复制所述主服务服务器。此时,所述文件系统虚拟机提供生成于所述第二管理程序上的用户虚拟机所共享的文件系统,并将与所述文件系统协同使用的缓冲器高缓布置在分配给所述第一文件系统虚拟机的虚拟存储器上。而且,所述文件系统虚拟机借助所述第一管理程序的容错模块和所述第三管理程序的容错模块被复制到所述备用文件系统服务器上。所述用户虚拟机借助所述第二管理程序的容错模块和所述第四管理程序的容错模块被复制到所述备用服务服务器上。
根据一实施例,所述主文件系统服务器和主服务服务器之间可通过保证预定的比特传输速度的线缆连接,所述备用文件系统服务器和备用服务服务器之间也可以通过保证预定的比特传输速度的线缆连接。
根据如上的本发明,在复制管理程序上生成有一个以上的虚拟机的服务器时,具有能够加快虚拟机呼叫文件输入输出调用时的响应速度的效果。
而且,可以由文件系统虚拟机统筹管理在管理程序上的资源中响应速度(性能)最低的盘工作。即,对于管理程序上的所有虚拟机的盘的I/O作业进行调度,由此消除瓶颈现象,从而具有提高所有虚拟机的性能的效果。
而且,当将文件系统虚拟机分离为不同的物理服务器而构成时,在盘性能好的物理服务器上构筑文件系统虚拟机,在CPU及存储器的性能好的物理服务器上构筑用户虚拟机,据此不仅可以提高性能,还可以选择符合特性的产品,在价格方面能够带来优势。
而且,在一个物理服务器上通过若干个的虚拟机使用容错解决方案的环境下,各个虚拟机使用互不相同的文件系统的同时提高I/O性能。
而且,基于现有的管理程序和容错解决方案,在构成上没有大的变化的前提下,能够实现本发明。
而且,还可以利用低价的RAM实现缓冲器高缓。
附图说明
图1为根据现有技术的基于管理程序的容错服务器复制系统的构成图。
图2为在图1所示的基于管理程序的容错服务器复制系统中进行数据写入处理的信号流向图。
图3为根据本发明一实施例的虚拟机提供系统的方框构成图。
图4为示出在图3所示的虚拟机提供系统中的数据写入处理操作的概念图。
图5为图3所示的文件系统虚拟机的方框构成图。
图6为示出图3所示的文件系统虚拟机向两个虚拟机提供文件系统的概念图。
图7为示出图3所示的文件系统虚拟机向两个虚拟机提供互不相同的文件系统的概念图。
图8为根据本发明一实施例的基于管理程序的服务器复制系统的方框构成图。
图9为在图8所示的基于管理程序的服务器复制系统中的数据写入处理的信号流向图。
图10为根据本发明另一实施例的基于管理程序的服务器复制系统的方框构成图。
图11为用于说明图10所示的基于管理程序的服务器复制系统的恢复(recovery)操作的概念图。
图12为根据本发明又一实施例的基于管理程序的服务器复制系统的方框构成图。
图13至图14为根据本发明一实施例的基于管理程序的服务器复制方法的顺序图。
主要符号说明
100:主服务器
120:用户虚拟机
140:文件系统虚拟机
110:管理程序
130:主服务器硬件
具体实施方式
以下,参照附图详细说明本发明的优选实施例。对于本发明的优点和特征以及其实现方法,参照附图和详细后述的实施例将更加明确。但是,本发明并不局限于以下公开的实施例,可实现为各种互不相同的实施例,以下实施例的提供仅仅是为了使本发明的公开完整,并向本发明所属的技术领域中具有通常知识的技术人员完整地告知本发明的范围,本发明仅根据权利要求书的范围而被定义。在整个说明书中,相同的附图标记表示相同的构成要素。
如果不存在其他定义,本说明书中使用的所有术语(包括技术和科学术语)可使用为本发明所属的技术领域中具有通常知识的技术人员共同理解的意义。而且,一般使用的词典中被定义的术语,在没有明确地特别定义的情况下,不会理想化或过度地进行解释。
本说明书中使用的术语是为了说明实施例,并不是要限制本发明。在本说明书中,如没有特别提出,单数型语句也包括复数型。说明书中使用的“包括和/或包含”不排除所提及的构成要素之外的一个以上的其他构成要素的存在或增加。
对于根据本发明一实施例的虚拟机提供系统,参照图3至图7进行说明。如图3所示,根据本实施例的虚拟机提供系统可以以一台主服务器100的形态构成。根据本实施例的虚拟机提供系统可包括文件系统虚拟机(File SystemVirtual Machine,FSVM)140、管理程序110和硬件130。文件系统虚拟机140和管理程序110可以是在硬件130上实现的软件构成要素。
文件系统虚拟机140为与管理程序110协同工作的系统区域的虚拟机。文件系统虚拟机140通过管理程序110以虚拟资源111、112、113的形态接收包含于主服务器100的硬件130中的资源(resource)131、132、133。文件系统虚拟机140包括文件系统模块142。文件系统模块142与虚拟存贮装置111协同工作。文件系统模块142将布置在虚拟存储器112内的缓冲器高缓(buffercache)141与文件系统模块142协同而使用。
文件系统模块142可以将缓冲器高缓141运营为回写式高速缓存(write-back cache)的形态。例如,当呼叫数据写入调用时,文件系统模块142并不是请求将写入对象数据直接物理地存储到存贮装置131,而是将写入对象数据载入缓冲器高缓141,并可归还所述写入对象数据。据此,使用文件系统模块142时,可以缩短数据写入处理所需的时间。
载入到缓冲器高缓141的所述写入对象数据可在缓冲器高缓141的被清除(flushing)时间点记录于虚拟存贮装置111中。管理程序110将记录于虚拟存贮装置111的数据物理地记录于存贮装置131。
用户虚拟机(USERVM)120亦是生成于管理程序110上的虚拟机。用户虚拟机120是根据用户请求或其他需要所生成的虚拟机,区别于作为系统区域的虚拟机的文件系统虚拟机140。例如,主服务器100根据外部控制装置等的控制可将用户虚拟机120生成于管理程序110之上。用户虚拟机120可通过管理程序110分配得到主服务器100的硬件资源130中的至少一部分。
在用户虚拟机120执行的用户应用利用分配给用户虚拟机120的虚拟资源执行。
根据本实施例,生成于管理程序110上的用户虚拟机120将配备于文件系统虚拟机140上的文件系统模块142资源外包(outsourcing)而使用。例如,用户虚拟机120可以将配备于文件系统虚拟机140上的文件系统模块142安装(mount)为网络驱动器等形态而使用。
另外,基于还可以解释为用户虚拟机120将配备于文件系统虚拟机140上的文件系统模块142与其他用户虚拟机120共享,可视为用户虚拟机120共享文件系统虚拟机140的文件系统。
由于文件系统模块142利用缓冲器高缓141提供迅速的数据写入功能,因此本实施例具有如下效果:通过使所生成的用户虚拟机120强制使用文件系统模块142,可增加数据写入的速度。
图4示出在将文件系统模块142资源外包的用户虚拟机120中执行的用户应用122呼叫数据写入函数时,直至所述函数被归还为止的流程。
首先,当用户应用122呼叫数据写入函数时,呼叫文件系统虚拟机140的文件系统模块142所提供的低级的写入调用(write call)。文件系统模块142仅将写入对象数据载入到缓冲器高缓141,并直接归还所述低级的写入调用。由于缓冲器高缓141位于虚拟存储器112上,因此所述载入意味着存储器加载(loading)作业。据此,可高速地进行在缓冲器高缓141载入数据的操作。最终,通过文件系统模块142写入数据,与用户虚拟机120通过管理程序110直接将数据写入相比,可高速地执行。
根据一实施例,为了使用扩展性,生成于管理程序110上的用户虚拟机120除了使用文件系统虚拟机140上配备的文件系统模块142之外还可以构建另外的文件系统而使用。
由于缓冲器高缓141还能够执行一般用途的缓存功能,因此被读取过的数据再次被读取时,具有增加读取速度的效果。据此,根据本实施例的虚拟机提供系统100通过文件系统虚拟机140的文件系统模块142统筹处理用户虚拟机120的数据的输入输出,据此具有可增加速度的效果。
以下,参照图5详细说明文件系统虚拟机140的构成。
首先,文件系统虚拟机140仍是在管理程序110上工作的虚拟机,因此文件系统虚拟机140包括用于与管理程序110接口的管理程序接口144。文件系统虚拟机140可通过管理程序接口144使用分配给文件系统虚拟机140的虚拟资源。
如以上说明,文件系统虚拟机140包括文件系统模块142。文件系统模块142可以是在分配给文件系统虚拟机140的虚拟CPU上执行的软件构成要素。文件系统模块142与位于分配给文件系统虚拟机140的虚拟存储器112上的缓冲器高缓141协同工作。
文件系统虚拟机140还可以包括缓冲器高缓管理者143。缓冲器高缓管理者143也可以是在分配给文件系统虚拟机140的虚拟CPU上执行的软件构成要素。缓冲器高缓管理者143可控制缓冲器高缓的清除(flushing)。例如,缓冲器高缓管理者143从管理程序接口144接收对于整个主服务器140输入输出操作负载的数据,并可根据该负载量控制是否清除。显然的是,缓冲器高缓管理者143还会进一步考虑缓冲器高缓的数据载入量而控制清除与否。
文件系统虚拟机140可以向两个以上的用户虚拟机1200、1210分别提供文件系统。
用户虚拟机1200、1210应分别具备专用文件系统。为了符合这种需要,文件系统虚拟机140将通过管理程序110提供的虚拟存贮器111分割为多个虚拟卷(volume),并可以将安装到各个虚拟卷的文件系统提供给各个用户虚拟机1200、1210。
如图6所示,用户虚拟机A1200可将安装到虚拟卷A1110的文件系统1420资源外包,用户虚拟机B1210可将安装于虚拟卷B1111的文件系统1421资源外包。
如图6所示,虚拟卷A1110和虚拟卷B1111具有相互不会重叠的存储区域。即,文件系统虚拟机140向用户虚拟机A1200和用户虚拟机B1210提供相互之间不会受到数据输入输出的影响的单独的虚拟存贮卷。
图6中仅示出两个用户虚拟机,但根据实施例,还可以再生成一个以上的用户虚拟机,且每多生成一个用户虚拟机时,在残余虚拟存贮器中被分配卷,并在被分配的卷上安装新的文件系统,可以以资源外包的形态提供给新生成的用户虚拟机。
另外,根据本实施例的文件系统虚拟机140还可以提供互不相同的种类的文件系统。如图7所示,用户虚拟机A1200可将安装于虚拟卷A1110上的文件系统X资源外包,用户虚拟机B1210可将安装于虚拟卷B1111上的文件系统Y资源外包。例如,文件系统虚拟机140可使用FAT32、NTFS、ext2、raiserFS、ext3等公知的文件系统中的一个以上。
以下,参照图8至图9,对于根据本发明另一实施例的基于管理程序的服务器复制系统进行说明。
如图8所示,根据本实施例的基于管理程序的服务器复制系统可包括主服务器100和备用服务器200。备用服务器200需要在主服务器100发生障碍时仍能够在安全的环境下运行,因此优选设置于其他机架(rack)或位于其他服务器运营场所。
图8所示的主服务器100基于参照图3至图7说明的主服务器100,且具有如下的附加结构。即,包含于根据本实施例的基于管理程序的服务器复制系统的主服务器100具有与参照图3至图7说明的主服务器100相同的构成并执行相同的操作,且增加执行复制相关的操作。
首先,增加的构成为管理程序110进一步包括容错模块114。主服务器100的容错模块114通过主服务器100和备用服务器200的各自的网卡134、234与备用服务器的容错模块214联动,使得主服务器100的虚拟资源111、112、113能够复制到备用服务器的虚拟资源211、212、213。
其次,缓冲器高缓管理者143执行附加功能。缓冲器高缓管理者143除了进行缓冲器高缓141的清除相关控制之外,当载入到缓冲器高缓141的数据发生更新时,追加执行通过管理程序接口144和虚拟机接口115向主服务器100的容错模块114请求更新的功能。
参照图9,对于根据本实施例的基于管理程序的服务器复制系统处理主服务器100的用户虚拟机120中执行的用户应用122所请求的数据写入时经过哪些步骤进行说明。
首先,用户应用122所呼叫的数据写入函数将传递至文件系统虚拟机140,文件系统模块142将写入对象数据载入到缓冲器高缓141。所述载入可以是在被指定为缓冲器高缓141的存储区域中加载所述写入对象数据。缓冲器高缓管理者143可监视所述缓冲器高缓141而检测所述载入或可从文件系统模块142接收关于所述载入的通报。
当检测到所述载入或接收到通报时,缓冲器高缓管理者143可通过管理程序接口144和虚拟机接口115向主服务器100的容错模块114请求更新载入的所述写入对象数据。
接收所述请求的主服务器100的容错模块114向备用服务器200的容错模块114发出同步请求,备用服务器200的容错模块以反映虚拟存储器112的缓冲器高缓141区域中所包括的数据的更新分量的方式将载入到主服务器100的缓冲器高缓141的数据复制到备用服务器的缓冲器高缓241。
所述复制完成时,经由备用服务器200的容错模块214、主服务器100的容错模块114、主服务器100的文件系统模块142,控制将归还(return)到主服务器100的用户虚拟机120中执行的用户应用122。
根据本实施例,只需在主服务器100和备用服务器200中在缓冲器高缓载入两次数据即可,因此具有可迅速执行数据写入的效果。而且,在主服务器100的缓冲器高缓141载入写入对象数据时,立刻在备用服务器200的缓冲器高缓241也会载入所述写入对象数据,由于被载入到缓冲器高缓141、241的所述写入对象数据由缓冲器高缓管理者143、243在适当的时间点物理地写入存贮装置131、231,因此具有存储于主服务器100的存贮装置131的数据能够安全地存储于备用服务器200的存贮装置231的效果。
图10为根据本发明另一实施例的基于管理程序的服务器复制系统的方块构成图。如图10所示,根据本实施例的基于管理程序的服务器复制系统包括主服务器100、第一备用服务器200以及第二备用服务器300。即,图10的系统相比图9中的系统,进一步包括一个备用服务器300。在平常,主服务器100的资源被复制到第一备用服务器200,且还会被复制到第二备用服务器300。第二备用服务器300可复制主服务器100或第一备用服务器200。即,第二备用服务器300可包括具备与配备于主服务器100的管理程序110的容错模块114收发数据而复制主服务器或与第一备用服务器200的管理程序210的容错模块214收发数据而复制第一备用服务器200的基于管理程序的容错模块的管理程序。
图11为用于说明图10所示的基于管理程序的服务器复制系统的恢复操作的概念图。如图11所示,当主服务器100发生障碍时,第一备用服务器200执行复原主服务器100的操作,在所述复原过程中,第二备用服务器300提供服务,由此即便主服务器100发生障碍,终端400也能够无降速地接受连续的服务。即,当主服务器100发生障碍时,主服务器100的全部的用户虚拟机120被冻结,全部的第二备用服务器300的用户虚拟机320被激活,第一备用服务器200可以被复制到主服务器100。
图12为根据本发明又一实施例的基于管理程序的服务器复制系统的方框构成图。如图12所示,根据本实施例的基于管理程序的服务器复制系统可以在与用户虚拟机140分离的服务器装置中设置文件系统虚拟机140。将文件系统虚拟机140设置在与用户虚拟机120分离的服务器装置时,可以防止用户虚拟机120的资源消耗使文件系统虚拟机140受到影响,从而导致的数据输入输出性能下降。
根据本实施例的基于管理程序的服务器复制系统可包括主服务服务器1000、主文件系统服务器1500、备用服务服务器2000以及备用文件系统服务器2500。为了使用户虚拟机120和文件服务器虚拟机140高速地执行通信,避免数据输入输出速度下降,主服务服务器1000和主文件系统服务器1500优选通过保证预定的比特传输速度的线缆连接,备用服务服务器2000和备用文件系统服务器2500也优选通过能够保证预定的比特传输速度的线缆连接。
主文件系统服务器1500包括具备基于管理程序的容错模块的管理程序110和生成于管理程序110上的文件系统虚拟机140。
主服务服务器1000包括具备基于管理程序的容错模块的管理程序110和生成于管理程序110上的用户虚拟机120。
备用文件系统服务器2500包括具备与主文件系统服务器1500的管理程序110所配备的容错模块收发数据,由此复制主文件服务器1500的基于管理程序的容错模块的管理程序110。
备用服务服务器2000包括具备与主服务服务器1000的管理程序110所配备的容错模块收发数据,由此复制主服务服务器1000的基于管理程序的容错模块的管理程序110。
此时,文件系统虚拟机140提供主服务服务器1000的管理程序110上生成的用户虚拟机120进行资源外包的文件系统142,将与文件系统142协同使用的缓冲器高缓布置在分配给文件系统虚拟机140的虚拟存储器上。而且,文件系统虚拟机140利用主文件系统服务器1500的管理程序110的容错模块和备用文件系统服务器2500的管理程序110的容错模块被复制到备用文件系统服务器2500。而且,主服务服务器1000的用户虚拟机120利用主服务服务器1000的管理程序110的容错模块和备用服务服务器2000的管理程序110的容错模块被复制到备用服务服务器2000。
图13至图14为根据本发明一实施例的基于管理程序的服务器复制方法的顺序图。
而且,图13中示出了为了执行根据本实施例的基于管理程序的服务器复制方法而进行初始化的方法的顺序图。
首先,接收针对文件系统所要使用的资源的信息(S102)。例如,可输入所要使用的CPU核的数量、存储器容量、存贮器容量等信息。
其次,根据关于所述资源的信息,在主服务器的管理程序上生成文件系统虚拟机(S104)。根据一实施例,对于生成于主服务器的管理程序上的文件系统虚拟机,可根据关于所述资源的信息分配资源。
将分配给所述文件系统虚拟机的虚拟存储器(vRAM)的至少一部分使用为缓冲器高缓(S106)。例如,可以将分配给所述文件系统虚拟机的虚拟存储器的预指定地址区域分配给所述缓冲器高缓区域。根据一实施例,可以将分配给所述文件系统虚拟机的虚拟存储器容量中的按照预定比率的存储区域分配为所述缓冲器高缓区域。根据另一实施例,在关于所述资源的信息中可以包括针对缓冲器高缓区域容量的信息,所述缓冲器高缓区域可以根据关于所述资源的信息被分配。根据又一实施例,所述缓冲器高缓的容量可以根据生成于所述主服务器上的用户虚拟机的数量自动地被调节。根据又一实施例,缓冲器高缓的容量可根据生成于所述主服务器上的全部用户虚拟机所呼叫的数据写入调用的呼叫量自动地被调节。
然后,在文件系统虚拟机上执行缓冲器高缓管理者(S108)。如上述说明,缓冲器高缓管理者向管理程序的容错模块发出请求,以使载入于所述缓冲器高缓的数据被复制到备用服务器。
然后,将主服务器的所述文件系统虚拟机复制到备用服务器。所述文件系统虚拟机的复制可利用所述主服务器的容错模块和所述备用服务器的容错模块。
其次,当发生新用户虚拟机生成请求时(S110),在所述主服务器的管理程序上生成新用户虚拟机(S112)。
然后,设置为使所述用户虚拟机将所述文件系统虚拟机的文件系统进行资源外包(S114)。例如,可在所述用户虚拟机上设置安装到分配给所述用户虚拟机的虚拟卷的所述文件系统虚拟机的文件系统,或者在所述用户虚拟机上连接所述用户虚拟机所提供的网络驱动器。
其次,参照图14对于将主服务器的文件系统虚拟机提供的文件系统进行资源外包的主服务器的用户虚拟机执行数据写入,写入对象数据被复制的过程进行说明。
根据一实施例,所述写入对象数据可通过将所述主服务器的文件系统虚拟机的缓冲器高缓利用所述主服务器的管理程序的容错模块和所述备用服务器的管理程序的容错模块复制到所述第二文件系统虚拟机的缓冲器高缓而被复制。
根据一实施例,所述写入对象数据也可通过将生成于所述主服务器的所述文件系统虚拟机复制到所述备用服务器而执行。
当主服务器的用户虚拟机呼叫数据写入调用时(S116),文件系统虚拟机的文件系统模块也被呼叫低级写入操作调用。所述低级写入操作调用将写入对象数据载入文件系统虚拟机的缓冲器高缓(S118)。
检测到所述载入的文件系统虚拟机的缓冲器高缓管理者向主服务器的管理程序请求更新(S120),主服务器的管理程序向备用服务器的管理程序请求同步(S122)。而且,备用服务器的管理程序在备用服务器的缓冲器高缓载入写入对象数据(S124)。在写入对象数据完全载入到备用服务器的缓冲器高缓时,所述同步请求和所述主服务器的文件系统上的低级写入操作函数被归还(S126),由此主服务器的用户虚拟机可重新进行控制(S128),并执行下一操作。
所述文件系统虚拟机在将写入对象数据载入所述缓冲器高缓之后,以所述主服务器的I/O产生量和缓冲器高缓使用量中的至少一个为基准,可以向所述主服务器的管理程序请求,以清除载入到所述缓冲器高缓的数据。
虽然图13和图14中没有示出,但是当载入到所述缓冲器高缓的写入对象数据被清除到存贮装置而在物理写入之前发生损失时,所述文件系统虚拟机对其进行检测,可使服务通过备用服务器提供。例如,当载入到主服务器的缓冲器高缓的数据在存储于存贮装置之前发生损失时,可将主服务器的管理程序上生成的用户虚拟机的状态冻结,并可以将所述备用服务器的管理程序上生成的用户虚拟机的状态激活。
本发明还可以在可通过计算机读取的记录介质上以计算机能够读取的代码实现。计算机可读记录介质包括存储有可以通过计算机系统读取的数据的所有种类的记录装置。计算机可读记录介质的例有ROM、RAM、CD-ROM、磁带、软盘、光数据存储装置等,且还可以以载波(例如通过互联网的传送)形式实现。而且,计算机可读记录介质可分散到通过网络连接的计算机系统,可以以分散方式存储并执行计算机可读代码。
根据本发明又一实施例的基于管理程序的复制方法还可以包括:备用服务器的文件系统虚拟机也在初始化时生成,而不是通过复制主服务器的文件系统虚拟机来生成备用服务器的文件系统虚拟机。本实施例可以防止文件系统虚拟机的复制错误引起的文件系统虚拟机无法正常生成于备用服务器的问题,从而具有可安全地进行复制相关设置的效果。以下,对于根据本实施例的复制方法进行说明。
首先,生成提供所述主服务器的管理程序上生成的用户虚拟机进行资源外包的文件系统的第一文件系统虚拟机。
其次,生成提供被复制到所述备用服务器的管理程序上的所述用户虚拟机进行资源外包的所述文件系统的第二文件系统虚拟机。
其次,将所述第一文件系统虚拟机与所述文件系统协同运营的缓冲器高缓复制到所述第二文件系统虚拟机与所述文件系统协同运营的缓冲器高缓。如已经说明的那样,所述主服务器的管理程序和所述备用服务器的管理程序配备有基于管理程序的容错模块,所述复制可意味着将所述第一文件系统虚拟机的缓冲器高缓利用所述主服务器的管理程序的容错模块和所述备用服务器的管理程序的容错模块复制到所述第二文件系统虚拟机。
所述缓冲器高缓可以是所述第一文件系统虚拟机和第二文件系统虚拟机被布置于各自的虚拟存储器上。此时,所述主服务器的管理程序和所述备用服务器的管理程序配备有基于管理程序的容错模块,所述复制可意味着所述主服务器的管理程序的容错模块将所述第一文件系统虚拟机的虚拟存储器利用所述备用服务器的管理程序的容错模块复制到所述第二文件系统虚拟机的虚拟存储器,由此复制缓冲器高缓。
而且,根据本实施例的复制方法还可以包括步骤:当检测到载入于所述第一文件系统虚拟机的缓冲器高缓的数据在被清除之前发生损失时,冻结生成于所述主服务器的管理程序上的用户虚拟机的状态,并激活生成于所述备用服务器的管理程序上的用户虚拟机的状态。
以上,参照附图对本发明的实施例进行了说明,但本发明所属技术领域的具有通常知识的技术人员应可以理解,本发明在不变更其技术思想或必要特征的前提下,也可以实施为其他具体形态。因此,以上记载的多个实施例在所有层面上仅仅是举例性的,而不是限制性的。

Claims (19)

1.一种基于管理程序的复制方法,将主服务器复制到作为所述主服务器的容错一方的备用服务器,所述方法包括如下步骤:
在所述主服务器上生成第一文件系统虚拟机,该第一文件系统虚拟机提供所述主服务器的管理程序上生成的用户虚拟机进行资源外包的文件系统;
在所述备用服务器上生成第二文件系统虚拟机,该第二文件系统虚拟机提供复制到所述备用服务器的管理程序上的所述用户虚拟机进行资源外包的所述文件系统;
通过所述第一文件系统虚拟机与所述文件系统协同运营的缓冲器高缓被复制到所述第二文件系统虚拟机与所述文件系统协同运营的缓冲器高缓。
2.根据权利要求1所述的基于管理程序的复制方法,其中,所述第一文件系统虚拟机以回写方式运营所述缓冲器高缓。
3.根据权利要求2所述的基于管理程序的复制方法,其中,还包括如下步骤:
检测到载入所述第一文件系统虚拟机的缓冲器高缓的数据在被清除之前发生损失;
冻结所述主服务器的管理程序上生成的用户虚拟机的状态,激活所述备用服务器的管理程序上生成的用户虚拟机的状态。
4.根据权利要求1所述的基于管理程序的复制方法,其中,所述第二文件系统虚拟机生成于所述备用服务器的步骤包括步骤:
通过所述第一文件系统虚拟机被复制于所述备用服务器,生成所述第二文件系统虚拟机。
5.根据权利要求1所述的基于管理程序的复制方法,其中,所述第一文件系统虚拟机生成于所述主服务器的步骤包括如下步骤:
接收针对分配给文件系统的资源的信息;
所述第一文件系统虚拟机根据关于所述资源的信息被分配资源。
6.根据权利要求5所述的基于管理程序的复制方法,其中,所述第一文件系统虚拟机根据关于所述资源的信息被分配资源的步骤包括步骤:
根据关于所述资源的信息,分配给所述主服务器的文件系统虚拟机的虚拟存储器容量中的依照预定比率的存储区域被分配给所述缓冲器高缓。
7.根据权利要求1所述的基于管理程序的复制方法,其中,所述主服务器的管理程序和所述备用服务器的管理程序分别具备基于管理程序的容错模块,所述复制步骤包括如下步骤:所述第一文件系统虚拟机的缓冲器高缓通过所述主服务器的管理程序的容错模块和所述备用服务器的管理程序的容错模块被复制到所述第二文件系统虚拟机的缓冲器高缓。
8.根据权利要求7所述的基于管理程序的复制方法,其中,被复制到所述第二文件系统虚拟机的缓冲器高缓的步骤包括如下步骤:
当从所述用户虚拟机呼叫数据写入调用时,写入对象数据被载入所述第一文件系统虚拟机的缓冲器高缓;
所述写入对象数据经由所述主服务器的管理程序的容错模块和所述备用服务器的管理程序的容错模块被载入到所述第二文件系统虚拟机的缓冲器高缓;
当所述写入对象数据完全被载入到所述第二文件系统虚拟机的缓冲器高缓时,所述数据写入调用被归还。
9.根据权利要求1所述的基于管理程序的复制方法,其中,所述被复制的步骤包括步骤:
通过将生成于所述主服务器的所述文件系统虚拟机复制到所述备用服务器,所述第一文件系统虚拟机所运营的缓冲器高缓被复制到所述第二文件系统虚拟机所运营的缓冲器高缓。
10.根据权利要求1所述的基于管理程序的复制方法,其中,还包括步骤:根据在所述主服务器上生成的用户虚拟机的数量调整所述缓冲器高缓的容量。
11.根据权利要求1所述的基于管理程序的复制方法,其中,还包括步骤:根据所述主服务器上生成的所有用户虚拟机所呼叫的数据写入调用的呼叫量调整所述缓冲器高缓的容量。
12.根据权利要求1所述的基于管理程序的复制方法,其中,还包括步骤:以所述主服务器的I/O发生量以及缓冲器高缓使用量中的至少一个为基准,载入到所述缓冲器高缓的数据被清除。
13.一种服务器复制系统,包括:
主服务器,包括具有基于管理程序的容错模块的管理程序和第一文件系统虚拟机;
第一备用服务器,包括管理程序,该管理程序具备与所述主服务器的管理程序所具备的容错模块收发数据,以复制所述主服务器的基于管理程序的容错模块,
所述第一文件系统虚拟机提供建立在所述主服务器的管理程序上的用户虚拟机所共享的第一文件系统,将与所述第一文件系统协同使用的缓冲器高缓布置在分配给所述第一文件系统虚拟机的虚拟存储器上,
所述第一文件系统虚拟机利用所述主服务器的基于管理程序的容错模块和所述备用服务器的基于管理程序的容错模块被复制到所述备用服务器。
14.根据权利要求13所述的服务器复制系统,其中,所述第一文件系统虚拟机在分配给所述第一文件系统虚拟机的虚拟存贮器的一部分区域分配虚拟卷,且在所述虚拟卷上安装所述第一文件系统。
15.根据权利要求14所述的服务器复制系统,其中,所述第一文件系统虚拟机在分配给所述第一文件系统虚拟机的虚拟存贮器的另一部分区域分配虚拟卷,并在所述虚拟卷上安装不同于所述第一文件系统的第二文件系统,且提供在所述主服务器的管理程序上生成的其他用户虚拟机所共享的所述第二文件系统。
16.根据权利要求13所述的服务器复制系统,其中,还包括第二备用服务器,该第二备用服务器包括管理程序,该管理程序具备与所述主服务器的管理程序所具备的容错模块收发数据而复制所述主服务器或者与所述第一备用服务器的管理程序所具备的容错模块收发数据而复制所述第一备用服务器的基于管理程序的容错模块。
17.根据权利要求16所述的服务器复制系统,其中,若所述主服务器中发生障碍,则所述主服务器的全部的用户虚拟机被冻结,所述第二备用服务器的全部用户虚拟机被激活,所述第一备用服务器被复制到所述主服务器。
18.一种服务器复制系统,包括:
主文件系统服务器,包括具备基于管理程序的容错模块的第一管理程序和生成于所述第一管理程序上的文件系统虚拟机;
主服务服务器,包括具备基于管理程序的容错模块的第二管理程序和生成于所述第二管理程序上的用户虚拟机;
备用文件系统服务器,包括第三管理程序,该第三管理程序具备基于管理程序的容错模块,该容错模块与所述第一管理程序所具备的容错模块收发数据而复制所述主文件系统服务器;
备用服务服务器,包括第四管理程序,该第四管理程序具备基于管理程序的容错模块,该容错模块与所述第二管理程序所具备的容错模块收发数据而复制所述主服务服务器,
所述文件系统虚拟机提供生成于所述第二管理程序上的用户虚拟机进行资源外包的文件系统,并将与所述文件系统协同使用的缓冲器高缓布置在分配给所述第一文件系统虚拟机的虚拟存储器上,
所述文件系统虚拟机利用所述第一管理程序的容错模块和所述第三管理程序的容错模块被复制到所述备用文件系统服务器上,
所述用户虚拟机利用所述第二管理程序的容错模块和所述第四管理程序的容错模块被复制到所述备用服务服务器上。
19.根据权利要求18所述的服务器复制系统,其中,所述主文件系统服务器和主服务服务器之间通过保证预定的比特传输速度的线缆连接,所述备用文件系统服务器和备用服务服务器之间也通过保证预定的比特传输速度的线缆连接。
CN201310022388.0A 2012-10-31 2013-01-22 基于管理程序的服务器复制系统及其方法 Expired - Fee Related CN103793258B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2012-0122393 2012-10-31
KR1020120122393A KR101471879B1 (ko) 2012-10-31 2012-10-31 하이퍼바이저 기반 서버 이중화 시스템, 그 방법 및 서버 이중화 컴퓨터 프로그램이 기록된 기록매체

Publications (2)

Publication Number Publication Date
CN103793258A true CN103793258A (zh) 2014-05-14
CN103793258B CN103793258B (zh) 2017-05-03

Family

ID=47740799

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310022388.0A Expired - Fee Related CN103793258B (zh) 2012-10-31 2013-01-22 基于管理程序的服务器复制系统及其方法

Country Status (5)

Country Link
US (2) US8997098B2 (zh)
EP (1) EP2728478A1 (zh)
JP (1) JP5600361B2 (zh)
KR (1) KR101471879B1 (zh)
CN (1) CN103793258B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105511798A (zh) * 2014-09-24 2016-04-20 中国电信股份有限公司 虚拟机缓存资源管理方法和系统
CN109753239A (zh) * 2017-11-08 2019-05-14 三星电子株式会社 半导体存储模块、半导体存储系统和访问其的方法

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2014076838A1 (ja) * 2012-11-19 2017-01-05 株式会社日立システムズ 仮想マシン同期システム
US9842053B2 (en) * 2013-03-15 2017-12-12 Sandisk Technologies Llc Systems and methods for persistent cache logging
US9639384B2 (en) * 2013-08-20 2017-05-02 Vmware, Inc. Method and system for fast provisioning of virtual desktop
KR101558047B1 (ko) * 2013-09-09 2015-10-06 삼성에스디에스 주식회사 클러스터 시스템 및 클러스터 시스템에서 서비스 가용성을 제공하기 위한 방법
WO2015122007A1 (ja) * 2014-02-17 2015-08-20 株式会社日立製作所 計算機、及び、ハイパバイザによる資源スケジューリング方法
WO2015172107A1 (en) 2014-05-09 2015-11-12 Nutanix, Inc. Mechanism for providing external access to a secured networked virtualization environment
US10044795B2 (en) * 2014-07-11 2018-08-07 Vmware Inc. Methods and apparatus for rack deployments for virtual computing environments
US10474486B2 (en) * 2015-06-30 2019-11-12 Veritas Technologies Llc Data access accelerator
US10635423B2 (en) 2015-06-30 2020-04-28 Vmware, Inc. Methods and apparatus for software lifecycle management of a virtual computing environment
US10558480B2 (en) 2015-09-10 2020-02-11 Veritas Technologies Llc Optimizing access to production data
US10037276B1 (en) * 2015-11-04 2018-07-31 Veritas Technologies Llc Systems and methods for accelerating access to data by pre-warming the cache for virtual machines
US11579861B2 (en) 2016-02-12 2023-02-14 Nutanix, Inc. Virtualized file server smart data ingestion
US11218418B2 (en) 2016-05-20 2022-01-04 Nutanix, Inc. Scalable leadership election in a multi-processing computing environment
KR101727059B1 (ko) * 2016-08-17 2017-04-14 맹상영 복수개의 서버를 선택적으로 이용하는 클라우드 콘솔 제공 시스템 및 제공 방법
US10250473B2 (en) * 2016-11-29 2019-04-02 Red Hat Israel, Ltd. Recovery from a networking backend disconnect
US10728090B2 (en) * 2016-12-02 2020-07-28 Nutanix, Inc. Configuring network segmentation for a virtualization environment
US11562034B2 (en) 2016-12-02 2023-01-24 Nutanix, Inc. Transparent referrals for distributed file servers
US10824455B2 (en) 2016-12-02 2020-11-03 Nutanix, Inc. Virtualized server systems and methods including load balancing for virtualized file servers
US11568073B2 (en) 2016-12-02 2023-01-31 Nutanix, Inc. Handling permissions for virtualized file servers
US11294777B2 (en) 2016-12-05 2022-04-05 Nutanix, Inc. Disaster recovery for distributed file servers, including metadata fixers
US11281484B2 (en) 2016-12-06 2022-03-22 Nutanix, Inc. Virtualized server systems and methods including scaling of file system virtual machines
US11288239B2 (en) 2016-12-06 2022-03-29 Nutanix, Inc. Cloning virtualized file servers
US10613708B2 (en) * 2017-02-24 2020-04-07 Red Hat Israel, Ltd. Cloning a hypervisor
US10083091B1 (en) * 2017-03-22 2018-09-25 International Business Machines Corporation Memory resident storage recovery during computer system failure
CN107479992A (zh) * 2017-09-01 2017-12-15 郑州云海信息技术有限公司 一种业务处理方法及装置
US11086826B2 (en) 2018-04-30 2021-08-10 Nutanix, Inc. Virtualized server systems and methods including domain joining techniques
US11194680B2 (en) 2018-07-20 2021-12-07 Nutanix, Inc. Two node clusters recovery on a failure
US10901721B2 (en) 2018-09-20 2021-01-26 Vmware, Inc. Methods and apparatus for version aliasing mechanisms and cumulative upgrades for software lifecycle management
US11770447B2 (en) 2018-10-31 2023-09-26 Nutanix, Inc. Managing high-availability file servers
US11677624B2 (en) * 2019-04-12 2023-06-13 Red Hat, Inc. Configuration of a server in view of a number of clients connected to the server
US11768809B2 (en) 2020-05-08 2023-09-26 Nutanix, Inc. Managing incremental snapshots for fast leader node bring-up

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110197039A1 (en) * 2010-02-08 2011-08-11 Microsoft Corporation Background Migration of Virtual Storage
US20120054409A1 (en) * 2010-08-31 2012-03-01 Avaya Inc. Application triggered state migration via hypervisor
US20120137173A1 (en) * 2010-03-17 2012-05-31 Zerto Ltd. Multi-rpo data protection

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4267421B2 (ja) * 2003-10-24 2009-05-27 株式会社日立製作所 リモートサイト及び/又はローカルサイトのストレージシステム及びリモートサイトストレージシステムのファイル参照方法
JP4227035B2 (ja) * 2004-02-03 2009-02-18 株式会社日立製作所 計算機システム、管理装置、ストレージ装置及びコンピュータ装置
US20070050767A1 (en) * 2005-08-31 2007-03-01 Grobman Steven L Method, apparatus and system for a virtual diskless client architecture
KR100825721B1 (ko) * 2005-12-08 2008-04-29 한국전자통신연구원 객체 기반 스토리지 시스템에서 사용자 파일 관리자 내의시간 기반 캐쉬 일관성 유지 시스템 및 방법
US8041987B2 (en) * 2008-11-10 2011-10-18 International Business Machines Corporation Dynamic physical and virtual multipath I/O
US8352482B2 (en) * 2009-07-21 2013-01-08 Vmware, Inc. System and method for replicating disk images in a cloud computing based virtual machine file system
JP5124551B2 (ja) * 2009-09-30 2013-01-23 株式会社日立製作所 ボリューム割り当てを管理する計算機システム及びボリューム割り当て管理方法
CN102033755A (zh) 2009-09-30 2011-04-27 国际商业机器公司 用于运行虚拟机镜像的方法和系统
US9069596B2 (en) 2009-11-17 2015-06-30 International Business Machines Corporation Hypervisor file system
JP5427011B2 (ja) * 2009-12-17 2014-02-26 株式会社日立製作所 仮想ハードディスクの管理サーバおよび管理方法、管理プログラム
US8145945B2 (en) * 2010-01-04 2012-03-27 Avaya Inc. Packet mirroring between primary and secondary virtualized software images for improved system failover performance
US9411517B2 (en) * 2010-08-30 2016-08-09 Vmware, Inc. System software interfaces for space-optimized block devices
US10019159B2 (en) * 2012-03-14 2018-07-10 Open Invention Network Llc Systems, methods and devices for management of virtual memory systems

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110197039A1 (en) * 2010-02-08 2011-08-11 Microsoft Corporation Background Migration of Virtual Storage
CN102741820A (zh) * 2010-02-08 2012-10-17 微软公司 虚拟存储器的后台迁移
US20120137173A1 (en) * 2010-03-17 2012-05-31 Zerto Ltd. Multi-rpo data protection
US20120054409A1 (en) * 2010-08-31 2012-03-01 Avaya Inc. Application triggered state migration via hypervisor

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105511798A (zh) * 2014-09-24 2016-04-20 中国电信股份有限公司 虚拟机缓存资源管理方法和系统
CN105511798B (zh) * 2014-09-24 2018-07-24 中国电信股份有限公司 虚拟机缓存资源管理方法和系统
CN109753239A (zh) * 2017-11-08 2019-05-14 三星电子株式会社 半导体存储模块、半导体存储系统和访问其的方法
CN109753239B (zh) * 2017-11-08 2023-11-21 三星电子株式会社 半导体存储模块、半导体存储系统和访问其的方法

Also Published As

Publication number Publication date
US9317320B2 (en) 2016-04-19
CN103793258B (zh) 2017-05-03
KR20140055451A (ko) 2014-05-09
JP5600361B2 (ja) 2014-10-01
US20140123138A1 (en) 2014-05-01
JP2014093072A (ja) 2014-05-19
US8997098B2 (en) 2015-03-31
US20150178119A1 (en) 2015-06-25
KR101471879B1 (ko) 2014-12-11
EP2728478A1 (en) 2014-05-07

Similar Documents

Publication Publication Date Title
CN103793258A (zh) 基于管理程序的服务器复制系统及其方法
US20200226042A1 (en) Storage system and control software deployment method
US9671967B2 (en) Method and system for implementing a distributed operations log
CN102073462B (zh) 虚拟存储迁移方法、系统和虚拟机监控器
EP2557494B1 (en) Storage apparatus and data copy method between thin-provisioning virtual volumes
US8689047B2 (en) Virtual disk replication using log files
US9400611B1 (en) Data migration in cluster environment using host copy and changed block tracking
US8156301B1 (en) Method and apparatus for synchronizing a physical machine with a virtual machine while the virtual machine is operational
CN101398770B (zh) 迁移一个或多个虚拟机的系统和方法
US20120209812A1 (en) Incremental virtual machine backup supporting migration
US9354907B1 (en) Optimized restore of virtual machine and virtual disk data
CN102314378A (zh) 使用共享存储来迁移虚拟机的技术
CN103810058A (zh) 虚拟机备份方法、设备及系统
EP3311272B1 (en) A method of live migration
CN103095834A (zh) 一种跨虚拟化数据中心的虚拟机在线迁移方法
CN106777394B (zh) 一种集群文件系统
CN115098299B (zh) 一种虚拟机的备份方法、容灾方法、装置及设备
US20140337594A1 (en) Systems and methods for collapsing a derivative version of a primary storage volume
US7970736B2 (en) System, method and computer program product for storing transient state information
CN112328365A (zh) 一种虚拟机迁移方法、装置、设备及存储介质
CN104517067A (zh) 访问数据的方法、装置及系统
US10235089B2 (en) Storage control device, method and storage system to backup data using allocation information
JP2013191090A (ja) バックアップ制御プログラム、バックアップ制御方法、および情報処理装置
US8938596B2 (en) Storage apparatus, control apparatus, and storage apparatus control method
US20070061530A1 (en) Method for storage of digital data in a mainframe data center and associated device

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170503

Termination date: 20200122

CF01 Termination of patent right due to non-payment of annual fee