“云计算”经过十多年的普及,这项技术已成为家喻户晓的名字。基于云计算平台,它在几个领域创造了一个又一个的记录:电子商务数十亿在线在线对齐“双11”神话;游戏应用程序在几个月内从0到1000万用户级别;组装海量数据,从无用数据中寻找价值,进行大数据分析;
一切都是关于这种新信息技术的力量和冲击。
云计算诞生于互联网行业,它不仅影响互联网。无论马云说“数字经济”还是马化腾都说“工业互联网”,底线就是利用自身的云计算能力来影响或重建传统产业,带来产业整合的新的创新价值。
“信息技术改革”即将爆发。云计算不是一种技术。它是一种“合作与创新,云端运用服务与理念”。其背后最重要的技术是虚拟化技术。让我们揭开当今云计算中使用最广泛的KVM和XEN虚拟化技术。
1,虚拟化与云计算的关系
在云计算行业多年,作者收集了云计算的解释,并总结出“云计算三四五定律”。
第三种是指云计算的服务模型:IaaS(基础设施即服务)Paas(平台即服务),SaaS(软件即服务)。
四指是部署方法:公共云,私有云,行业云(政府云,工业云等)和混合云。
五指是云计算的基本特征:按需访问,BGP线路,资源池,弹性扩展和可测量的费用。
那么,最重要的是,资源如何实现汇集的效果呢?
让我们首先了解虚拟化的定义。
虚拟化是指通过虚拟化技术将计算机虚拟化为多个逻辑计算机。在一台计算机上运行多个逻辑计算机,每个计算机运行不同的操作系统,并且应用程序可以在不同的空间中运行而不会相互影响,从而显着提高计算机的效率。
- 来自维基百科
虚拟化技术是云计算的基石。早在20世纪90年代,一些人就一直在研究如何使用虚拟化技术来平衡昂贵硬件与利用不足之间的矛盾。在中间,类似于VMware,销售虚拟化软件。不断发展的公司以及虚拟化技术的发展已经成为开源的XEN和KVM虚拟化技术。正是由于开源虚拟化技术的普及,云计算正在获得动力。2,虚拟化的分类和优缺点
虚拟化的核心思想是提高硬件资源的利用率。通过向系统添加虚拟化层并汇集较低级别的资源,上层操作系统提供了预期的服务器硬件环境,并允许不同操作系统的虚拟操作。这些机器彼此隔离,并在单个物理机器上同时运行。
虽然虚拟化技术已在上个世纪出现,但虚拟化技术主要用于IBM的大型机。随着X86服务器架构的普及,VMware成为第一个用于X86服务器的商业虚拟化技术。后来,IT行业是最不开源的,剑桥大学的讲师发布了开源虚拟化项目XEN。
但问题是XEN有一个缺点:它需要内核补丁,一点粗心和系统崩溃。
KVM实际上比XEN晚,但是当KVM出现时,已经使用过XEN虚拟技术的Redhat直接放弃了已经使用多年的XEN。原因是KVM是Linux的一部分,可以使用通常的Linux调度程序和内存。管理。这意味着KVM更小,更易于使用。
上图是KVM和XEN架构的比较。首先,两者都是硬件虚拟化(硬件提供结构支持,以帮助创建虚拟机监控并允许客户操作系统独立运行)。
•完全虚拟化:虚拟机完全模拟底层硬件,Linux内核直接支持内核,无需修改操作系统。简而言之,虚拟机认为它在硬件本身上运行。
•半虚拟化:虚拟机知道在Hypervisor(VMM)中运行,需要对操作系统进行特殊更改才能支持虚拟机管理程序。
XEN由三个基本组件组成:Hypervisor,Domain 0和Domain U.
Hypervisor运行在硬件之上,托管所有操作系统,提供CPU和内存调度。
Domain 0是一名管理员,相当于一个大管家,主要负责IO虚拟化。
域U是真实XEN中的虚拟客户端,域U分为两类:一种全虚拟客户端,一种半虚拟客户端,在修改后的操作系统上运行。
仅支持完全虚拟化的KVM要简单得多。主要的两个组件是:KVM驱动程序和Qemu。
KVM驱动程序直接集成到Linux系统(Intel-VT或AMD-V)中,负责虚拟机创建,CPU和内存分配等。
Qemu是用于模拟虚拟机,提供I/O设备模型和访问外围设备的用户空间组件。在这里,我们看一下两者的图形比较。大多数XEN和KVM性能基准测试表明XEN具有比KVM更好的处理性能。