CN103729263A - 一种高成功率的xen虚拟机容错机制 - Google Patents
一种高成功率的xen虚拟机容错机制 Download PDFInfo
- Publication number
- CN103729263A CN103729263A CN201310719585.8A CN201310719585A CN103729263A CN 103729263 A CN103729263 A CN 103729263A CN 201310719585 A CN201310719585 A CN 201310719585A CN 103729263 A CN103729263 A CN 103729263A
- Authority
- CN
- China
- Prior art keywords
- fault
- virtual machine
- tolerant
- virtual
- node
- 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
Links
Images
Landscapes
- Hardware Redundancy (AREA)
Abstract
本发明涉及云计算领域,特别是一种高成功率的XEN虚拟机容错机制。本发明首先通过配置文件设置专门的单独物理机作为容错备节点;然后各节点将自己相关信息发送给集群控制器统一保存;用户执行虚拟机容错时,系统首先执行严格的容错条件检测,具体包括平台检测、状态检测、半虚拟化检测、资源检测、网络检测以及软硬件检测等;如果系统通过了全部的检测,则产生容错记录,或者产生异常阻止本次容错操作;根据容错记录调用虚拟机容错接口执行容错。本发明解决了云平台上为了实现高可用而大量使用XEN虚拟机容错技术却由于主备节点环境不统一、条件不满足等存在的低成功率问题;可以用于XEN虚拟机容错。
Description
技术领域
本发明涉及云计算领域,特别是一种高成功率的XEN虚拟机容错机制。
背景技术
在云计算时代,虚拟机全面取代物理机作为业务部署和运行的载体,对于业务连续性要求特别高的应用,物理机一般采取冗余的手段,在主服务器的基础上增加一个备服务器作为后备,在主服务器发生故障时能代替主服务器继续运行业务应用,可这种情况下主服务器和备服务器的IP地址是不同,即使第一时间改DNS的映射地址,也需要一段时间才能更新到客户的服务器上,业务势必受到一定程度的影响。
虚拟化技术被广泛采用以后,虚拟机容错技术取代了冗余技术成为这类应用的首选,虚拟机容错技术中主虚拟机和备虚拟机的IP地址是一致的,在切换的过程中不会影响到用户访问,而且切换时间短到毫秒级,因此,虚拟机容错技术是此类应用最理想的解决方案。
可虚拟机容错技术因为对虚拟机的网络、虚拟机操作系统、虚拟机硬件等方面都有比较苛刻的要求,因此,其应用范围不广,在一般的私有云上进行虚拟机容错的成功率很低。因此,需要一种高成功率的虚拟机容错机制.
发明内容
本发明解决的技术问题在于提供一种高成功率的XEN虚拟机容错机制,解决现阶段云计算环境下虚拟机大量容错而存在的高业务、低效率问题。
本发明解决上述技术问题的技术方案是:
包括如下步骤:
首先通过配置文件设置专门的单独物理机作为容错备节点;
然后各虚拟机主、备节点将自己相关信息发送给集群控制器集统一保存;
用户执行虚拟机容错时,系统首先执行严格的容错条件检测,具体包括平台检测、状态检测、半虚拟化检测、资源检测、网络检测以及软硬件检测等;
如果系统通过了全部的检测,则产生容错记录,或者产生异常阻止本次容错操作;
根据容错记录调用虚拟机容错接口执行容错。
所述的虚拟机容错是指给正在运行特定服务的虚拟机A设置一台同样配置的虚拟机B并保持数据动态同步状态,当虚拟机A由于某种原因出现异常而无法继续提供特定服务时,虚拟机B自动启动并接过虚拟机A的任务对外继续提供同样的服务,且数据不丢失;
所述的容错主节点和容错备节点则分别是指虚拟机A所在的物理服务器节点和虚拟机B所在物理服务器节点;
所述的XEN是一种虚拟机管理程序,在物理服务器节点上面运行XEN可以使其本身具有创建虚拟机、管理虚拟机的能力;另外XEN同样具有虚拟机动态容错功能.
所述的相关信息主要有两方面来源:通过节点配置文件读取获得的节点名称、节点虚拟化类型、IP网络信息、内存大小、磁盘容量等;通过调用系统工具所获得的节点平台相关的内核信息、CPU类型信息等。
所述的集群控制器即管理端,用于获取并存储所有节点资源信息、虚拟化相关信息,同时接受处理用户请求。
所述的平台检测是指检测待容错虚拟机所在的主节点及备节点虚拟化检测,只有XEN虚拟化节点才支持虚拟机容错;
所述的虚拟机状态检测规定只有处于正在运行状态下并且没有执行其他长操作的虚拟机才提供容错功能;其他长操作是指耗时比较长的相关操作,例如虚拟机打包、虚拟机迁移等;
所述的半虚拟化检测是指对虚拟机系统本身的检测,只有当虚拟机系统本身没有安装半虚拟化驱动的条件下才允许虚拟机进行容错;的半虚拟机驱动是指云计算虚拟化领域内提供的一种I/O驱动程序,该驱动程序能够使虚拟机获得较高性能的I/O读写能力,保证虚拟机和物理机性具有相当的性能;
所述的资源监测是指在虚拟机容错开始之前见检验容错备节点是否具有该虚拟机运行所需要的CPU、内存及磁盘等相关资源,只有资源满足的条件下才继续执行容错操作;
所述的网络检测是指保证容错主备节点上网络资源一致,容错之前先创建并启动容错虚拟机所必须的VLAN、网桥等;
所述的软硬件检测是检测主备节点的Linux内核版本、CPU类型等相关信息。
所述的容错信息记录是指当所有检测条件都满足的前提下,将用户虚拟机容错请求保存,记录日志;
所述的启动容错是指调用XEN虚拟机管理程序的remus工具执行虚拟机容错。
本发明方案的有益效果如下:
1、本发明设计的机制能从物理资源、网络资源方面保证XEN虚拟机容错的条件得到满足,并且通过进行软硬件环境检查大大提高了XEN虚拟机容错的成功率;
2、本机制具有通用性,实现原理及方法简单易用,能够快速的在第三方云平台上实现。
附图说明
下面结合附图对本发明进一步说明:
附图为本发明的流程图。
具体实施方式
见附图所示,本发明云平台管理员首先通过配置文件配置各个计算节点,如节点虚拟化平台类型,节点名称等;特别地,在容错备节点上我们添加如下配置项:
#configure compute node is fault tolreant node(FT),default is not
COMPUTE_TYPE=FT
配置有COMPUTE_TYPE=FT向的节点属于容错备节点,专门用来接收虚拟机容错。
云平台启动之后,计算节点读取配置文件的各配置项保存并将汇报给集群控制器,集群控制器获取所有节点的信息并分别保存在Node数据结构中,其中Node结构部分代码如下:
虚拟机及状态检测:当用户提出指定虚拟机容错请求后,请求首先到达集群控制器进行处理。集群控制器获取虚拟机容错请求相关参数,首先判断虚拟机是否存在以及虚拟机所使用的存储类型等条件检测,代码如下:
继续检查虚拟机的状态是否为running,即正在运行状态,且没有执行其他相关任务操作,以及虚拟机所在节点相应信息,包括平台必须为XEN,部分代码如下:
节点平台检测:检测虚拟机所在节点是否存在,以及容错主节点和备节点是否为XEN平台:
软硬件检测:满足了上述条件之后,继续进行主备节点系统内核信息以及CPU类型信息等,代码如下:
容错虚拟机系统半虚拟化检测:继续进行容错前虚拟机的半虚拟化驱动检测,容错虚拟机所在的主节点调用如下命令进行:
#xenstore-list/local/domain/$domid/device/vbd|head-1
#xenstore-read/local/domain/$domid/device/vbd/$devicex/state
如上命令读取状态值不为6且不为4,则表示虚拟机没有装半虚拟化驱动,或者即表示虚拟机装有半虚拟化驱动;其中$domid为运行虚拟机id,$devicex取第一个运行结果。
资源检测:集群控制器根据虚拟机主备节点实时汇报的资源信息来判断容错备节点是否存储满足该虚拟机运行所需要的CPU、内存等相应资源是否满足:
网络检测:判断备节点上是否已经建立和启动了虚拟机所必要的VLAN、网桥等网络信息:
当所有检测都成功通过后,集群控制器改变虚拟机状态,置为“正在容错”状态并同步产生容错记录保存到数据库:
集群控制器将虚拟机容错请求参数信息传递到指定的主、备容错节点;在主节点上,通过调用容错工具启动虚拟机容错,其中主要通过如下容错命令来实现:
容错命令:#remus instanceId taregetIp--no-net
其中,instanceId为虚拟机id;targetIP则表示目标节点IP,即容错备节点的IP。
上述所述的虚拟机容错是指给正在运行特定服务的虚拟机A设置一台同样配置的虚拟机B并保持数据动态同步状态,当虚拟机A由于某种原因出现异常而无法继续提供特定服务时,虚拟机B自动启动并接过虚拟机A的任务对外继续提供同样的服务,且数据不丢失;
所述的容错主节点和容错备节点则分别是指虚拟机A所在的物理服务器节点和虚拟机B所在物理服务器节点;
所述的XEN是一种虚拟机管理程序,在物理服务器节点上面运行XEN可以使其本身具有创建虚拟机、管理虚拟机的能力;另外XEN同样具有虚拟机动态容错功能.
所述的相关信息主要有两方面来源:通过节点配置文件读取获得的节点名称、节点虚拟化类型、IP网络信息、内存大小、磁盘容量等;通过调用系统工具所获得的节点平台相关的内核信息、CPU类型信息等。
所述的集群控制器即管理端,用于获取并存储所有节点资源信息、虚拟化相关信息,同时接受处理用户请求。
Claims (10)
1.一种高成功率的XEN虚拟机容错机制,其特征在于:
包括如下步骤:
首先通过配置文件设置专门的单独物理机作为容错备节点;
然后各虚拟机主、备节点将自己相关信息发送给集群控制器集统一保存;
用户执行虚拟机容错时,系统首先执行严格的容错条件检测,具体包括平台检测、状态检测、半虚拟化检测、资源检测、网络检测以及软硬件检测等;
如果系统通过了全部的检测,则产生容错记录,或者产生异常阻止本次容错操作;
根据容错记录调用虚拟机容错接口执行容错。
2.根据权利要求1所述的XEN虚拟机容错机制,其特征在于:所述的虚拟机容错是指给正在运行特定服务的虚拟机A设置一台同样配置的虚拟机B并保持数据动态同步状态,当虚拟机A由于某种原因出现异常而无法继续提供特定服务时,虚拟机B自动启动并接过虚拟机A的任务对外继续提供同样的服务,且数据不丢失;
所述的容错主节点和容错备节点则分别是指虚拟机A所在的物理服务器节点和虚拟机B所在物理服务器节点;
所述的XEN是一种虚拟机管理程序,在物理服务器节点上面运行XEN可以使其本身具有创建虚拟机、管理虚拟机的能力;另外XEN同样具有虚拟机动态容错功能。
3.根据权利要求1所述的XEN虚拟机容错机制,其特征在于:所述的相 关信息主要有两方面来源:通过节点配置文件读取获得的节点名称、节点虚拟化类型、IP网络信息、内存大小、磁盘容量等;通过调用系统工具所获得的节点平台相关的内核信息、CPU类型信息等。
4.根据权利要求2所述的XEN虚拟机容错机制,其特征在于:所述的相关信息主要有两方面来源:通过节点配置文件读取获得的节点名称、节点虚拟化类型、IP网络信息、内存大小、磁盘容量等;通过调用系统工具所获得的节点平台相关的内核信息、CPU类型信息等。
5.根据权利要求1至4任一项所述的XEN虚拟机容错机制,其特征在于:所述的集群控制器即管理端,用于获取并存储所有节点资源信息、虚拟化相关信息,同时接受处理用户请求。
6.根据权利要求1至4任一项所述的XEN虚拟机容错机制,其特征在于:所述的平台检测是指检测待容错虚拟机所在的主节点及备节点虚拟化检测,只有XEN虚拟化节点才支持虚拟机容错;
所述的虚拟机状态检测规定只有处于正在运行状态下并且没有执行其他长操作的虚拟机才提供容错功能;其他长操作是指耗时比较长的相关操作,例如虚拟机打包、虚拟机迁移等;
所述的半虚拟化检测是指对虚拟机系统本身的检测,只有当虚拟机系统本身没有安装半虚拟化驱动的条件下才允许虚拟机进行容错;的半虚拟机驱动是指云计算虚拟化领域内提供的一种I/O驱动程序,该驱动程序能够使虚拟机获得较高性能的I/O读写能力,保证虚拟机和物理机性具有相当的性能;
所述的资源监测是指在虚拟机容错开始之前见检验容错备节点是否具有该虚拟机运行所需要的CPU、内存及磁盘等相关资源,只有资源满足的条件下才 继续执行容错操作;
所述的网络检测是指保证容错主备节点上网络资源一致,容错之前先创建并启动容错虚拟机所必须的VLAN、网桥等;
所述的软硬件检测是检测主备节点的Linux内核版本、CPU类型等相关信息。
7.根据权利要求5所述的XEN虚拟机容错机制,其特征在于:所述的平台检测是指检测待容错虚拟机所在的主节点及备节点虚拟化检测,只有XEN虚拟化节点才支持虚拟机容错;
所述的虚拟机状态检测规定只有处于正在运行状态下并且没有执行其他长操作的虚拟机才提供容错功能;其他长操作是指耗时比较长的相关操作,例如虚拟机打包、虚拟机迁移等;
所述的半虚拟化检测是指对虚拟机系统本身的检测,只有当虚拟机系统本身没有安装半虚拟化驱动的条件下才允许虚拟机进行容错;的半虚拟机驱动是指云计算虚拟化领域内提供的一种I/O驱动程序,该驱动程序能够使虚拟机获得较高性能的I/O读写能力,保证虚拟机和物理机性具有相当的性能;
所述的资源监测是指在虚拟机容错开始之前见检验容错备节点是否具有该虚拟机运行所需要的CPU、内存及磁盘等相关资源,只有资源满足的条件下才继续执行容错操作;
所述的网络检测是指保证容错主备节点上网络资源一致,容错之前先创建并启动容错虚拟机所必须的VLAN、网桥等;
所述的软硬件检测是检测主备节点的Linux内核版本、CPU类型等相关信息。
8.根据权利要求1至4任一项所述的XEN虚拟机容错机制,其特征在于:所述的容错信息记录是指当所有检测条件都满足的前提下,将用户虚拟机容错请求保存,记录日志;
所述的启动容错是指调用XEN虚拟机管理程序的remus工具执行虚拟机容错。
9.根据权利要求5所述的XEN虚拟机容错机制,其特征在于:所述的容错信息记录是指当所有检测条件都满足的前提下,将用户虚拟机容错请求保存,记录日志;
所述的启动容错是指调用XEN虚拟机管理程序的remus工具执行虚拟机容错。
10.根据权利要求6所述的XEN虚拟机容错机制,其特征在于:所述的容错信息记录是指当所有检测条件都满足的前提下,将用户虚拟机容错请求保存,记录日志;
所述的启动容错是指调用XEN虚拟机管理程序的remus工具执行虚拟机容错。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310719585.8A CN103729263B (zh) | 2013-12-23 | 2013-12-23 | 一种高成功率的xen虚拟机容错机制 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310719585.8A CN103729263B (zh) | 2013-12-23 | 2013-12-23 | 一种高成功率的xen虚拟机容错机制 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103729263A true CN103729263A (zh) | 2014-04-16 |
CN103729263B CN103729263B (zh) | 2017-07-07 |
Family
ID=50453346
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310719585.8A Active CN103729263B (zh) | 2013-12-23 | 2013-12-23 | 一种高成功率的xen虚拟机容错机制 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103729263B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105700935A (zh) * | 2016-01-12 | 2016-06-22 | 浪潮(北京)电子信息产业有限公司 | 一种Xen虚拟域的域控制方法及系统 |
CN114625567A (zh) * | 2022-02-15 | 2022-06-14 | 北京云集智造科技有限公司 | 一种面向系统容错机制的异常检测方法与系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090113109A1 (en) * | 2007-10-26 | 2009-04-30 | Vmware, Inc. | Using Virtual Machine Cloning To Create a Backup Virtual Machine in a Fault Tolerant System |
CN102222034A (zh) * | 2011-07-15 | 2011-10-19 | 浙江大学 | 基于程序轮廓分析的虚拟化平台性能评测方法 |
CN102662836A (zh) * | 2012-03-28 | 2012-09-12 | 易云捷讯科技(北京)有限公司 | 一种虚拟机评测系统及方法 |
CN102819465A (zh) * | 2012-06-29 | 2012-12-12 | 华中科技大学 | 一种虚拟化环境中故障恢复的方法 |
-
2013
- 2013-12-23 CN CN201310719585.8A patent/CN103729263B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090113109A1 (en) * | 2007-10-26 | 2009-04-30 | Vmware, Inc. | Using Virtual Machine Cloning To Create a Backup Virtual Machine in a Fault Tolerant System |
CN102222034A (zh) * | 2011-07-15 | 2011-10-19 | 浙江大学 | 基于程序轮廓分析的虚拟化平台性能评测方法 |
CN102662836A (zh) * | 2012-03-28 | 2012-09-12 | 易云捷讯科技(北京)有限公司 | 一种虚拟机评测系统及方法 |
CN102819465A (zh) * | 2012-06-29 | 2012-12-12 | 华中科技大学 | 一种虚拟化环境中故障恢复的方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105700935A (zh) * | 2016-01-12 | 2016-06-22 | 浪潮(北京)电子信息产业有限公司 | 一种Xen虚拟域的域控制方法及系统 |
CN114625567A (zh) * | 2022-02-15 | 2022-06-14 | 北京云集智造科技有限公司 | 一种面向系统容错机制的异常检测方法与系统 |
Also Published As
Publication number | Publication date |
---|---|
CN103729263B (zh) | 2017-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Endo et al. | High availability in clouds: systematic review and research challenges | |
CN103458036B (zh) | 一种集群文件系统的访问装置和方法 | |
EP3340057B1 (en) | Container monitoring method and apparatus | |
US9690829B2 (en) | Dynamic load balancing during distributed query processing using query operator motion | |
US9659057B2 (en) | Fault tolerant distributed query processing using query operator motion | |
Jhawar et al. | Fault tolerance management in IaaS clouds | |
US8171349B2 (en) | Associating a monitoring manager with an executable service in a virtual machine migrated between physical machines | |
JP4882845B2 (ja) | 仮想計算機システム | |
US7925923B1 (en) | Migrating a virtual machine in response to failure of an instruction to execute | |
US9537720B1 (en) | Topology discovery for fault finding in virtual computing environments | |
US9575785B2 (en) | Cluster system and method for providing service availability in cluster system | |
US20160203013A1 (en) | Method for leveraging hypervisor functionality for maintaining application consistent snapshots in a virtualization environment | |
US10346263B2 (en) | Host swap hypervisor that provides high availability for a host of virtual machines | |
US8656226B1 (en) | System and method for statistical application-agnostic fault detection | |
US20170277439A1 (en) | Techniques for Path Optimization in Storage Networks | |
GB2520808A (en) | Process control systems and methods | |
US20190235902A1 (en) | Bully vm detection in a hyperconverged system | |
US10810030B2 (en) | Identifying entities in a virtualization environment by converting heterogeneous string identifiers for interaction with a single API | |
KR102460416B1 (ko) | 컨테이너 기반의 분산 애플리케이션 관리 시스템 및 방법 | |
Myint et al. | Availability improvement in virtualized multiple servers with software rejuvenation and virtualization | |
Trivedi et al. | System availability assessment using stochastic models | |
Nguyen et al. | A comprehensive evaluation of availability and operational cost for a virtualized server system using stochastic reward nets | |
Di Sanzo et al. | Machine learning for achieving self-* properties and seamless execution of applications in the cloud | |
CN103902401A (zh) | 基于监控的虚拟机容错方法及装置 | |
Machida et al. | Toward optimal virtual machine placement and rejuvenation scheduling in a virtualized data center |
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 | ||
CP02 | Change in the address of a patent holder |
Address after: 523808 19th Floor, Cloud Computing Center, Chinese Academy of Sciences, No. 1 Kehui Road, Songshan Lake Hi-tech Industrial Development Zone, Dongguan City, Guangdong Province Patentee after: G-Cloud Technology Co., Ltd. Address before: 523808 No. 14 Building, Songke Garden, Songshan Lake Science and Technology Industrial Park, Dongguan City, Guangdong Province Patentee before: G-Cloud Technology Co., Ltd. |
|
CP02 | Change in the address of a patent holder |