计算虚拟化简介

计算虚拟化简介

了解传统的物理机的部署方案

(1.)服务器的选型(几个cpu,频率,多大内存,硬盘,关联存储)

(2.)IDC数据中心采购服务器的放置的空间及上架

(3.)系统安装(windows linux unix freebsd)

(4.)应用的规划和部署,域名注册,dns映射,外网访问

因为这个过程非常复杂传统的的数据中心带来很多的问题

(1.)服务器利用率低下,cpu,内存又不能共享

(2.)资源分配又不合理

(3.)初始化成本比较高

(4.)自动化能力差

1.什么是虚拟化

在没有虚拟化的场景下,一套硬件上同时只能运行一个os,有了虚拟化,一套硬件可以同时运行多个os。

虚拟化就是把物理资源逻辑化

在一套硬件上去安装一个特殊的os,也成为VMM(virtual machine moitor虚拟机监视器)或者叫hypervisor。用来监控运行在上面的os(vm)

VMM就是用来提供虚拟化,跑虚拟机和监控虚拟机的运行。

虚拟化的实现就是开发VMM

2.虚拟化的产生

在60年代就有了虚拟化的概念,不过叫做cpu的分时复用,90年代,IBM才有了逻辑分区的概念。IBM虚拟化在power cpu上实现。

3.虚拟化的驱动

(1.)cpu的速度越来越快,超过软件对硬件的要求

(2.)企业成本压力

(3.)环保压力

(4.)业务压力

在没有做虚拟化之前,IT资源独立,操作系统和硬件是紧耦合

有了虚拟化后,资源抽象成共享资源池,操作系统和硬件解耦,从资源池去分配资源。

4.虚拟化的本质:分区,隔离,封装,独立

分区:在虚拟化层为多个虚拟机划分服务器资源的能力,每个虚拟机可以同时运行一套单独的os,使你能够在同一台服务器上运行多个应用程序,每个操作系统只能看到虚拟化层为其提供的虚拟硬件,VM认为自己就是运行在一台单独的服务器上。

隔离:虚拟机之间是相互隔离的(os故障,蓝屏,APP崩溃,驱动程序故障)不会影响到同一台服务器其他的虚拟机的运行。

封装:封装意味着可以将整个虚拟机(规格,bios配置,内存状态,磁盘状态,cpu)存储在单独的文件中,只需要复制文件就可以移动虚拟机。

独立:相对于硬件独立

完全适用于虚拟化,比如vlan

5.虚拟化的厂商

IBM是最早实现虚拟化(分时系统)

VMware 开发出了虚拟化

针对个人用户:VMware workstation VMware fusion

针对企业用户:VMware vsphere

Redhat: kvm

Citrix: xen

Microsoft:hyper-v

虚拟化的实现就是开发vmm

6.实现虚拟化的技术

(1.)模拟仿真技术

在虚拟化模式下,存在着2种cpu指令,特殊指令(敏感指令),普通指令。

特权指令:系统中有一些操作和管理关键系统资源的指令,这些指令只能在最高特权级别上运行,如果在非最高特权上运行,特权指令会引发一些异常。

敏感指令:在x86cpu上,有19条敏感指令不属于特权指令。

经典的虚拟化就是使用的模拟仿真技术。
在这里插入图片描述

当guest os执行特权指令的时候,VMM会捕捉到异常,对guest os执行的特权指令进行特权降级,然后陷入模拟,通过模拟的方式实现guest os需要做的特权操作。

但是由于x86的cpu架构指令,敏感指令并不完全是特权指令(19条),VMM捕获不到,所以无法进行特权降级然后陷入模拟,由于x86这种架构的问题,导致无法实现虚拟化的全部功能。

VMware公司通过二进制翻译技术完成了对x86cpu架构的完全虚拟化 binary translation

(2.)完全虚拟化与半虚拟化和cpu硬件辅助虚拟化

完全虚拟化(BT):guest os不知道自己运行在VM上,认为自己运行在物理机上,运行在cpu的ring0环上

由于都是通过纯软件的方式导致效率比较慢,速度慢,但是确实解决了x86cpu架构的问题。

纯软件的半虚拟化:通过修改guest os的代码,让guest os能够知道自己运行在VM上,进而知道自己没有运行在ring0环上,所以特权指令和敏感指令都主动提交给VMM,由VMM处理完成后,返回VM。

在2003年xen,使用半虚拟化的方案来解决x86的敏感指令问题,主要是通过hypercall,需要去更改guest os的代码,从而使guest os会将和特权指令相关的操作都转换为发给VMM的hypercall(超级调用),由VMM继续进行处理。

Windows不允许修改os的代码。

Cpu硬件辅助全虚拟化:有cpu厂商在cpu指令里面加入虚拟化指令。

Intel vt-x

Amd amd-v

核心思想就是通过引用新的指令和运行模式,使得guest os和VMM分别运行在不同的模式下。

在这里插入图片描述


版权声明:本文为TDH_THT原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。