转一篇:Hyper-V和VMware的高可用实时迁移技术详解
ESX里以集群的ha、drs、dpm功能实现
HYPER-V里以集群+共享存储实现。
~~~~~~~~~~
微软公司的Hyper-V虚拟化管理程序一经面世就引发了业界的普遍关注。本文意在对Hyper-V的高可用性和快速迁移能力与VMware旗下的VMotion的实时迁移能力进行对比。在进行详细分析之前,我们还需要了解为什么高可用性在虚拟化应用中起着绝对关键的作用。
虚拟化是一项令人敬畏的技术。在减少企业的总体拥有成本方面优势巨大,其中最显著的优势就是节省了能耗。以一座10,000台服务器配置的数据中心为例,如果以2:1的比例应用虚拟化技术进行服务器整合将服务器的数量减少一半,那么这退役的5,000台服务器所节省的能耗和成本将是个不可思议的数字。
每月的能源支出账单最能反映问题。事实上,实现2:1的整合比例是非常简单的。(我们内部的IT部门多年来都在使用虚拟机,目前在用的虚拟机数量超过了2,500台,很容易就能实现8:1的比例整合。有了Hyper-V之后,服务器整合的比例还将迅速攀升)。
然而,虚拟化并非完美无缺的。虚拟化产生的主要问题是单点故障。过去用户可以在他们的每台物理服务器上运行20项工作负载。当其中一台服务器宕机时,虽然很糟糕,但不至于波及到整个服务器网络。
而在虚拟化环境里,如果20项工作负载都在一台服务器顶部运行,那么一旦物理服务器宕机会发生什么呢?那就意味着所有的工作负载都会陷入瘫痪。这就不止是糟糕而是个灾难了。事实上大量虚拟化用户都反映了这个单点空白的问题:
虚拟化是项了不起的技术,但那是如果没有高可用性解决方案就无法实施虚拟化的部署。如果虚拟机宕机又没有配套的高可用性解决方案,那数据中心管理者就会因此而失业。
以上是我们对虚拟化部署中高可用性的重要作用的概括总结。
有了高可用性的概念,我们就知道要为计划内和非预期的宕机提供解决方案。计划内宕机是两种宕机中相对容易解决的一种(因为在计划内)也非常普遍。通常来说,硬件设备(添加内存,存储设备或者升级BIOS)或软件补丁都在计划内宕机之列。多数用户都会提前为宕机预留时间(清晨或者周末)。
非预期的宕机解决起来就相对较难。当一台服务器遭遇突然断电时,用户就希望服务器上运行的虚拟机能在没有用户干预的情况下实现在其他服务器上的自动重启。
Hyper-V管理程序与Windows Server 2008操作系统的Failover Clustering相结合,即使用户拔掉电源插头,所有的虚拟机也无需用户操作就能在其他节点上自动重启。另外,Windows Server 2008操作系统企业版和数据中心版本都包含这个功能(无需额外收费)。
我需要特别强调的是:
虚拟化与高可用性紧密相关;如果用户在没有高可用性解决方案的情况下部署虚拟化,用户就应该重新评估他们的实施战略。
Hyper-V管理程序包含完整的高可用性解决方案并与Windows Server 2008操作系统企业版和数据中心版本绑定,无需额外收费
接下来我们来讨论计划内宕机,并对快速迁移和实时迁移之间的不同加以比较;通过上周我从用户处得到的反馈,我意识到先要对一些疑惑做出解释。
用户用电子邮件的方式表示VMotion非常适用于非预期的主机宕机,因为它能实现虚拟机的实时迁移,所以是更好的高可用性解决方案。但这并不能简单套用到这个案例里。
在非预期的宕机情况下,由于没有预兆VMotion也不能实时迁移。取而代之的是用户必须配置VMware的高可用性解决方案。最好的做法是在其他服务器上重启受到影响的虚拟机,这与Windows Server 2008 Hyper-V以和Failover Clustering的做法是一样的。
以下引用VMware的文件对自动高可用性服务器的描述,第一页第二段这样说道:
"使用VMware的高可用性解决方案,虚拟机能在硬件故障的时候自动重启~"
第8页这样描述:"VMware的高可用性如何工作?
VMware的高可用性解决方案能连续监控集群上托管的所有ESX服务器并对硬件故障进行探测。每台主机上放置的代理服务器都保持和集群上其他主机的密切联系。高可用性解决方案会全天候监控集群资源是否充足,以备能在发生主机故障时随时在不同的物理主机上重启虚拟机。"
从这点上看,VMware的高可用性解决方案和Hyper-V的failover clustering实现的是同样的功能:那就是在其他的服务器上重启虚拟机。没有谁好谁坏之说。如果你仍然不相信我,找一台ESX Servers,切断电源试一下(别说我没警告你)。
之前我们讨论了高可用性解决方案对于非预期主机宕机的重要性。现在让我们继续探讨计划内宕机下快速迁移和实时迁移的比较。首先让我们先了解一下用户为什么需要迁移功能?
要实施计划内宕机主要出于两个原因:
1.硬件维修。硬件的更新换代需要添加额外的内存,存储或者BIOS升级。这时服务器就必须脱机,用户要将服务器上的工作负载在预定维修时间内快速进行迁移。
2.对主机操作系统进行补丁升级。如果根分区需要打补丁而补丁程序又需要重启,然后用户在预定的维修时间里将虚拟机快速迁移(需要指出的是运行Hyper-V最好的办法是用Server Core安装,这样能减少为Windows操作系统打补丁的需求)
我们曾就询问过使用实时迁移功能的用户,是否他们因此改进了维护流程,特别是当他们进行硬件升级的情况下。多数回答是:"不,我们仍然为服务器的宕机时间做了计划"。甚至是使用实时迁移的用户也是在宕机情况下维护硬件的。
转一篇:Hyper-V和VMware的高可用实时迁移技术详解的更多相关文章
- Vmware在NAT模式下网络配置详解
Vmware在NAT模式下网络配置详解 Linux中的网络配置对于接触Linux不久的小白菜来说,还是小有难度的,可能是不熟悉这种与windows系列迥然不同的命令行操作,也可能是由于对Linux的结 ...
- Vmware 6.5:vmware vm高可用-vSphere HA & Fault Tlerance
目录 vmware HA介绍 服务器添加存储,将存储挂载到服务器上 vcenter安装配置 群集配置 故障迁移测试 下载地址:百度云 参考文档: vmware HA介绍 vmware vm高可用至少需 ...
- 【转】在VMware中为Linux系统安装VM-Tools的详解教程
在VMware中为Linux系统安装VM-Tools的详解教程 如果大家打算在VMware虚拟机中安装Linux的话,那么在完成Linux的安装后,如果没有安装Vm-Tools的话,一部分功能将得不到 ...
- VMware 虚拟化编程(7) — VixDiskLib 虚拟磁盘库详解之三
目录 目录 前文列表 VixDiskLib 虚拟磁盘库 VixDiskLib_GetMetadataKeys VixDiskLib_ReadMetadata 获取虚拟磁盘元数据 VixDiskLib_ ...
- VMware 虚拟化编程(6) — VixDiskLib 虚拟磁盘库详解之二
目录 目录 前文列表 VixDiskLib 虚拟磁盘库 VixDiskLib_Open 打开 VMDK File VixDiskLib_Read 读取 VMDK File 数据 VixDiskLib_ ...
- VMware 虚拟化编程(5) — VixDiskLib 虚拟磁盘库详解之一
目录 目录 前文列表 VixDiskLib 虚拟磁盘库 虚拟磁盘数据的传输方式 Transport Methods VixDiskLib_ListTransportModes 枚举支持的传输模式 Vi ...
- 《python开发技术详解》|百度网盘免费下载|Python开发入门篇
<python开发技术详解>|百度网盘免费下载|Python开发入门篇 提取码:2sby 内容简介 Python是目前最流行的动态脚本语言之一.本书共27章,由浅入深.全面系统地介绍了利 ...
- 【转】VMware虚拟机三种网络模式超详解
[原文]https://www.toutiao.com/i6596228488666022403/ 由于Linux目前很热门,越来越多的人在学习Linux,但是买一台服务放家里来学习,实在是很浪费.那 ...
- [转载]JavaEE学习篇之——JQuery技术详解
原文链接:http://blog.csdn.net/jiangwei0910410003/article/details/32102187 1.简介2.工具3.jQuery对象 1.DOM对象转化成j ...
随机推荐
- 为什么使用spring Struts 等框架开发
转载自:http://www.cnblogs.com/sharpxiajun/p/3936268.html 今年我一直在思考web开发里的前后端分离的问题,到了现在也颇有点心得了,随着这个问题的深入, ...
- Lucene的中文分词器IKAnalyzer
分词器对英文的支持是非常好的. 一般分词经过的流程: 1)切分关键词 2)去除停用词 3)把英文单词转为小写 但是老外写的分词器对中文分词一般都是单字分词,分词的效果不好. 国人林良益写的IK Ana ...
- Android Dialog透明度和暗度
1.设置透明度(Dialog自身的透明度)WindowManager.LayoutParams lp=dialog.getWindow().getAttributes(); lp.alpha=1.0f ...
- 网络编程---(数据请求+slider)将网络上的大文件下载到本地,并打印其进度
网络编程---将网络上的大文件下载到本地,并打印其进度. 点击"開始传输"button.将网络上的大文件先下载下来,下载完毕后,保存到本地. UI效果图例如以下: watermar ...
- lnux内核的malloc实现(Oracle的cache buffer影子)
lnux内核的malloc实现(Oracle的cache buffer影子) 本文原创为freas_1990,转载请标明出处:http://blog.csdn.net/freas_1990/artic ...
- inux 安装中文支持包及中文字符集配置 +i18n
由于某些原因系统安装时未安装中文支持,导致后续应用出现中文方块乱码现象, 解决方法很简单,当然不是重装,只需以下三步即可搞定. .安装中文包: yum -y groupinstall chinese- ...
- UML中的图
用例图.类图.包图.顺序图.协作图.状态图.活动图.构件图.部署图等 1.用例图 显示多个外部参与者以及他们与系统提供的用例之间的连接.用例是系统中的一个可以描述参与者与系统之间交互作用功能单元.用例 ...
- HDU 4462(暴力枚举)
因为题目当中的k比较小k <= 10,所以可以直接枚举,题目里面由两个trick, 一个是如果每个点都可以放稻草人的话,那么答案是0, 另外一个就是如果可以放稻草人的点不用被照到.知道了这两个基 ...
- Android内存泄漏的各种原因详解
转自:http://mobile.51cto.com/abased-406286.htm 1.资源对象没关闭造成的内存泄漏 描述: 资源性对象比如(Cursor,File文件等)往往都用了一些缓冲,我 ...
- 当ViewPager嵌套在ScrollView/ListView里时,手势冲突如何处理?
有时我们需要将ViewPager嵌套在其他已经含有手势动作的ViewGroup里,如ScrollView,ListView时,会造成手势冲突,如表现为ViewPager向左划时,不小心向上移动了一点距 ...