主题:【原创】云里雾里的云计算 [1] -- 邓侃
据说连kvm和Win2008都说准备支持这个了,Win2008好像说了挺久了,不过一直没见到东西出来。
但是我对跨指令集间的迁移,不大看好。
因为如果Guest用到了一些高级指令,而Host硬件不支持,那么就必然涉及软件模拟,这对性能的损耗很大。而如果需要在不同的指令集之间的CPU迁移,要么让虚拟机把转交硬件执行指令集合缩小,成为各个CPU指令集之间的交集,要么每次碰到这种指令,都判断一下这个平台是否支持,这样一来,效率也会下降不少。
真是神来之笔。忍俊不住
好极了,下篇真想谈这些呢。
下篇写完后,就准备收尾了。
着急着去谈WebOS,WebKit呢。
俺当年自己闭门练过X386的“童子功”。首先声明俺没有看过邓侃说的那些文章,俺试着乱侃几下,献丑献丑。
X386的体系结构将指令分为4个特权级,分别是RING0,RING1,2,3。如果是Windows NT的话,分别使用RING0,RING3,即OS的内核运行在RING0,应用程序在RING3。俺有很多年不玩这些了,WINDOWS 5.0(2000),5.1(XP),5.2(2003),6.0(VISTA).6.1(2008),用了几个RING就不清楚了,但估计不会用到全部的4个Ring,因为特权指令只能在ring 0运行。除了特权级,指令系统的另外一个重要特性是“中断”级别,从高到低分别是异常,硬中断,软中断。
1.如果在低特权级运行特权指令(RING0以下)将产生异常,异常直接将导致RING0级别的中断向量对应的“程序”执行,异常处理保护“现场”,然后“计算结果”,然后恢复“现场”,将低特权级进程的指令计数器值设置为导致异常指令的下一条指令地址值,然后恢复低特权级进程运行。具体到虚拟机,按虚拟机应用程序 ---》虚拟机异常 ---》物理机异常的次序执行。
2.虚拟RAM和OS的地址分配的取决于OS初始化时GDT和LDT表的加载,虚拟机加载时从HOST机hold住一块物理内存(比如1GB),从此这块物理内存在HOST机上将不再分配给其他进程。然后虚拟机根据这块物理内存的地址计算生产相应的GDT和LDT。当进程上的虚拟机进程产生缺页“异常”时由虚拟机异常处理程序在虚拟机已经分配的物理内存中调度。
这些全自动仓库遍布美国和欧洲。这些也是"云“的
一部分。你可以通过API操作这些仓库,如同是操作
数据库一样。。。
与软件成本相比,硬件成本是指数级下降的。
操作系统的核心是可以方便的扩容,而不是
方便的转移。在某个集群上多插几块板子扩容,
比转移指令集要方便得多。
云计算的本质之一是用xml实现全网资源互操作。
如果全internet资源提供API互操作,那么还要
转移指令集做什么。跨指令集转移OS的特性违背
云计算的本质目的。
比如,用x86的实剑,使出AS400的虚剑?让各大银行都脱离IBM的束缚,不用改写软件,就进入云彩?
着啊,这第一招,太极剑法若要用到实剑,调用了RING0指令,禅宗虚化如何应对?禅宗剑谱上说,这虚剑不可乱用实剑,神功不可破,补丁不可少。
可那VMWare,生生的以数十年功力,将这RING0指令接下,化为RING3指令,无需什么补丁。
有了完备的系统调用和高速可靠的存储设备,不就等于整个网络就是台大电脑了么?
如果银行敢这么干,只要被捅出来,保证他的客户立马流失一大半。
银行几乎是对数据的安全性要求最高的行业,怎么可能用你的云彩来玩火?出了安全问题谁负责?怎么负责?
有这两种技术之一的机器,上面跑xen,再跑其它客户机,是不需要打补丁的。
虽然具体的技术细节不太清楚,但是我估计ring0的问题应该是由cpu自行解决,虚拟机不再需要干预了。
软件就是截获那个RING0指令相应的异常,然后转入VM的处理序列。
硬件的话,intel其实在新的CPU里做了个RING-1
虚拟化的四大价值
作为一项诞生于40多年前的技术,实践证明虚拟化能够给企业带来诸多好处。在服务器领域,虚拟化可以带来更高的部件及系统级利用率,带来具有透明负载均衡、动态迁移、故障自动隔离、系统 自动重构的高可靠服务器应用环境,以及更为简洁、统一的 服务器资源分配管理模式。
整合遏制服务器蔓延
不论是企业的规模大小,一般情况下,IT机构通常会将其70~80%的预算用做现有系统和应用管理开支。过去,IT机构总是倾向于使用一台服务器运行一个应用。尤其是在x86服务 器的使用方面,这往往被看作是一种经济、高效的战略,因为一台服务器运行一个应用的方法,不仅可以简化服务器的部 署工作,而且还可以减少潜在的软件冲突。在国内,这种状况 尤其普遍。
但是,随着企业IT应用环境日益复杂,运行在服务器平台 上的应用数量不断增加,这种单机运行单一平台的做法,带来了严重的后果--全球范围内的服务器数量在过去十年间增 加了150倍,过多的服务器带来了处理器应用率低下、维护困 难(服务器的升级、补丁,防 病毒等)、维护成本高等多方面问 题,而且,管理这些系统的相关成本也急剧增长。
与此同时发生的另一个现象是,服务器的平均性能在明 显提高,例如,在运行不同类型应用时,双核平台较单核平台 性能有从30%~10 0%不等的提升,而四核平台又比双核平台 有平均60%的性能提升。
这两个现象碰撞的结果,在IT技术供应商端促进了可以帮助用户整合物理服务器和应用的技术创新,而在用户端, 则促进了通过将应用和 操作系统整合到单一平台上的需求梦 想。在这种技术创新和需求梦想的碰撞、交织和沟通中,虚拟 化技术被证明是一个可以帮助用户整合服务器、整合多个应 用、整合多个操作系统的理想工具。
一方面,多核平台带来了性能提升、可靠性提高以及全新物理机虚拟机的应用模式,另一方面英特尔硬件级别的虚拟化技术能够支持效率更高、性能更优化的本机虚拟化能力。多核,多虚拟 环境通过与海量存储系统的整合,就可以实现数据中心的灵活整合。
破解利用率谜局
虚拟化技术还可以明显地改善另一个困扰许多用户的问题。即使在今天,多数用户的服务器系统利用率只有10%~30%,大量服务器处于严重的利用率低下状态。导致 服务器利用率低下的原因有许多,例如每种工作负载都需要使用单独的服务器、企业中的各个部门拥有“自己的”服务
服务器(其中一部分也许处于闲置状态,但是其他部门的工作负载无法共享这些资源)、容量规划不科学(因为担心复杂、麻 烦、花费时间的系统迁移,大部分时候预计的容量要比实际 高,甚至高很多)等等。
传统的整合方式,就是在单个操作系统副本上运行多 个应用,导致了许多技术障碍,如:文件系统命名空间冲突、网络端口冲突、进程间通信冲突、不一致的内核调整或补丁 级别等等。而虚拟化可以使系统轻松拥有在单一平台上运行多个应用的能力,从而提高系统资源的利用率,有效打破资源利用率瓶颈。很多采用了虚拟化技术的用户都已经尝到了提升系统资源利用率的好处。
让数据中心更可靠
虚拟化可通过以下几个主要方式,提高数据中心的可靠性,保障业务连续性:
故障隔离—大多数应用故障均由软件故障引发。虚拟 化可提供虚拟分区之间的逻辑隔离,这样一个分区中的软件故障便不可能影响到另一个分区中的应用。逻辑隔离还能帮助遏制数字攻击,从而可有效增强整合环境中的安全性。故障切换灵活性—虚拟机通过配置可为一个或多个应 用提供自动故障切换。鉴于基于英特尔至强处理器的服务
服务器平台能够提供高度可用性,通过在相同平台上提供故障切换分区作为主要应用,通常可满足服务等级要求。如果要求更高 的可用性,可将故障切换分区托管到单独的服务器平台上。
不同的安全设置— 每台虚拟机可以应用不同的安全设置,这样IT部门就能够保持对最终用户和管理员特权的高度控制。例如,基于虚拟机的灾备系统,就是一个 低成本的 高数据中心高可靠性保障方案。传统的容灾系统成本昂贵, 硬件配置的一致性要求高,异构平台实现容灾的可能性很 小,用户几乎不敢尝试,同时,配置及迁移的复杂性高,且维 护复杂。而基于英特尔虚拟化 技术支持的虚拟机的灾备技术,可以实现 虚拟机到虚拟机、虚拟机到物理机、 一对一、一对多等多种形式的灵活的应用模式,能够帮助用户降低成本,而VMotion等迁移与配置技术可以 帮助用户方便地进行系统管理。
有效减少TCO
服务器虚拟化软件领域执牛耳的厂商VMware证实,通过虚拟化 和整合,用户可以在服务器总拥有成本(TCO)方面有明显的节省:硬件成本减低:28%~53% 运营成本降低:72%~79% 总体成本降低:29%~64% VMWare还证实,虚拟化可以在软件授权上再节省20%的成本。
虽然较好,但观察的角度不同,仍然会有不同意见。还请各位各抒己见~~
就拿我们公司的后台架构来说,
1. 后台的入口是web server。
2. 后台支持多种功能,目前的做法是各个功能拥有几台服务器。
3. Web server解析用户请求,根据不同请求,把任务发放到各个功能服务器上。Web server收到反馈后,整合这些反馈,然后回复给用户。
这样的做法,各个功能相当于拥有各自的领地,相互隔绝。各个领地的工作负担不同,而且高峰时间也不同。有时候有的领地忙不开,而其它领地很空闲。造成的结果是计算资源负荷不均。
解决思路是把各个分封的领地统一,提高资源使用率。但是如何实现这个思路,就需要用到虚拟化的技术。
既可以平衡工作量,也可以保持透明、使系统内部不为外部所见。
缺点就是要多花钱喽。 呵呵