好有缘导航网

为什么要虚拟化技术 - 什么是虚拟化技术 (为什么要虚拟化)


文章编号:33934 / 分类:行业资讯 / 更新时间:2024-12-10 22:48:04 / 浏览:

一.什么是虚拟化?简单来讲,虚拟化就是为一些组件创建虚拟(而不是物理)版本的过程。

虚拟化可以应用到计算机、操作系统、存储设备、应用或网络。

但是,服务器虚拟化才是虚拟化的核心。

现如今的 x86 服务器的设计存在局限性,每次只能运行一个操作系统和应用,这为 IT 部门带来了挑战。

因此,即使是小型数据中心也必须部署大量服务器,而每台服务器的容量利用率只有 5% 到 15%,无论以哪种标准来衡量,都十分的低效。

虚拟化使用软件来模拟硬件并创建虚拟计算机系统。

这样一来,企业便可以在单台服务器上运行多个虚拟系统,也就是运行多个操作系统和应用,而这可以实现规模经济以及提高效益。

二.为什么要虚拟化?虚拟化技术能为我们解决很多以前解决不了的技术:1、服务器整合技术:这个技术在没有虚拟化技术之前是很难完成的。

因为什么东西都是实际存在的,想把两个工作相对较少的服务器整合到一起是很困难的。

然而当有了虚拟化技术以后使这种服务器整合技术变得非常容易。

而这个技术需要借助我下面介绍的2、3条技术。

2、负载均衡技术:负载均衡技术是只在每台服务器上安装一个负载均衡器,然后设置很多的调度算法及临界值。

来判断此时此刻服务器的压力是轻还是重。

然后根据轻重来完成服务器的合并,而合并又依据了第三条技术。

3、动态迁移技术:这个技术是前两个技术的根基,但是却不只仅仅限于前两个技术。

它的目的是可以在服务器开启的状态下,把其上面的虚拟机迁移到其他的服务器上面。

工作原理大体是先将目标服务器上模拟出此服务器的硬件状态,然后迁移数据,最后释放此服务器的信息。

4、克隆技术:这个技术说起来和上面那个技术很像,但是却不一样。

克隆技术是把一台服务器的环境配置好了后可以通过克隆技术使其他的机子都达到和这台机子一样的效果,假如要配置100台甚至1000台服务器的话这种克隆技术是非常可观的。

它和动态迁移的区别是在服务器不停机的状态下,动态迁移要求迁移的彼此必须是共享内存的,但是克隆并没有这个限制。

5、灾难恢复技术:灾难恢复是所有大型公司必须考虑的问题,因为当一些意外发生时,比如:突然断电,硬件损坏,洪水,地震,等一系列情况是,如何把灾难所造成的数据损失降到最低甚至是不损失。

这要依靠第六条技术。

6、虚拟快照技术:虚拟快照技术是将虚拟机此时的状态像照片一样保存下来,当然我说的很容易,其实现原理需要非常复杂,包括cpu运行状态,内存中的数据等等。

这样保存下这些虚拟技术当发生灾难或者某些失误导致虚拟机出问题时,可以很快恢复。

7、改善系统可用性。

这里的可用性只得是零 down机,在这种情况下我们才可以使得效率最大化。

而零down机的前提是每台服务器必须要有一个镜像,在主虚拟机和次虚拟机之间有一条心跳线来维持两者之间的关系,当心跳线停止时,次虚拟机立马启动,代替主虚拟机。

8、安全性:我们直到虚拟化在硬件层上都有一层VMM来时时刻刻侦测每台虚拟机的动向,包括捕获异常,解决门事件,完成调度等等。

所以当一些危险因素来临时由于VMM的存在使得我们可以非常快的侦测到这个问题并解决它。

这能比以前的硬件层上面直接是操作系统快速很多。

为什么要虚拟化技术什么是虚拟化技术为什么

虚拟化技术包括哪些

1. 平台虚拟化涉及对计算机和操作系统的虚拟化,分为服务器虚拟化和桌面虚拟化两种。

服务器虚拟化通过优化资源分配,简化管理并提高服务器效率。

桌面虚拟化则旨在提供灵活的计算机使用方式,为用户提供便利和适合他们的使用环境。

这一技术主要通过CPU、内存和I/O接口的虚拟化来实现。

2. 资源虚拟化专注于对特定计算资源如存储和网络资源的虚拟化。

存储虚拟化通过将多个存储器结合成虚拟存储器,提高资源利用率。

网络资源虚拟化以网格计算为例,通过虚拟化技术管理网络数据,实现资源的逻辑整合和按需提供。

此外,软件代理技术如Gaia、NetChaser和SpatialAgent也被提出用于实现网络资源的虚拟化。

3. 应用程序虚拟化包括仿真、模拟和解释等技术。

Java虚拟机是在应用层进行虚拟化的典型例子。

通过保存用户的个性化计算环境配置,应用程序虚拟化技术能够在任何计算机上复现用户的环境。

服务虚拟化是当前研究的热点,它允许用户根据需求快速构建应用程序,并通过服务聚合简化资源使用复杂性。

4. 表示层虚拟化与应用层虚拟化相似,不同之处在于应用程序在服务器上运行,客户机仅显示UI界面和用户操作。

表示层虚拟化软件包括微软的Windows远程桌面、Citrix Metaframe Presentation Server和Symantec PcAnywhere等。

虚拟化技术介绍

虚拟化(Virtualization)技术最早出现在20世纪60年代的IBM大型机系统,在70年代的System 370系列中逐渐流行起来。

这些机器通过一种叫虚拟机监控器(Virtual Machine Monitor,VMM)的程序在物理硬件之上生成许多可以运行独立操作系统软件的虚拟机(Virtual Machine)实例。

随着近年计算机技术的进步,无论是服务器市场、桌面市场,还是嵌入式市场,处理器的频率和核心数目都出现了巨大的进步,从而带来了处理能力的迅速增长,使得虚拟化技术再次迅速发展起来,并从最初的的 裸机虚拟化 技术开始,演化出 主机虚拟化 、 混合虚拟化 等更复杂的虚拟化模型,并在此基础山发展出了当下最热门的 云虚拟化 技术,极大地降低了IT成本,增强了系统的安全性,可靠性和扩展性。

在计算机领域,虚拟化是一个广义的概念

简而言之,虚拟化是指对计算机资源的抽象。

虚拟机最初被Popek和Goldberg定义为物理机器的一个或多个隔离的有效复制[16]。

J.E. Smith和RaviNair给出了一个更具体化的定义:虚拟机是通过在物理平台上添加的软件给出的一个或多个不同的平台。

一个虚拟机可以有一个操作系统和指令集,或者两者都有,可以不同于底下的真实的硬件。

虚拟化技术的本质在于对计算机系统软硬件资源的划分和抽象。

计算机系统的高度复杂性是通过各种层次的抽象来控制,每一层都通过层与层之间的接口对底层进行抽象,隐藏底层具体实现而向上层提供较简单的接口。

计算机系统包括五个抽象层:硬件抽象层,指令集架构层,操作系统层,库函数层和应用程序层。

相应地,虚拟化可以在每个抽象层来实现。

无论是在哪个抽象层实现,其本质都是一样的,那就是它使用某些手段来管理分配底层资源,并将底层资源反映给上层。

操作系统上传统的进程模型就利用了虚拟化的思想,操作系统通过对物理内存的划分和抽象,给每个进程呈现出远超出物理内存空间的4G空间,并且使得每个进程实现了有效的隔离,从而一个进程的崩溃不会影响到其它进程的正常运行。

虚拟化平台是操作系统层虚拟化的实现。

在系统虚拟化中,虚拟机(VM)是在一个硬件平台上模拟一个或者多个独立的和实际底层硬件相同的执行环境。

每个虚拟的执行环境里面可以运行不同的操作系统,即客户机操作系统(Guest OS)。

Guest OS通过虚拟机监控器提供的抽象层来实现对物理资源的访问和操作。

目前存在各种各样的虚拟机,但基本上所有虚拟机都基于计算机硬件 + 虚拟机监视器(VMM)+ 客户机操作系统(Guest OS)的模型。

虚拟机监控器是计算机硬件和Guest OS之间的一个抽象层,它运行在最高特权级,负责将底层硬件资源加以抽象,提供给上层运行的多个虚拟机使用,并且为上层的虚拟机提供多个隔离的执行环境,使得每个虚拟机都以为自己在独占整个计算机资源。

虚拟机监控器可以将运行在不同物理机器上的操作系统和应用程序合并到同一台物理机器上运行,减少了管理成本和能源损耗,并且便于系统的迁移。

根据虚拟机监视器在虚拟化平台中的位置,可以将其分为以下3种模型:

虚拟机监视器采用的虚拟化技术分为以下4种:

嵌入式系统是虚拟化技术的新方向和重要分支。

嵌入式处理器的迅速发展使得嵌入式系统在更多方面得到了广泛的应用。

而嵌入式设备应用的普及导致其对软硬件的需求也越来越高。

硬件体现在不断增强的计算能力和多种多样的外部设备,软件体现在愈加复杂的新功能特性。

这些问题导致嵌入式开发变得复杂和软件维护成本的增加。

原来的SMP和AMP等多核操作系统方案无法满足安全隔离、硬件资源分配和复用等日益复杂的要求。

因此,服务器和桌面系统上的虚拟化技术被引入了嵌入式操作系统领域,并借助于硬件辅助虚拟化技术,解决了虚拟化技术带来的便利性与嵌入式系统得实时性要求之间的矛盾,使得以Linux KVM、Xen等嵌入式虚拟化平台得到了迅速发展。

虚拟化平台在硬件和操作系统之间引入了一个新的抽象层次,称为虚拟机监控器(Virtual Machine Monitor,简称VMM),由它接管所有的硬件,并管理运行其上的所有虚拟机(Virtual Machine,简称VM),而每个虚拟机中可以运行各自的操作系统。

虚拟化的优点在于实现了资源的重用,使得一个物理平台上面可以同时运行多个不同的操作系统。

通过利用系统虚拟化技术,可以在嵌入式设备中同时运行实时操作系统和通用操作系统,分别发挥各自的优势——实时操作系统处理实时任务,通用操作系统提供丰富的应用程序,它们彼此分工协作,发挥各自的优势,同时满足各种不同的需求。

但与此同时,虚拟化平台技术也引入了新问题。

不少嵌入式系统对实时性能都有比较高的要求,而虚拟机与虚拟机监控器间的切换导致处理器操作模式的切换和上下文的切换,会增加系统的响应时间,从而增加实时系统的时间不确定性,影响了实时系统的性能。

虚拟机对运行于其上的应用程序的隔离又增加了虚拟机监控器的精确调度的难度,目前的虚拟机监控器也只能基于虚拟机的优先级或者时间片分配而进行粗粒度的调度。

此外,现存的虚拟化平台技术主要基于X86等通用计算机平台,对ARM、MIPS等嵌入式处理器支持不够,在功能性和稳定性上都有所缺失。

综上所述,虚拟化可以解决嵌入式系统目前面临的不少问题,带来很多方便,但由于现存虚拟化解决方案(如KVM和XEN)在设计之初并没有考虑嵌入式系统的特殊需求,从导致功能性、实时性、稳定性都有所缺失。


相关标签: 为什么要虚拟化技术什么是虚拟化技术

本文地址:http://www.hyyidc.com/article/33934.html

上一篇:超融合和虚拟化的区别到底是什么?超融合和...
下一篇:英特尔虚拟化技术是什么英特尔虚拟化技术...

温馨提示

做上本站友情链接,在您站上点击一次,即可自动收录并自动排在本站第一位!
<a href="http://www.hyyidc.com/" target="_blank">好有缘导航网</a>