跳至主要内容

博文

目前显示的是标签为“hyper-v”的博文

微软的Hyper-V的安全性从何而来?

微软在新的Hyper-V中一直在着重提出其在安全性方面的优势,而微软或许也希望通过对安全性的阐述来带出两点:1、微软的Hyper-V是与众不同的;2、Hyper-V的微架构相比其它“第三方的解决方案”是有特殊的安全性优势的。 确实,由于Hyper-V在微内核上的优势:微内核管理程序包含了尽可能少的代码,在Hyper-V的管理程序中,你既看不到设备驱动程序(驱动程序是跑在每一个独立的分区中,而虚拟机OS虽然在相互独立的单独分区内但是却能够很好的通过Hypervisor直接访问硬件),同时,Hyper-V也少见第三方代码,因此,微软成功的将Hyper-V的安全隐患降到了最低。 但这只是Hyper-V的安全性话题的其中一部分,微软在保护Hyper-V上所投入的力量显然是更为巨大的,且安全性,尤其是在与Windows Server紧密结合之后的安全性,正成为微软与VMware、Xen Source这些第三方解决方案抗衡的重要砝码。 微软的Hyper-V的虚拟化前身来自于Virtual Server,这是一个建立在Ring0内核模式和Ring3用户模式下的传统模式,宿主机的Windows和驱动程序及VS底层驱动都是在Ring0下,Virtual Server则是在Windows Server上的,通过IIS来进行管理,与内核进行通信,但反观虚拟机,其Virtual Server则运行于一个高于WIndows的Ring1虚拟内核模式上,特权低于Ring0,但是高于Ring3——问题在于很多特权指令很可能不能够在Ring1上得到完善的支持,当然,我记得微软好像也有一种什么二进制指令翻译的技术进行处理,但是这毕竟不是一个最“根本”的解决途径。 在Hyper-V中,不再有宿主机和虚拟机之分,微软带来的新概念是:父分区和子分区,通过在硬件底层安装Hypervisor,然后就在虚拟机上划分多个分区,父分区和子分区虽然看起来可以对应之前的宿主机和虚拟机,但是其地位已经基本平等,他们的内核都是运行在Ring0上,应用程序则运行在Ring3用户模式上,与VS最大的不同是,虚拟机的内核不再运行在Ring1之中,Hypervisor运行的则更为底级,大致是运行在CPU上的一个什么层上,微软的命名也很有意思,叫Ring-1,从图中我们看到,微软虚拟化的功能和结构已经大...

hyper-v的优势

Hyper-V管理程序随着最近RC1版本的推出终于要与大家见面了。微软公司也正在从工程运作的主模式向cross-the-i's和dot-the-t's(对细节一丝不苟之意)的模式转变。包括庞大的可支持操作系统名单的Hyper-V主体目前已经准备就绪,微软公司的用户可以满怀自信的将他们的测试虚拟机向试运行的管理程序上迁移了。   不过微软Hyper-V主机和虚拟机的管理解决方案也就是Microsoft System Center Virtual Machine Manager 2008还需完善,目前还处于公共测试版阶段,Microsoft System Center Virtual Machine Manager 2008(微软系统中心虚拟机管理2008,缩写为MSCVMM)受到了Hyper-V管理程序内在局限性的限制,特别是Hyper-V目前还无法实现虚拟机的实时迁移。   全面解析   首先来看MSCVMM的优势所在:MSCVMM采用更为先进的全新用户界面来管理微软的各种虚拟化环境,包括Hyper-V管理程序和以前的虚拟服务器产品线。MSCVMM控制台能允许用户以有效的方法过滤信息来实现对常规任务的快速访问。   诸如控制虚拟机和管理不同工作引擎等主要功能根据所执行的工作负载被分为不同的逻辑子群。每个逻辑子群都能提供丰富的过滤选项供用户使用,比如在特殊情况下添加主机或虚拟机等。这是一个简单的装置,但当它在管理一个大型虚拟化环境时却非常与众不同。   MSCVMM库对存储虚拟机映像也非常有帮助。这意味着微软正在从工作组虚拟机向数据中心参与者转变,MSCVMM库通过不断发展的微软虚拟机基础架构轻松实现对虚拟机的分配和跟踪。   从MSCVMM控制台简单选择中意的虚拟机然后分配到目标主机上去。MSCVMM库服务器和代理服务器能将虚拟机映像复制到相应的物理机上并在线展示。这一特性还能与全新的快速迁移特点(以网络为通道实现快照)相结合。MSCVMM成熟的库模式使Hyper-V升级变的更加容易。   不利之处:不幸的是易于管理只是微软追赶VMware的特性之一。公司没有解决实时迁移的问题,VMware公司的VMotion能够在无宕机情况下实现虚拟机在物理服务器之间的无缝迁移。   微软公司也曾经设想为Hyper-V增加这项功能,但Hyper-V之前预计要在W...

Hyper-V和多处理器虚机入门解读

Hyper-V采用基于Hyperisor的架构,并且充分利用Windows驱动模型,以便提供广泛的硬件支持。Hypervisor可以把单个服务器划分为多个CPU和内存的容器。由于采用微内核架构,Hyper-V可以提供高效的分区间通信机制,并在此基础上搭建高性能的虚拟I/O架构。根分区包含物理I/O设备,还将提供虚拟栈用来为子分区所实现的I/O服务。 虚拟栈可以实现模拟I/O设备,例如IDE控制器和DEC 21140A网卡。然而模拟这种设备的代价很昂贵。发送单个I/O请求,就有可能导致虚拟栈和子分区之间的多次切换。相反,Hyper-V提供专门为虚机环境所设计的虚拟I/O设备。这些虚拟设备连接到VMBus,这是一个支持即插即用的总线,使用共享内存,以便可以有效地进行分区间通信。Windows虚机可以自动检测到VMBus上的虚拟设备,并且加载合适的驱动程序。 Hyper-V中的虚拟输入/输出采用客户端/服务器架构,在根分区中包含VSP(虚拟服务提供程序),在子分区中包含VSC(虚拟服务客户端)。该架构极大地减少发送I/O请求所需的开销。如果Virtual Server用户把虚机迁移到Hyper-V中,他们将体会到高I/O的工作负载的CPU开销大大降低。 在这第一篇文章里,笔者想着重指出Hyper-V的主要性能特性:多处理器的虚机。Hyper-V支持4 CPU的Windows Server 2008虚机,和2 CPU的Windows Server 2003虚机。如果服务器工作负载需要很高的性能,我们可以考虑用2 CPU或者4 CPU的Hyper-V虚机对其进行虚拟化。当然,只有当工作负载确实需要的时候,才应该使用多处理器虚机,因为拥有更多的处理器会带来一些额外的开销。   然而,操作系统内核和驱动会采用自旋锁(Spin Lock)的机制,在获得自旋锁之前,(线程)并不会阻塞,并一直处于自旋状态,前提是自旋锁只会保持很短的时间。但是虚拟化会打破这种条件,因为虚拟处理器是按时间片进行调度的。如果在保持自旋锁的时候竞争虚拟处理器,则其他虚拟处理器就要自旋很长时间,导致CPU循环的浪费。[盆盆注:自旋锁是多处理器操作系统的一种互斥机制,有点类似于互斥锁,但是保持时间更短。更详细信息,可以参考《Windows Internals》第四版的P152]   我...

hyper-v试用

Microsoft hyper-v已经出来很长的时间了,但是直到最近我在使用Windows 2008 64bit enterprise时才开始接触。我选择的是带hyper-v的安装,所以在安装好添加hyper-v的角色重启之后就可以了。hyper-v是微软最新的虚拟化技术,之前我一直使用的是wmwareworkstation和vitrual pc 2007,在之前的感觉里,vitrual pc在性能上不如vmware,特别是在开多个虚拟机后,响应的速度不及mware,这应该和两者在内存管理上的区别有关。hyper-v是基于裸金属的虚拟化技术,不是在宿主机上进行的模拟,所以理论上hyper-v的性能比vmware workstation和vitrual pc 都要好一些,在使用了一段时间之后,确有这样的感觉。hyper-v虽然有一些优势,但是呢,对于实验使用也有一些的不方便,我将hyper -v的网卡设置为私有,在安装好hyper-v的集成服务后,宿主机无法拷贝文件到hyper-v的虚拟机里,当然这是必然的,就是因为之前说的hyper-v是基于裸金属的虚拟技术。当然如果是将网络设置为内部网络,宿主机可以虚拟机进行通信,可以通过文件共享的方式进行文件交换.hyper-v的设置是比较简单的,之前对虚拟机的熟悉,所以我没有看什么教程便能熟悉使用,希望在hyper-v2.0 的时候,能有更多丰富的功能.