当前位置:首页 > 虚拟化 > 正文

虚拟化是怎么来的


一、什么是虚拟化?为什么要虚拟化?1.什么是虚拟化?
简单地说,虚拟化是创建某些组件的虚拟(而不是物理)版本的过程。虚拟化可以应用于计算机、操作系统、存储设备、应用程序或网络。然而,服务器虚拟化是虚拟化的核心。当今的x86服务器设计为一次运行单个操作系统和应用程序,这给IT部门带来了挑战。因此,即使是小型数据中心也需要部署大量服务器,而每台服务器的容量利用率只有5-15%,无论以任何标准衡量,效率都非常低。
虚拟化使用软件来模拟硬件并创建虚拟计算机系统。这使得企业可以在一台服务器上运行多个虚拟系统,即多个操作系统和应用程序,从而实现规模经济并提高效率。
2.为什么要虚拟化?
虚拟化技术可以解决很多以前我们无法解决的技术:
1.服务器集成技术:如果有虚拟化技术,这项技术很难实现。因为一切都是物理的,所以很难集成两个工作相对较少的服务器。然而,随着虚拟化技术的出现,这种服务器整合技术变得非常简单。这项技术需要我下面介绍的2或3种技术的帮助。
2.负载均衡技术:
负载均衡技术是在每台服务器上只安装一个负载均衡器,然后设置多种调度算法和阈值。来判断此时服务器的压力是轻还是重。然后根据严重程度进行服务器合并,并基于第三种技术进行合并。
3.热迁移技术:该技术是前两项技术的基础,但不限于前两项技术。其目的是在服务器运行时将位于此处的虚拟机迁移到其他服务器。一般工作原理是先在目标服务器上模拟服务器硬件状态,然后迁移数据,最后发布服务器信息。
4.克隆技术:该技术与上面的技术非常相似,但又有所不同。克隆技术就是配置一台服务器的环境,让其他机器通过克隆技术达到与这台机器相同的效果。如果你想配置100台甚至1000台服务器,这种克隆技术是非常令人印象深刻的。这和热迁移的区别在于,当服务器没有关闭时,热迁移需要被迁移的对象互相共享内存,而克隆则没有这个限制。
5.容灾技术:容灾是所有大型企业都需要考虑的问题,因为当意外发生时,比如突然停电、财产损失、洪水、地震等一系列情况,如何应对灾难由此产生的数据丢失被最小化甚至消除。这就要看第六项技术了。
6.虚拟快照技术:虚拟快照技术将虚拟机的当前状态记录为照片。当然我说简单,实现原理肯定很复杂,包括处理器的工作状态。内存中的数据等通过这种方式,这些虚拟化技术得以保留,并可以在发生灾难或某些错误导致虚拟机出现问题时快速恢复。
7.提高系统可用性。这里的可用性只能是一台没有故障的机器。在这种情况下我们可以最大限度地提高效率。归零机的原理是每台服务器都必须有一个镜像。主虚拟机和辅助虚拟机之间有一条心跳线来维护两者之间的关系。当心跳线停止时,辅助虚拟机。立即启动,代替主虚拟机。
8.安全性:我们在硬件层一直到虚拟化都有一层VMM,可以随时检测每个虚拟机的动向,包括检测异常、解决门事件、进行调度等。所以,当某些风险因素出现时,由于VMM的存在,我们可以很快地发现问题并解决它。这比之前操作系统直接位于其之上的硬件层要快得多。


二、虚拟化技术原理是什么?虚拟化技术的实现原理:
虚拟化的概念很早就出现了。简而言之,虚拟化是获取某些程序并使它们看起来像其他程序的过程。
将这一概念应用到计算机系统中,可以让不同的用户看到不同的单一系统(例如,一台计算机可以同时运行Linux和MicrosoftWindows)。这通常称为完全虚拟化。
虚拟化还可以使用更复杂的格式,其中一台计算机似乎具有多种架构(对于一个用户来说,它是标准x86平台;对于另一个用户来说,它是IBMPowerPC®平台)。这种形式的虚拟化通常称为硬件模拟。
最后,一种更简单的虚拟化类型是操作系统虚拟化,其中一台计算机可以运行多个相同类型的操作系统。这种类型的虚拟化可以将多个服务器与一个操作系统隔离(这意味着它们必须全部使用相同类型和版本的操作系统)。
虚拟化技术的工作原理:
虚拟化解决方案的最终目标是要虚拟化的机器。机器可能直接支持虚拟化,也可能不直接支持,那么就需Hypervisor层的支持;虚拟机管理程序(VMM)可以被视为平台硬件和操作系统的抽象。在某些情况下,虚拟机管理程序是一个操作系统,在这种情况下,它称为主机操作系统。
虚拟机管理程序之上是客户操作系统,也称为虚拟机(VM)。这些虚拟机是彼此隔离的操作系统,并将底层硬件平台视为自己的。但事实上,是系统管理程序造成了这种错觉。
当前虚拟化解决方案的问题在于并非所有硬件都能很好地支持虚拟化。较旧的x86处理器将根据执行范围对特定指令产生不同的结果。这会产生一个问题,因为虚拟机管理程序只需要在更受保护的领域中运行。为此,VMWare等虚拟化解决方案会提前扫描要执行的代码,将这些指令替换为一些陷阱指令(trapinstructions),以便hypervisor正确处理它们。Xen可以支持无需修改的协作虚拟化方法,因为来宾知道它正在被虚拟化并且已经进行了修改。KVM会简单地忽略这个问题,如果您想要虚拟化,就会强制您在较新的硬件上运行。


三、虚拟化技术的定义虚拟化技术是一种将物理硬件资源抽象为运行在多个虚拟机(VM)上的环境的技术。


虚拟化技术将物理硬件资源划分为多个虚拟机,让每个虚拟机独立运行,拥有自己的虚拟硬件(如CPU、内存、存储等)。这样,多个操作系统可以运行在同一个物理硬件上,从而提高硬件资源利用率,降低成本,提高可扩展性和灵活性。


虚拟化技术有多种实现方式,包括硬件辅助虚拟化、软件虚拟化、容器化等技术。


硬件辅助虚拟化是利用硬件的基本功能来实现虚拟化的技术,而软件虚拟化通常使用虚拟机监视器(如VMware、VirtualBox等)。虚拟硬件环境。


容器技术是一种轻量级虚拟化技术,它将应用程序及其客户端打包到一个隔离的环境中。


虚拟化技术的主要好处包括提高硬件资源的利用率、降低成本、提高系统的可扩展性和灵活性、提高系统的安全性。此外,虚拟化技术提供了更好的容错和恢复能力,以及更好的系统管理和监控能力。


但是,虚拟化技术也有一些缺点。例如,它会消耗硬件性能、占用网络带宽、需要更多的存储空间。因此,在实施虚拟化技术时,需要根据具体的应用条件和需求,权衡利弊,选择合适的虚拟化技术实施方法。


总之,虚拟化技术是一项重要的计算机技术,它通过池化和隔离物理硬件资源,实现在同一硬件上运行多个操作系统,从而降低硬件资源的使用成本。并提高了系统的可扩展性和灵活性。