虚拟化
如果要对物理资源进行管理,第一步,就是“虚拟化”。虚拟化是云计算的基础。简单来说,虚拟化就是在一台物理服务器上,运行多台“虚拟服务器”。这种虚拟服务器,也叫虚拟机(VM,VirtualMachine)。
从表面来看,这些虚拟机都是独立的服务器,但实际上,它们共享物理服务器的CPU、内存、硬件、网卡等资源。通过模拟计算机的硬件,来实现在同一台计算机上同时运行不同的操作系统的技术。常用的vmwore、openstack、kvm都是使用的虚拟化技术
- 物理机,通常称为“宿主机(Host)”
- 虚拟机,则称为“客户机(Guest)”。
谁来完成物理资源虚拟化的工作呢?就是大名鼎鼎的 Hypervisor 。
Hypervisor也叫做VMM(Virtual Machine Monitor,虚拟机监视器)。它不是一款具体的软件,而是一类软件的统称。Hypervisor是一种运行在基础物理服务器硬件之上的软件层,可以虚拟化硬件资源,例如:cpu,硬盘,内存,声卡等资源。然后我们可以通过在虚拟化出来的资源之上安装操作系统。也就是所谓的虚拟机。通过Hyperviosr我们可以创建不同的虚拟机,并且每个虚拟机都是分离、独立的系统。这样操作,我们就可以在一台硬件服务器和本地操作系统之上虚拟化出很多服务器,供我们用来部署应用程序。一台硬件服务器可以虚拟化多台服务器,让计算机资源得以充分利用。
Hypervisor分为两大类:
- 第一类,hypervisor直接运行在物理机之上。虚拟机运行在hypervisor之上。
- 第二类,物理机上安装正常的操作系统(例如Linux或Windows),然后在正常操作系统上安装hypervisor,生成和管理虚拟机。像VMware、KVM、Xen、Virtual Box,都属于Hypervisor。