虚拟机备份的五大常见错误及规避方法

http://server.chinabyte.com/97/12352597.shtml

在虚拟环境下进行备份和在物理环境中是不同的。虽然虚拟机备份的方式有很多,但由于虚拟环境的特点,可能会遇到很多意想不到的问题。这篇技巧中,我们会讲解如何高效的创建虚拟机备份并避免一些常见错误。

  不建议通过客户端备份虚拟机

  在备份虚拟机时候,采用客户端操作系统的方式备份是最为常见的误区。你不能使用传统的在客户端操作系统上安装代理的备份方式来处理虚拟机备份。这种方式的问题之一就是低效性,原因是在于虚拟层所处的位置在物理硬件以及客户端操作系统之间。因而客户端操作系统没有对物理设备上存储数据的直接访问权限,这样而来,备份的时候如果采用这种方式,宿主机上的代理就必须要通过虚拟层去访问虚拟机上的数据。这样的方法带来的另外一个问题是,会造成主机端没有必要的资源消耗,并且如果是遇到多个备份并行进行,还可能造成瓶颈问题。

  替代的方法是,备份服务器应该直接访问虚拟层而不是走客户端虚拟机。通过这样的方法,虚拟机操作系统就不会参与到备份进程里,也不会消耗宿主机上的资源。相比于之前的方式,这样的方式显得更为有效率,因为备份服务器可以直接将虚拟机磁盘直接从主机的data store挂载过来。这样的方式被称为镜像级备份,虚拟机的数据文件是以数据块级别的方式备份的,而不是传统的文件级别备份。使用镜像级备份需要使用可以调用VMware vStorage API的备份软件直接访问虚拟磁盘文件来完成。

  需要特别建议的是,不要尝试直接在虚拟存储层备份虚拟机磁盘文件而绕过虚拟层。虚拟机操作系统以及虚拟磁盘在备份前需要处于特别的状态,而如果绕过虚拟层,这一系列变化将无法完成。

  虚拟机快照并不是备份

  虚拟机的快照保留了虚拟机做快照时候的状态。此外,多个快照可以保证有多个恢复点。在很多时候,这样的方式都会很有用,然而这并不能被作为主要的一个备份方式。其中的一个问题是,虚拟机的快照一旦被恢复到了其中一个还原点,就无法恢复到现在的状态。如果虚拟机现在的状态丢失了,那么仅能恢复到上一次做快照的状态。快照技术无法恢复单独文件,它能做的只是将整个虚拟机的状态进行恢复。快照技术还有另外的一些问题,比如说,它只是以16MB大小增量进行:虚拟机所在的LUN在进行容量增长的时候需要以锁定的状态进行,这样可以避免其他主机对相同的LUN进行写操作。

  快照相关的操作大多数与SCSI有关,其过程大都会影响虚拟机的性能,因为需要等待LUN解锁。随着数据的写入,每个快照是单独的文件,这样下来,如果有大量的快照会产生磁盘空间的问题。快照的用途是短期的备用备份功能,例如有需要恢复到之前状态的情况,比如说虚拟机系统打过补丁或者应用升级后。

  确保使用了正确的静默方式

  大多数虚拟化备份应用在使用镜像级备份的时候都会忽视虚拟机里面本身的应用情况。在备份虚拟机的时候,需要事先确认里面的应用在备份前已经静默完成,这样以确保备份是完整连续的。如果没有使用正确的静默方式,备份的数据在恢复的时候可能会遇到不完整的问题。静默操作由虚拟机内置操作系统本身完成,对于微软操作系统来说,VSS将会帮助处理这一系列问题。由于备份服务器备份虚机的时候是在虚拟层完成的,而不是客户端操作系统里面,就需要另外的应用来告知客户端操作系统来静默虚拟机。

  在vSphere环境下,第三方的应用叫VMware Tools,它会告知VSS服务来静默客户端操作系统。VMware Tools安装在客户端操作系统上并在操作系统和虚拟层之间来提高服务。

  对于像Linux那样一些操作系统没有VSS这样的本地服务的系统来说,VMware Tools提供了特别的驱动程序以确保它们能提供像VSS一样的服务。因此VMware Tool是否安装在客户机里面尤为重要。当然,也有一些VMware Tools的版本并不支持相应的操作系统版本,因此在使用之前,建议了解该系统版本是否支持对应的应用服务。

  许多的备份服务厂商都会提供相应的代理来应对VMware Tools提供的静默进程无法支持这样的服务。

  谨慎的规划备份周期

  虚拟机的本质上共享主机的,而主机则又共享存储设备,因此创建虚拟机备份的时候需要考虑到对资源的消耗情况。在一个虚拟化环境下,创建备份可能导致主机和虚拟机之间资源竞争的情况发生。即便是在虚拟层的备份会减少对虚拟机资源的占用,然而对主机以及存储设备的占用仍然是不能忽视的。

  为了能避免集中的I/O写入对虚拟机带来的性能影响,建议用户在使用虚拟机备份的时候能减少并行虚拟机在主机和共享存储上运行的数量。主机通常在虚拟化环境中往往会共享同一个存储,在同一个共享存储上由多个并发虚拟机备份产生的资源紧张也会影响到其运行的主机。

  同样的,在相同主机上如果有太多的虚拟机备份进程同时运行,将会造成主机上的性能瓶颈。

  我们建议用户能谨慎的均衡好备份时间,以避免造成资源竞争这样的问题。不要指望哪一个虚拟机会告诉你问题在哪里,我们建议可以查看统计结果以判断。这将帮助你了解I/O的问题以及做出适当的调整。

  不要让你的备份服务器资源紧张

  备份服务器的基本原理很像水泵:数据从源端读取然后流进备份服务器,之后又被送到备份设备上。备份服务器可以处理的量取决于分配给它的资源,换句话说,资源越丰富,我们就能更快的将数据抽取上来。备份可以很大程度上占用网络和存储的资源,然而这并不是仅仅将数据由A传递到B,而是完整的备份过程。除了数据的拷贝和传递,还有重复数据删除,数据压缩的过程以判断还有哪些磁盘块上的数据需要备份。

  为了能使备份服务器达到最大的吞吐性能,我们需要分配足够的资源以免达到瓶颈。

  你需要监控备份服务器的资源使用情况:从实际情况上来说,宁肯让备份服务器占用更多的资源也不要让它的资源不够。如果需要备份的资源更多,那么很可能的是备份服务器也需要更多。如果能确保备份服务器有足够的资源调配,那么我们就能确保它能以最佳性能抽取数据并且能最大程度上缩短备份窗口。

  虚拟化架构引入了许多传统物流环境下无法比拟的备份方式或手段。与虚拟化环境集成的备份应用可以利用这样一些的技术手段以提升备份的效率。VMware公司为此特地开发了相关的API接口以方便第三方备份应用的调用,比如VADP接口,它能帮助备份应用直接与主机以及存储设备通信。VADP提供了更为有效的虚拟磁盘文件的访问方式,例如像变更块追踪技术(CBT)等,将大大缩短原有备份所要的时间。

  增量备份的关键是能判断出自上次备份后的改变量。CBT技术将查询虚拟机的VMkernal,里面将记录磁盘块改变的记录,通过快速查询,我们将很快的知道虚拟机的虚拟磁盘自上次指定时间后的变化量发生在哪些数据块上。

  备份应用通常自己就能完成这些判断操作,因此越快的完成这些操作就意味着能更快的完成增量备份操作。

  为了能实现最有效率的备份方式,我们建议能最大程度的采用虚拟化架构提供的备份接口以达到高效备份的效果

原文出自【比特网】,转载请保留原文链接:http://server.chinabyte.com/97/12352597.shtml

时间: 2024-07-30 10:18:39

虚拟机备份的五大常见错误及规避方法的相关文章

SQLSERVER 备份还原常见错误以及解决方法

SQLSERVER 备份还原常见错误以及解决方法      个人在做测试的时候发现的常见问题,和一些解决方案,记录下来,以免遗忘! 错误一 解决方法: 先分离源数据库,然后你可以使用 move 属性 或者直接添加 REPLACE

WCF项目中出现常见错误的解决方法:基础连接已经关闭: 连接被意外关闭

原文:WCF项目中出现常见错误的解决方法:基础连接已经关闭: 连接被意外关闭 在我们开发WCF项目的时候,常常会碰到一些莫名其妙的错误,有时候如果根据它的错误提示信息,一般很难定位到具体的问题所在,而由于WCF服务的特殊性,调试起来也不是那么方便,因此往往会花费不少时间来进行跟踪处理.本文介绍我在我在我的框架里面使用WCF服务的时候,出现的一个常见错误的处理方法,它的提示信息是:基础连接已经关闭: 连接被意外关闭.这种情况我碰到的有两种,一种是返回DataTable的时候出现的,一种是返回实体类

嵌入式软件容易犯的错误和规避方法总结

当今世界,放眼江湖,有电子的地方就有嵌入式软件,有电子故障的地方,也就有嵌入式软件设计缺陷的影子.那么捷配小编今天就把软件所容易犯的错误和规避的方法一一罗列,并给出应对之法.嵌入式软件的最大特点是以控制为主,软硬结合的较多,功能性的操作较多,模块相互间调用的较多,外部工作环境复杂容易受到干扰或干扰别的设备,且执行错误的后果不仅仅是数据错误而是有可能导致不可估量的灾难,所以总结起来,嵌入式软件可靠性设计需注意的问题有四个方面:1.软件接口先说软件接口中容易出问题的地方和编程人员容易犯的错误.软件接

telnet常见错误及其解决方法

telnet常见错误提示及解决方法 当出现以下问题时,即软件已安装.服务已经启动,查看23号端口却发现,没有此端口,解决方法如下:修改telnet服务配置文件. [[email protected] ~]# rpm -qa telnet* telnet-server-0.17-48.el6.x86_64 telnet-0.17-48.el6.x86_64 [[email protected] ~]# service xinetd start 正在启动 xinetd: [[email protec

PROTEL DXP原理图编译 常见错误与处理方法

一, [Warning] AUDIO.SCH Extra Pin R509-1 in Normal of part R509      [Warning] AUDIO.SCH Extra Pin R509-2 in Normal of part R509      [Warning] AUDIO.SCH Extra Pin R509-1 (Inferred) in Alternate 1 of part R509      出现此类警告的原因 :在 AUDIO.SCH文件中的所有电阻封装不可用.

web程序常见错误及解决方法

404错误产生原因及解决方法 在刚开始进行Web应用开发的时候,经常看见页面出现404这个数字,我们一般会称之为运行产生了404错误.类似于404这个数字,还有可能在页面上看到405.500这两个数字,他们都是服务器执行完客户端的请求以后,返回给客户端的一个关于执行结果的状态编码说明. 如果在运行结果页面中没有看到期待的页面,却看到了404.405.500这样的数字,那么代表着服务器告诉客户端运行产生了错误,掌握何种错误情况产生对应的数字将有利于问题的解决. 404产生的原因为Web服务器(容器

ecshop常见错误的处理方法

用ecshop,其中出现了不少错误,经常是满世界找原因,今天分享几个问题的解决办法,方便大家及时处理.如果有相关的ecshop问题欢迎跟帖咨询 问题1:出现错误代码:ECshop lib_base.php on line 1241 .Notice: Undefined variable: data in D:\wwwroot\KISS\wwwroot\includes\lib_base.php on line 1241 Warning: require() [function.require]:

.NET开源工作流RoadFlow-系统布署中常见错误及处理方法

1.未开启asp.net状态服务时会出现以下错误: 解决办法:开启ASP.NET STATE SERVICE服务 2.未开启应用程序池32位: 解决办法:启用32位

Oracle常见错误及解决方法

环境:LINUX下的oracle数据库10g ORA-12541:TNS:没有监听器 原因:没有启动监听器或者监听器损坏.如果是前者,使用数据库安装的用户oracle(这里oracle用户是指Linux用户,非oracle或者root的其他用户可能没有权限操作安装目录下的文件)进入Linux系统,然后: [[email protected] ~]$ lsnrctl status #查看监听器的状态[[email protected] ~]$ lsnrctl status #如果没有启动那就使用此