ESXI如何实现虚拟化
一般虚拟化主ESXi都会开启BIOS中的CPU虚拟化技术,INTEL叫VT-x,AMD的叫AMD-V。如下图为DELL服务器的CPU虚拟化功能开启方法,进入BIOS,选择Process Setting,将Virtualization Technology设置为Enabled。
当在该ESXi主机上新建一个虚拟机,如下,名称为test01
在此虚拟机里安装一套VMware Workstation 11,如下图
在选择操作系统时,只要选择的是64位的操作系统,都会此主机(虚拟机)不支持64位操作系统,无法运行。
2008R2也不支持
这时,就需要将此虚拟机test01上开启对CPU硬件虚拟化的支持,步骤如下:
用VMware Web Client登陆Cluster,
如下图,打开CPU选项卡,有一行硬件虚拟化:向客户机操作系统公开硬件辅助的虚拟化,将其打钩即可打开虚拟机的CPU虚拟化功能。此处为灰色,因为虚拟机版本太低,目前为8,需升级至9才可以支持。
将虚拟机关机,在虚机上右键选择”所有vCenter操作”->”兼容性“->”升级虚拟机兼容性“
完成后,如下图,虚拟机版本为9
然后虚拟机先不开机,再次进入设置界面,就可以将此选项打钩,如下图。
再次创建64位的操作系统,就没有刚才的提示了。
这样,当给予此虚拟机足够的CPU、内存及磁盘空间资源,再配合VMware Workstation11,就可以搭建虚拟化集群学习环境了
一什么是虚拟化?
简单来讲,虚拟化就是为一些组件创建虚拟(而不是物理)版本的过程。虚拟化可以应用到计算机、操作系统、存储设备、应用或网络。但是,服务器虚拟化才是虚拟化的核心。 现如今的 x86 服务器的设计存在局限性,每次只能运行一个操作系统和应用,这为 IT 部门带来了挑战。因此,即使是小型数据中心也必须部署大量服务器,而每台服务器的容量利用率只有 5% 到 15%,无论以哪种标准来衡量,都十分的低效。
虚拟化使用软件来模拟硬件并创建虚拟计算机系统。这样一来,企业便可以在单台服务器上运行多个虚拟系统,也就是运行多个操作系统和应用,而这可以实现规模经济以及提高效益。
二为什么要虚拟化?
虚拟化技术能为我们解决很多以前解决不了的技术:
1、服务器整合技术:这个技术在没有虚拟化技术之前是很难完成的。因为什么东西都是实际存在的,想把两个工作相对较少的服务器整合到一起是很困难的。然而当有了虚拟化技术以后使这种服务器整合技术变得非常容易。而这个技术需要借助我下面介绍的2、3条技术。
2、负载均衡技术:
负载均衡技术是只在每台服务器上安装一个负载均衡器,然后设置很多的调度算法及临界值。来判断此时此刻服务器的压力是轻还是重。然后根据轻重来完成服务器的合并,而合并又依据了第三条技术。
3、动态迁移技术:这个技术是前两个技术的根基,但是却不只仅仅限于前两个技术。它的目的是可以在服务器开启的状态下,把其上面的虚拟机迁移到其他的服务器上面。工作原理大体是先将目标服务器上模拟出此服务器的硬件状态,然后迁移数据,最后释放此服务器的信息。
4、克隆技术:这个技术说起来和上面那个技术很像,但是却不一样。克隆技术是把一台服务器的环境配置好了后可以通过克隆技术使其他的机子都达到和这台机子一样的效果,假如要配置100台甚至1000台服务器的话这种克隆技术是非常可观的。它和动态迁移的区别是在服务器不停机的状态下,动态迁移要求迁移的彼此必须是共享内存的,但是克隆并没有这个限制。
5、灾难恢复技术:灾难恢复是所有大型公司必须考虑的问题,因为当一些意外发生时,比如:突然断电,硬件损坏,洪水,地震,等一系列情况是,如何把灾难所造成的数据损失降到最低甚至是不损失。这要依靠第六条技术。
6、虚拟快照技术:虚拟快照技术是将虚拟机此时的状态像照片一样保存下来,当然我说的很容易,其实现原理需要非常复杂,包括cpu运行状态,内存中的数据等等。这样保存下这些虚拟技术当发生灾难或者某些失误导致虚拟机出问题时,可以很快恢复。
7、改善系统可用性。这里的可用性只得是零 down机,在这种情况下我们才可以使得效率最大化。而零down机的前提是每台服务器必须要有一个镜像,在主虚拟机和次虚拟机之间有一条心跳线来维持两者之间的关系,当心跳线停止时,次虚拟机立马启动,代替主虚拟机。
8、安全性:我们直到虚拟化在硬件层上都有一层VMM来时时刻刻侦测每台虚拟机的动向,包括捕获异常,解决门事件,完成调度等等。所以当一些危险因素来临时由于VMM的存在使得我们可以非常快的侦测到这个问题并解决它。这能比以前的硬件层上面直接是操作系统快速很多。
IBM的经典机架式服务器型号,大概10年左右的机器。
虚拟化对性能的要求,主要看你虚机上上打算跑什么应用,以及你有多少个虚机。
虚拟化最重要的还是存储系统要给力,备份要做好。
1服务器母机的成本,而且需要具备大量ip的服务器母机,最好是物理机,性能要足,宽带要大。
2虚拟化工具的成本,包括xen,kvm,hy架构,都是需要付费才能用相关工具,创建虚拟机,也就是云服务器。
4控制面板成本,一个完善的虚拟化控制面板,也是收费的,这样才可以让用户进行更加自由的操作。
5销售系统成本,网站比较出名的idc销售系统,比如idcsystem,whmcs,N点,一对一等等,都是收费的,虽然也有免费的存在。但是用收费还是用免费,看你自己选择。
6服务器维护成本,因为会支撑搭建云服务器的运行,那么服务器母机必须保证稳定,按时维护,数据备份等等,否则长期出现问题只会流失用户。
摘 要:随着计算机技术的发展,服务器虚拟化技术已经被越来越多的企业所采用,使用这种技术可以大大提高服务器的使用效率。文章中主要介绍了两种虚拟化软件Vmware和Xen的结构特点,并分析了它们之间的区别。
关键词:服务器虚拟化 Vmware Xen
虚拟化将主宰未来的企业,在现在的国内,企业数据中心都是根据需求随时添加服务器设备,这些设备基本上都是分散的,不同品牌、不同配置甚至不同架构,最致命的是,在其上运行的应用并不能够充分利用服务器所有的资源,占用到15%―20%的服务器资源是一个普遍现象,而使用虚拟化技术可以减少服务器数量的增加,简化服务器管理,同时明显提高服务器利用率、网络灵活性和可靠性。将多种应用整合到少量企业级服务器上即可实现这一目标。通过整合及虚拟化,数百台服务器可以减少至数十台。10%甚至更低的服务器利用率将提高到60%或更高,IT基础设施的灵活性、可靠性和效率也将得到改进。由此可见虚拟化技术成为各个企业和研究机构的重要课题。下面简单介绍一下两种虚拟化软件及其区别。
一、VMware
VMware是业界著名的虚拟机产品,它有VMware Workstation、VMware GSX Server、VMware ESX Server等系列产品。VMware的VMM可以有两种结构形式,即Standalone和Hosted。Standalone的结构形式是指,VMM作为一层直接运行在硬件平台上的软件层,在它上面可以创建和管理多个客户虚拟系统。这种结构的VMM有点像一个操作系统,它包含硬件平台的驱动,受到硬件平台种类的限制。它适合于服务器的应用环境,其典型的产品是VMware ESX Server。
Hosted结构的VMM作为操作系统的一个应用程序运行,它可以利用操作系统自身的内存管理、CPU调动、硬件驱动和资源管理。VMware Workstation使用的是Hosted的结构,是设计来让一些应用程序,比方软件的研发或测试程序来执行,同时Server版本的目标则针对数据库以测试软件更新、简化应用程序的提供,或使用虚拟的设备等功能。ESX Server可以藉由不使用操作系统来大量增加效能。相反的,ESX使用自己设计的操作系统核心,可以直接在计算机上执行。这个方法可以同时支持更多的虚拟服务器,但ESX核心支持的硬件并不多。
由于VMware的目标平台是x86平台,因此,它也同样面临着x86平台不完全支持虚拟化的问题。VMware的解决方法是其专利技术,在需要VMM参与的地方,动态重写部分虚拟系统的指令,使其可以trap到VMM。
此外,VMware还有Virtual Center。VMotion应用在IBM Blade Center刀片服务器上,使之具备更好的弹性和可用性,结合刀片服务器的模块化和可扩展性,可以增加内存和I/O能力的扩展比例,混合刀片间的工作负载均衡。Virtual Center采用集中式管理,可以监控系统的可用性及性能,并可以自动告警,SDK与现有管理工具整合,通过稳定的访问控制保证系统安全。VMotion技术使用户在保持连续的服务可用性的同时,还可以将实时运行企业用户关键业务的虚拟机,从一台物理主机转移到另一台物理主机,并动态获得每台物理服务器资源的极佳利用率、零宕机维护、快速重新配置,以及持续的工作负载整合能力。
二、Xen
Xen VMM(Virtual Machine Monitor)是由剑桥大学计算机实验室开发的一个开源项目,它能够让我们创建更多的虚拟机,每一个虚拟机都是运行在同一个操作系统上的实例。
这些客户OS可以是修补过的Linux内核24或26,也可以是修补过的NetBSD/FreeBSD内核。用户应用程序就运行在这些客户OS上,并不需要修改任何代码。但是,随着将来的处理器能支持虚拟化,内核也就不需要打补丁了。比如说,Intel的VT和AMD的Pacifica处理器都将包括这种支持。
在Xen中,一个“系统管理程序”运行在0环,客户OS运行在1环,应用程序运行在3环。这种关系对于x64/64有一点不同,就是客户内核和应用程序都运行在3环上。
Xen自身被称为“系统管理程序”,是因为它比客户OS的系统管理代码运行所需的特权级还高。
当系统引导的时候,Xen被装载到0环的内存中。它在1环上启动修补过的内核,这被称作是domain 0(注:domain是指一个运行中的虚拟机,在其上有一个guest OS在执行)。从这个domain开始,你可以创建更多的domain,也可以销毁它们,还可以进行domain的迁移、设置参数等等。你创建的那些domain也运行在1环它们的内核中。用户应用程序运行在3环。
目前,修补过的Linux内核24和26可以作为domain 0。据Xen开发者所说,将来domain 0仅支持26的内核补丁。构造domain 0的大部分工作是在xen/arch/x86/domain_buildc中的construct_dom0()方法中实现的。
物理设备驱动程序只能运行在特权级,也就是domain 0上。Xen依靠Linux或其它修补过的OS内核对它所有的设备提供虚拟化支持。这样的好处就是Xen的开发者不必再去开发设备驱动程序。
在一个有标签TLB的处理器上使用Xen能够大大提高性能。标签TLB能够把ASID(Address Space Identifier)放在TLB入口处。有了这个特性,当处理器在系统管理程序和客户OS之间切换时就不需要刷新TLB了,这大大减少了系统开销。
三、两者主要区别
目前Xen和VMware是市场上主流的两大虚拟化产品。现在我就来谈谈这两大产品背后的架构有什么区别,以及这一技术在未来会如何发展。VMware ESX服务器的架构是建立在直接执行(直接在硬件上上运行用户级的虚拟机编码)和二进制译码(对特权级别编码进行动态编译)的基础上的。从根本上说,它把一个完整的X86平台导出到虚拟机上,ESX服务器可以使大多数能在X86上执行的操作系统都能在虚拟机上运行,而不需要进行任何修改。Xen的架构中使用了一种叫Para虚拟化技术(Para Virtualization),对虚拟出来的客户操作系统(Guest OS)进行修改,使它知道它是在虚拟环境下运行。
那么这两种方式有什么不同呢?最大的不同就是对输入/输出(I/O)设备的处理。虚拟机I/O端口和每个物理I/O端口设备之间如何路由在很大程度上影响虚拟平台架构的性能、便携性、可持续性和稳定性。Xen采用的是分离驱动模式,真实驱动存在于一个中间层,这个中间层叫服务虚拟机,其他虚拟机上的特殊驱动通过这个服务虚拟机进行通讯。这种方法能提供很好的性能,但是对于闭源和传统操作系统支持有限。在ESX中,虚拟机的虚拟设备驱动与ESX内核里的物理设备驱动直接相互连接。ESX虚拟机可以为其虚拟设备使用现成的(off-the-shelf)驱动。这不仅能提供高性能,还能提供更广泛的操作系统支持。然而在这个模型里,新的设备驱动必须要导入到ESX内核中。为了解决I/O虚拟化的平衡问题和复杂化问题,戴尔与英特尔、AMD这样的合作伙伴以及外设硬件供应商们一起,在芯片组和I/O设备中引入了虚拟化支持。企业级虚拟化解决方案的另外一个重要部分就是其管理。戴尔OpenManage这样的产品附送VMware Virtual Center、P2V 和VM Importer,提供了整套工具,能有效进行部署、监控、操作自动化,以及对虚拟IT数据中心进行管理。Novell和Red Hat都在它们的操作系统中整合了对Xen平台的管理,方法是运用像YaST和Anaconda这样的安装和配置工具以及Virtual Machine Manager这样的管理工具。
四、虚拟化技术的未来
资讯科技及通讯业研究权威Gartner估计,由现在至2010年间,虚拟化将会是资讯基建及营运领域中最重要的技术,并会彻底改变资讯科技部门管理、采购、部署、规划,以及其所提供服务的收费模式。虚拟化目前不再只着重技术,而是更加着重企业内的流程改变及文化变迁。虚拟化可让服务以另一种模式提供。每个经虚拟化的层面都可作独立的管理,或甚至由他人所掌管,例子包括串流式应用或员工所拥有的个人计算机一样。这一切均要求企业文化作出重大改变。
参考文献:
[1]郭庭廷,吴玮揭开虚拟化神秘面纱[J]机械工业信息与网络,2007,(03)
[2]成凯透视虚拟化技术[J]软件世界,2007,(11)
[3]伍班权虚拟化技术及其发展[J]办公自动化,2007,(12)
[4]杨晓伟基于Xen的X86虚拟机性能调优[J]计算机工程,2006,(24)
[5]刘志平基于VMware虚拟网络的构建[J]内蒙古大学学报(自然科学版),2007,(01)
[6]赵祖荫基于VMware软件的虚拟计算机的构建方法[J]微型电脑应用,2004,(06)
在过去十年间,存储管理凭借自身的发展逐渐成为一门学科,不仅由于存储数据量的大幅增长的驱动,而且也由于促进共享存储的存储网络协议的增强。 同时,虚拟化也成为服务器和PC优化的最重要的技术。在这种环境下,共享存储成为一些功能不可或缺的前提,如非中断的虚拟机迁移。 不过,虚拟化在服务器和支持它的存储间增加了另一层的复杂性。在虚拟化和存储间的这一层抽象意味着将存储相关的概念如RAID组和LUN转换为虚拟对象如VMDK和虚拟硬盘是个挑战。因此,为了有效的为虚拟环境提供存储,存储管理员必须采用新的方法。 挑战 虚拟化产生了新的运营难题。因为许多虚拟机可能同时存在于一个存储LUN上,虚拟服务器的I/O配置和桌面有时变得更加随机和不可预测。通过使用诸如VMware公司的Storage vMotion和微软公司的Hyper-V Live Migration的特性来使虚拟机在存储基础设施间迁移时,当前的系统管理程序的功能可以保证大量的I/O。另外在虚拟机被拷贝、克隆和在存储间复制时,虚拟化对于存储的利用也会产生很严重的影响。 在考虑虚拟化和存储时,我们必须审视许多大型企业已建立起的运营架构。随着IT基础设施的不断发展,各部分的技术逐渐划分为不同学科,包括存储、网络、服务器和数据库等。过去,也许存储管理员还可以只处理自己的业务,而不必太多关心基础设施的其它部分的运作。如今,虚拟化改变了这种状况,使得我们必须将这些不同的学科整合,而不能再像过去那样。 选择战略 虚拟环境下的存储管理需要满足两个基本的指标:容量和性能。尽管这两者在非虚拟化环境下也会提及,但在虚拟存储设计时会主要考虑性能,因为它会更多的影响虚拟基础设施的运营。在非虚拟化环境下,对于一个LUN缓慢的响应时间只会影响到单个主机;对于一个承载多个虚拟机的较大的LUN,缓慢的响应可能引起更广泛的影响。在虚拟桌面环境(VDI)下尤其如此。对于存储管理员,有许多策略需要考虑。 使用硬件加速和API 许多厂商(包括最大的六家存储厂商:戴尔,EMC,惠普,日立数据系统,IBM和NetApp)如今都支持虚拟I/O的硬件加速。这是通过在系统管理程序中的应用编程接口(API)实现的,如阵列集成的vStorage API (VAAI)。VAAI将一些负载较重的工作从虚拟层卸载,而让存储阵列使用最适合的方式来执行这些关键操作,如次LUN级锁定,批量拷贝和数据清零。最近,VMware增加了精简盘空间回收特性,使得系统管理程序可以从精简配置的LUN中释放存储空间,而无需直接写数据到这些被删除的数据块。 将存储管理的工作卸载到磁盘阵列有诸多好处。首先,它减轻了虚拟层的工作负载,减少了CPU的负担以及存储网络中的数据流。其次,它让存储阵列来对I/O密集型的操作执行优化和优先级操作,而这些最适合于在阵列内部实现。作为领先的虚拟机监控器厂商,VMware已开发出大量的API,包括数据保护的vStorage API(VADP)和存储感知vStorage API。VASA在部署可扩展的存储环境中日益重要,它为虚拟机监控器提供了存储LUN的配置信息,如复制和性能度量标准等。 为性能而配置 在虚拟环境下执行I/O时,性能是最重要的。通常情况下,虚拟环境产生更多的随机工作负载,使得优化I/O工作负载的工作对于存储更加困难。以下的一些技术可以保证性能得到优化,包括: 宽条带 此技术将磁盘I/O尽量分布到多个物理磁盘之上。宽条带技术可以通过大型RAID组(需要注意磁盘失效后的重构时间)或者将多个RAID组连接成存储池来实现。此技术同时适用于基于文件或基于块的存储平台。 动态分层 如同其它的存储环境,虚拟服务器同样存在产生大量I/O负载的I/O“热点”。热点区域很难预测,因此支持动态分层的平台提供了一种手段,以确保最“热”的数据驻留在最快的盘上。这种技术对于许多从一个母版映像克隆的虚拟机特别有用。 使用精简配置 在虚拟环境下,由于虚拟机易于创建,存储的增长很容易失去控制。在即时需求的环境下尤其如此。精简配置确保了只有在数据由主机写往磁盘时,磁盘空间才真正的被占用,而不是为每一个虚拟机预留指定的空间。此特性可以在虚拟层实现,绝大多数的存储平台也支持这一功能。 使用厂商插件 几乎所有的企业级和中端存储平台都可为集中化的管理工具如VMware vCenter提供插件。这为虚拟化和存储系统提供了统一的视图,在许多情况下可以在vCenter控制台上直接配置存储。对于那些没有专门存储团队的企业,这可以大量减少IT管理员的工作。 为虚拟服务器而建的存储 一些新兴的存储厂商已经推出了特别为虚拟服务器环境设计的硬件和软件存储解决方案。其中包括Atlantis Computing,SolidFire,Tintri和Virsto软件公司。简而言之,这些产品被设计用来解决我们在这里描述的问题,包括随机I/O 的挑战。 使自动化 为动态变化的虚拟环境优化容量和性能可能是一件相当耗时的工作。随着虚拟环境的扩展和成熟,我们需要将手工优化的过程更多的变为自动化。虚拟机厂商开始在它们的产品中包含一些功能以允许一些半自动化特性,以减少管理员的负担,持续的优化存储环境。在vSphere 5中,VMware推出了存储动态资源调度(SDRS)功能,可提供某种程度的存储分配的自动化。SDRS提供自动的VMDK初始放置位置,自动的迁移虚拟机以满足容量,性能以及亲和规则的要求,可以保证例如高I/O的虚拟化被放置于单独的硬件上。 随着虚拟环境的扩展以及部署中更趋向于服务化,自动化的存储管理成为必需。存储厂商已经在市场中推出了提供存储供应API的新产品,以直接支持虚拟服务器自动化。 别忘了备份 备份经常认为与存储管理没有多大关系。不过,在高可用的存储环境中,它至关重要。在虚拟基础设施中,传统的备份解决方案对于备份和恢复数据并非十分有效,我们需要使用一些其它的技术来优化备份和恢复的流程。 在基于数据块存储的部署中,传统的备份使用主机本身来备份数据。这是因为存储阵列并不知道数据在LUN上的格式。主机将文件放置在LUN上,然后备份软件依赖于主机提供的文件流来备份。 在所有的虚拟化平台中,虚拟机被存储为一个或多个文件,即使是使用块级存储阵列。这使得备份过程更为简单,因为只需要简单的备份组成虚拟机的文件即可。 一些虚拟机厂商,如VMware,提供API以允许第三方软件看到虚拟机内部改变的块数据,这提供了一种非常有效的手段,我们只需备份自上次备份起变化的文件。所有的虚拟机厂商都提供虚拟机快照功能。尽管在某些情况下会导致“宕机一致”备份。由代理软件协同,通过将主机文件系统静默,可以创建出具一致性的快照。 存储工具将不断演进 存储仍将是部署可扩展虚拟基础设施的一个重要特性。随着环境的扩展和成熟,存储管理员需要利用一些工具和技术如自动化和虚拟化软件,使得他们可以迎接更加集成的IT世界的挑战。
0条评论