跳到主要内容

04、Docker - 实战:虚拟化概念

1、虚拟化的概念

虚拟化是指通过虚拟化技术将计算机虚拟为多台逻辑计算机。在一台计算机上同时运行多个逻辑计算机,每个逻辑计算机可运行不同的操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率。

2、为什么出现虚拟化

由于x86服务器的限制,许多IT组织必须部署多个服务器,每个服务器只能以其容量的一小部分运行,以满足当今的高存储和处理需求。其结果是:效率极低,运维成本过高。

采用虚拟化技术来模拟硬件功能并创建虚拟计算机系统。这使IT组织能够在单个服务器上运行多个虚拟系统以及多个操作系统和应用。由此带来的好处包括规模经济和更高的效率。

所以虚拟化,虚拟化技术是一个总称,是一系列实现虚拟技术的统称,是一种资源解决方案。

虚拟化技术是将物理资源转变为逻辑上可以管理的资源,以打破物理结构之间的壁垒,应用程序服务运行在虚拟资源上,而不是真实的物理机上,大大的提升了服务器资源的利用率。

 

3、虚拟化技术

如果要对物理资源进行管理,第一步,就是“虚拟化”。

虚拟化是云计算的基础。简单来说,虚拟化就是在一台物理服务器上,运行多台“虚拟服务器”。这种虚拟服务器,也叫虚拟机(VMVirtual Machine)。

从表面来看,这些虚拟机都是独立的服务器,但实际上,它们共享物理服务器的CPU、内存、硬件、网卡等资源。

物理机,通常称为宿主机Host)。虚拟机则称为客户机(Guest)。

(1)谁来完成物理资源虚拟化的工作呢?

就是大名鼎鼎的Hypervisor

Hypervisor,汉译过来是“超级监督者”,也叫做VMMVirtual Machine Monitor,虚拟机监视器)。它不是一款具体的软件,而是一类软件的统称。

(2)Hypervisor分类。

Hypervisor分为两大类:

  • 第一类,hypervisor直接运行在物理机之上。虚拟机运行在hypervisor之上。
  • 第二类,物理机上安装正常的操作系统(例如Linux或Windows),然后在正常操作系统上安装hypervisor,生成和管理虚拟机。

如下图所示:

 

VMwareKVMXenVirtual Box,都属于Hypervisor

VMware大家应该很熟悉,就是VMware Workstation。学习Linux的话,很多人都是在Wwindows系统下安装WMware,然后创建Linux虚拟机。

但是,真正厉害的,是KVMkernel-based virtual machine,基于Linux内核的虚拟机)。它是目前最热门最受追捧的虚拟化方案。

KVM这样的Hypervisor软件,实际上是提供了一种虚拟化能力,模拟CPU的运行,更为底层。但是它的用户交互并不良好,不方便使用。

于是,为了更好地管理虚拟机,就需要OpenStack这样的云管理平台。

请记住,上面所说的几个概念,包括VMKVMOpenStack等,都主要属于IaaS(基础设施即服务)。

(3)最后在解释一下什么是虚拟机。

虚拟计算机系统称为“虚拟机”(VM),它是一种严密隔离且内含操作系统和应用的软件容器。每个自包含虚拟机都是完全独立的。通过将多台虚拟机放置在一台计算机上,可仅在一台物理服务器或“主机”上运行多个操作系统和应用。

hypervisor软件层可将虚拟机与主机分离开来,并根据需要为每个虚拟机动态分配计算资源。

参考: