通俗的理解:如果你问“什么是虚拟化”,我想大部分人的回答都会是“就是在一个操作系统中运行另一个操作系统”。虽然这个答案也没错,但这并不是真正“虚拟化”的意义,只能说是虚拟化在硬件和操作系统之间的一个实践。
事实上,这些不同的层级之间与当前的架构是紧紧依赖的。没有软件的话,服务就无法提供给用户;没有Framework,软件就无法运行;没有操作系统的话,就无法安装各式各样的软件和 Framework;没有硬件当然就什么都没有了。为了避免层次之间的紧密依赖性,在 1960 年代,就有人引入虚拟化的概念,做法很简单,就是将上一层对下一层的依赖撤销;换句话说,就是将本层的依赖从底层中抽离出来。因此我们定义“虚拟化”的正规说法,可以为“虚拟化,就是不断抽离依赖的过程”。注:此处所讨论的虚拟化均指服务器虚拟化。
1)根据虚拟化架构分为:
寄居架构:就是首先需要在硬件上安装操作系统,然后再操作系统上安装虚拟化工具,如 VMware Workstation、微软 Windows Virtual PC,然后利用这些平台安装客户机
原生架构:就是直接在硬件上安装虚拟化管理工具,如 VMware vSphere 、 CitrixXenServer/XenDesktop 。
2)根据虚拟化的程度分为:
完全虚拟化(full virtualization),指的是虚拟机不知道自己是虚拟机,也就是通过查看自己的硬件设备信息发现与物理机的设备信息一样。如 Vmware Workstation 、 vSphere、微软的 Hypervisor ,KVM
半虚拟化(Para-virtualization),指的是虚拟机保存的硬件设备信息是虚拟化的设备信息,所以虚拟机知道自己是虚拟化的。如 Xen
3)根据要虚拟的对象分为:
服务器虚拟化:KVM,Linux 等
存储虚拟化:swift、ceph, Vsan
网络虚拟化:OVS(开放虚拟交换机),
应用虚拟化:在服务器上安装应用,把用户加入到服务器的认证中,然后让用户使用账户和密码登录,这样用户就能够看到服务器上的应用,并且在使用应用时也是点击图标就可以,但是使用应用过程中产生的数据还是存储在服务器中
桌面虚拟化:Win7 系统的虚拟机,桌面式的,供个人使用的虚拟机。
虚拟化的发展历史:
常见厂商:
1)开源产品——KVM 虚拟化、Openstack 等开源云平台管理方案
2)商业解决方案
Vmware:vSphere(服务器虚拟化)、Horizon(桌面虚拟化)、ThinApp(应用虚拟化)。
Vmware 的云管理解决方案及其他解决方案——vCloud suite(v 云套件);Vmware 的灾备方案——Vmware Repolication(复制)、Site Recovery Management(站点恢复管理)等
Citrix:Xenserver、XenDesktop
Microsoft:Hyper-V
1)什么是云计算?
云计算真的要说清楚,一整本书也说不完,但是仅以云计算和虚拟化之间的关系来说,可以用两句话来简单定义云计算,分别是:
——“将已量化的许多运算资源,以网络为提交媒介,通过特定的界面给需要服务的用户。”
—— “将资源打散,找出最小的计量单位,之后将其全部集中起来,并重新分配的过程。”
2)云计算的关键词
– 量化:方便计算,量化才能决定如何分配资源以及定义最小单位。
– 许多:认定单个资源不够,需要多个资源啊来落实副本及累加性能。
– 运算资源:在这边,我们将 CPU,RAM,网络联机及存储加壳成一个资源。
– 网络:有了网络才能到达每一个地方。
– 界面:有了界面才能提供通用性的服务。
– 服务:将资源加壳成服务的模样,方便计价及计量。
– 用户:需要服务的对象,不见得是人,有可能是机器或是其他的
1998 年成立,2016 年收入达 70 亿美元,很厉害的公司。截止到 2009 年,全球所有虚拟化的应用程序中有 80%以上在 Vmware 上运行。
2003 年,被 EMC 收购,被 EMC 收购奠定了 Vmware 在底层存储的广泛支持,EMC 是存储巨头,在其存储产品中支持 Vmware 虚拟化的诸多功能。
2012 年,收购了 Nicira,收购 nicira 是 Vmware 在软件定义数据中心的明智之举,著名的 openstack 网络组建 neutron 就是由 Nicira 公司开发,收购 Nicira 以后 Vmware 很快推出了网络虚拟化商业产品 NSX。至此,Vmware 完成了软件定义数据中心的全线产品。
包括:
SDC(软件定义计算),VMware 实现方式——vSphere,也就是服务器虚拟化;
SDS(软件定义存储),VMware 实现方式——Vsan,也就是存储虚拟化;
SDN(软件定义网络),VMware 实现方式——NSX,也就是网络虚拟化。
说明:
1)虚线的是可选的,实线的是必须有的。如,在计算虚拟化中,vSphere 是必须有的,Vmware integrated openstack 是可以选也可以不选的。
2)NSX-V 指的就是 vSphere 使用的 NSX 网络管理工具;vR Business 用于计费的,其中 vR 指的是 vRealize,就是 Vmware 自己定义的名字;
3)Ops 就是 vSphere Operations Management(vSphere 运行管理,用于规划与监控的),ADV指的是 advance 高级版,ENT 指 enterprise 企业版;vR Log Insight 用于监控日志的。
4)Suite,套件;vR Automation 自动管理,用于自动管理云平台;云平台的核心组件就是vRA 、vRB、 vRO;
5)vSphere 云平台使用的是 vCloud Suite ;混合云平台使用的是 vRealize Suite
#传统架构与虚拟架构
#Vmware vcenter server的管理架构
#核心功能
1)Virtual Symmetric Multi-Processing,让虚拟机支持多处理器
2)Flash Read Cache,允许您通过将主机所在的闪存设备用作缓存来加快虚拟机的性能
3)VADP,虚拟机高级数据备份
1) VMware ESXi
vSphere 早期版本存在ESX,ESX是虚拟机平台管理程序,ESX包含了一个VMware Kernel(虚拟化管理内核)和一个命令行式的Service Console(服务控制台)(vSphere 4.1将是最后一个包含ESX版本的平台,其后续版本仅将包含ESXi)
ESXi(又名vSphere Hypervisor),基本功能同ESX,但ESXi仅保留管理内核(VMKernel)而不再包含服务控制台(用vCLI 或 PowerCLI替代其大部分功能),所以体积很小,可安装在嵌入式设备如U盘上。
2)VMware vCenter Server——虚拟化平台管理中心控制系统,有windows和linux版,
3)vSphere Update Manager——vSphere环境升级,打补丁的工具,
4)VMware vSphere Client和vSphere Web Client——vSphere客户端,
5)vRealize Orchestrator(原名vCenter Orchestrator)——自动化引擎,建立工作流的工具
6)VMware Data Protection——数据保护
7)vSphere with Operations Management(单独购买或购买套件)——监控和管理的工具,
8)Vmware Vshield zones
9)profile-driven storage——配置文件驱动的存储
10)Vsphere Fault Tolerance——容错
virtual machine templates(虚拟机模版)
role-based access controls (基于角色的访问控制)
fine-grained resource allocation controls (粒度的资源关联控制)
VMware Vmotion (在线迁移)
VMware Distributed Resource Scheduler (分布式资源调度)
VMware High Availability (高可用性)
VMware Fault Tolerance (容错)
Enhanced VMotion Compatibility (EVC) (增强vMotion兼容性)
Host profiles (主机脚本)
vNetwork Distributed Switches (分布式交换机)
Storage and Network I/O Control (存储和网络I/O控制)
vSphere Storage DRS (存储分布式资源调度)
#6.0与5.5版本对比
#物理基础架构
#虚拟化架构
#物理体系结构和虚拟体系结构
#资源共享
#CPU虚拟化
#物理和虚拟主机内存使用
#物理网络与虚拟网络
#物理文件系统与Vmware Vsphere VMFS(virtual machine file system)
#封装——虚拟机文件夹
#文件系统布局
提高硬件整合率;
快速部署服务器;
降低整体投资成本;
节能降耗;
提高了系统可用性;
物理主机被虚拟化后,计算资源均被池化。当资源池里一个节点发生故障时,运行在其上的虚拟机将自动迁移到健康的物理主机上。
1)基于vSphere的虚拟数据中心基础架构
vSphere 可加快现有数据中心向云计算的转变,同时还支持兼容的公有云服务,从而为业界唯一的混合云模式奠定了基础。vSphere,许多群体称之为“ESXi”,即底层虚拟化管理程序体系结构的名称,这是一种采用尖端技术的裸机虚拟化管理程序。
vSphere 是市场上最先进的虚拟化管理程序,具有许多独特的功能和特性,其中包括:
基于VMware vSphere 的虚拟数据中心由基本物理构建块(例如 x86 虚拟化服务器、存储器网络和阵列、IP 网络、管理服务器和桌面客户端)组成。
2)vSphere 数据中心拓扑包括下列组件
➢计算服务器:
ESXi主机一群,在祼机上运行 ESXi 的业界标准 x86 服务器。ESXi 软件为虚拟机提供资源,并运行虚拟机。每台计算服务器在虚拟环境中均称为独立主机。可以将许多配置相似的 x86 服务器组合在一起,并与相同的网络和存储子系统连接,以便提供虚拟环境中的资源集合(称为群集)。
➢ 存储网络和阵列光纤通道:
SAN 阵列、iSCSI SAN 阵列和 NAS 阵列是广泛应用的存储技术,VMware vSphere 支持这些技术以满足不同数据中心的存储需求。
➢ IP 网络:
每台计算服务器都可以有多个物理网络适配器,为整个VMware vSphere 数据中心提供高带宽和可靠的网络连接。
➢ vCenter Server: vCenter Server 为数据中心提供一个单一控制点
➢ 管理客户端:
这些界面包括 VMware vSphere Client (vSphere Client)、vSphere Web Client(用于通过 Web 浏览器访问)或 vSphere Command-Line Interface (vSphere CLI)。
3)ESXi架构和组件
ESXi是组成vSphere基础架构核心的虚拟化管理器,可直接安装在物理服务器之上,并允许多个虚拟机运行于虚拟化层之上。每个虚拟机与其他虚拟机共享相同的物理资源,并且它们可以同时运行。与其他虚拟化管理程序不同,ESXi的所有管理功能都可以通过远程管理工具提供。由于没有底层操作系统,安装空间占用量可缩减至 150 MB 以下。
ESXi 体系结构独立于任何通用操作系统运行,可提高安全性、增强可靠性并简化管理。紧凑型体系结构设计旨在直接集成到针对虚拟化进行优化的服务器硬件中,从而实现快速安装、配置和部署。
如下图所示,从体系结构来说ESXi包含虚拟化层和虚拟机,而虚拟化层有两个重要组成部分:虚拟化管理程序VMkernel和虚拟机监视器VMM。ESXi主机可以通过vSphere Client、vCLI、API/SDK和CIM接口接入管理。
4)Vmkernel
VMkernel 是虚拟化的核心和推动力,由 VMware 开发并提供与其他操作系统提供的功能类似的某些功能,如进程创建和控制、信令、文件系统和进程线程。VMkernel控制和管理服务器的实际资源,它用资源管理器排定VM顺序,为它们动态分配CPU时间、内存和磁盘及网络访问。它还包含了物流服务器各种组件的设备驱动器——例如,网卡和磁盘控制卡、VMFS文件系统和虚拟交换机。
VMkernel 专用于支持运行多个虚拟机及提供如下核心功能:
➢ 资源调度 ➢ I/O 堆栈 ➢ 设备驱动程序
VMkernel 可将虚拟机的设备映射到主机的物理设备。例如,虚拟 SCSI 磁盘驱动器可映射到与 ESXi 主机连接的 SAN LUN 中的虚拟磁盘文件;虚拟以太网 NIC 可通过虚拟交换机端口连接到特定的主机NIC。
5)虚拟机监视器VMM
每个 ESXi 主机的关键组件是一个称为 VMM 的进程。对于每个已开启的虚拟机,将在 VMkernel 中运行一个 VMM。虚拟机开始运行时,控制权将转交给 VMM,然后由 VMM 依次执行虚拟机发出的指令。VMkernel 将设置系统状态,以便 VMM 可以直接在硬件上运行。然而,虚拟机中的操作系统并不了解此次控制权转交,而会认为自己是在硬件上运行。
VMM 使虚拟机可以像物理机一样运行,而同时仍与主机和其他虚拟机保持隔离。因此,如果单台虚拟机崩溃,主机本身以及主机上的其他虚拟机将不受任何影响。
6)虚拟机
虚拟机是一个由VMkernel控制的软件构造体。所有虚拟机配置信息、状态信息和数据都封装在存储在数据存储中的一组离散文件中。这使虚拟机具有可移动性,并且易于备份或克隆。
虚拟机的特性
虚拟机的组件:
虚拟机通常有一个操作系统、VMware Tools 以及虚拟资源和硬件,其管理方式与物理计算机非常相似。在虚拟机上安装客户操作系统与在物理计算机上安装操作系统完全一样。您必须拥有操作系统供应商提供的包含安装文件的 CD/DVD-ROM 或 ISO 映像。
➢ 操作系统
虚拟机与所有标准 x86 操作系统和应用程序完全兼容。在一台物理主机的不同虚拟机里,可以根据应用需求同时运行不同的x86操作系统,彼此之间不会冲突,且对x86操作系统无需进行任何修改。
7)Vmware Tools
VMware Tools 是一套实用程序,能够提高虚拟机的客户操作系统的性能,并改善对虚拟机的管理。在客户操作系统中安装 VMware Tools 十分必要。虽然客户操作系统可以在未安装 VMware Tools 的情况下运行,但是您将无法使用某些重要功能,并失去一些便利性VMware Tools 服务是一项在客户操作系统内执行各种功能的服务。该服务在客户操作系统启动时自动启动。该服务可执行的功能包括:
➢ 将消息从 ESXi 主机传送到客户操作系统。向 ESXi 主机发送心跳信号,使其知道客户操作系统正在运行。
➢ 实现客户操作系统与主机操作系统之间的时间同步。
➢ 在虚拟机中运行脚本并执行命令。➢ 为使用 VMware VIX API 创建的与客户操作系统绑定的调用提供支持,除 Mac OS X 客户操作系统外。
➢ 允许指针在 Windows 客户操作系统的客户机和 Workstation 之间自由移动。
➢ 帮助创建 Windows 客户操作系统中由特定备份应用程序使用的快照。
➢ 各种驱动程序:
在客户操作系统中安装 VMware Tools 后,它还会提供 VMware 设备驱动程序,包括 SVGA 显示驱动程序、用于某些客户操作系统的 vmxnet 网络连接驱动程序、用于某些客户操作系统的 BusLogic SCSI 或 LSI Logic 驱动程序、用于在虚拟机之间进行有效内存分配的内存控制驱动程序、用于将 I/O 置于静默状态(使用VMware Data Recovery 或 VMware vStorage API for Data Recovery)以进行备份的同步驱动程序、用于实现文件夹共享的内核模块以及 VMware 鼠标驱动程序。
8)虚拟硬件
每个虚拟机都有虚拟硬件,这些虚拟硬件在所安装的客户操作系统及其应用中显示为物理硬件。每个客户操作系统都能识别出常规硬件设备,但它并不知道这些设备实际上是虚拟设备。虚拟机具有统一的硬件(少数选项可以由系统管理员控制)。统一硬件使得虚拟机可以跨 vSphere 主机进行迁移。
ESXi 主机将为每个虚拟机提供一个 x86 基础平台,可以选择要在该平台中安装的设备。基础虚拟机完全符合 x86 架构的系统标准。下图是所有Windows 虚拟机中均配备的标准VMware 设备驱动程序。标准虚拟设备驱动程序具有可移植性,您无需为每台虚拟机重新配置操作系统。如果将这些文件复制到其他 ESXi 主机,则即使硬件截然不同,这些文件仍然可以正常运行,且无需重新配置硬件。
9)虚拟机最高配置,这是5.5版本
转载请注明出处,谢谢!