logo
关于我们

技术分享

技术分享 谈谈我对云计算的认识之基本概念(二)

谈谈我对云计算的认识之基本概念(二)

2020-05-12

本篇介绍一个云计算中非常重要的概念:虚拟化。

虚拟化定义

虚拟化这个词并不像云计算那个难以令人捉摸,虚拟化是一种资源管理技术,是将计算机的各种实体资源(CPU、内存、磁盘空间、网络适配器等),予以抽象、转换后呈现出来并可供分区、组合为一个或多个电脑配置环境。由此,打破实体结构间的不可切割的障碍,使用户可以比原本的配置更好的方式来应用这些电脑硬件资源。这些资源的新虚拟部分是不受现有资源的架设方式,地域或物理配置所限制。一般所指的虚拟化资源包括计算能力和数据存储。其虚拟化层次如下图:
层次
最底层的虚拟化是硬件支持的虚拟化,Intel虚拟化技术(VT-x)和AMD的AMD-V,上有操作系统级别的虚拟化如KVM、ESXI等,最上层的还有应用虚拟化,大家所熟知的JVM,Java的一次编译处处运行的特性就是依赖JVM。

虚拟化分类

虚拟化可以按照虚拟化程度分为:全虚拟化、半虚拟化、硬件辅助虚拟化。全虚拟化的就是全部由软件模拟,操作系统不需要任何修改,如我们经常在自己电脑上面安装的VMware workstations以及Oracle Virtualbox,我们可以通过标准的ISO镜像安装操作系统,不需要定制操作系统;半虚拟化和全虚拟化最大的区别在于要修改操作系统,让客户机操作系统知道自己运行在虚拟化环境,这样部分指令可以透过操作系统,提供效率,最著名就是Xen;当前数据中心最常用的是硬件辅助虚拟化,宿主机的hypervisor运行在特权级别,关于指令如果陷入等详细内容以后再细谈,当前常见的硬件辅助虚拟化主要是:VMware的ESXi、KVM以及微软的Hyper-v。商业化最成熟也是最稳定的当属ESXI,开源最热门的当属KVM,openstack+KVM黄金搭档。
这里写图片描述
从虚拟化的内容分类可以分为:计算虚拟化、存储虚拟化、网络虚拟化。下面我就针对这些虚拟化类型逐一讲解:

计算虚拟化

我认为计算虚拟化狭义的理解为CPU和内存虚拟化,CPU虚拟化就是在把物理CPU抽象成虚拟CPU供Guest OS使用,任意时刻一个物理CPU上只能运行一个虚拟CPU,虚拟CPU本质上就是一个进程。在x86体系结构中CPU一般有4个等级:Ring0、Ring1、Ring2、Ring3,Ring0级别具有最高的权限,可以执行任何指令,从Ring0->Ring3依次递减,操作系统内核运行在Ring0而用户的应用程序运行在Ring3。内存虚拟化,就是通过VMM(hypervisor)管理物理机上内存,并按照每个虚拟机对内存的需求划分机器内存,同时保证各个虚拟机内存相互隔离。在内存虚拟化中,需要维护逻辑内存(guest os)与机器内存之间的映射关系。其基本原理:GVA(客户机操作系统虚拟内存)->GPA(客户机物理内存地址)->HPA(宿主机物理内存地址)当然这些转换通可以通过硬件加速或者影子列表法加速。虚拟内存管理常用三种技术:内存气泡、内存零页共享、内存交换技术。我把现在流行的Docker页纳入计算虚拟化中。
这里写图片描述

存储虚拟化

存储虚拟化分为两个阶段,第一阶段是以数据中心SAN存储和NAS存储为代表的集中存储。
SAN第二个阶段是软件定义的存储,如亚马逊的S3,开源的分布式对象存储系统,以ceph为代表。分布式存储可以搭建在普通x86服务器集群之上,主要依靠多副本完成数据高可靠,下图是ceph的存储示意图
ceph

网络虚拟化

网络虚拟化是在物理网络拓扑基础之上建立的虚拟网络,它不依赖于底层物理连接,能够动态变化网络拓扑,提供多租户隔离。如果溯源,vlan其实就是一种网络隔离,在一个网络下通过vlan tag划分多个广播域。可以通过SDN实现虚拟网络,这又不得不提NFV,它和SDN最大的区别是SDN是全软件实现,NFV依赖物理设备。下图展示一个物理拓扑到逻辑拓扑的映射。
这里写图片描述
还有vxlan、ovs、overlay等技术会在后面详细介绍

虚拟化的优势

节省资源

对于计算虚拟化,降服务的资源细化,化大为小,从而可以更加精细的进行资源的划分和管理,从而节省资源,使用更少的物理机服务器。对于网络资源可以通过软件模拟,从而节省昂贵的网络设备。存储也是一样,通过分布式的存储,替换部分专有的存储设备,从而达到节省成本的目的。

服务隔离

在传统的部署模式下,一个物理机上面可能部署多个服务,每个服务共享资源互相关联,通过虚拟化,生成一个独立的运行环境,这样提供了服务隔离,保证服务运行的稳定和安全。

快速配置

对于传统的服务器,即便是通过pxe安装也是需要很长时间的,而且还需要安装各种服务依赖环境,配置相当麻烦,同虚拟化技术将运行环境打包成一个虚拟机镜像,甚至是一个docker的image,这样可以一键秒级的启动。

服务的灾备

通过虚拟机的迁移技术,结合网络的SDN技术等,可以实现虚拟机的在线迁移,这为灾备提供了很好支持,虚拟机可以随时做镜像和快照,通过快照也可以迅速的启动虚拟机。结合虚拟机迁移技术,可以做资源的负载,将虚拟机从一台资源紧张的机器迁移到另一台机器上面,从而达到资源的充分利用

屏蔽物理硬件和操作系统

通过虚拟化技术,可以在不同架构的服务器上面跑相同的操作系统,可以在Linux的宿主机上面运行windows操作系统,也可以在windows的宿主机上面运行Linux操作系统。

云祺备份软件,云祺容灾备份系统,虚拟机备份,数据库备份,文件备份,实时备份,勒索软件,美国,图书馆
  • 标签:
  • 云计算

您可能感兴趣的新闻 换一批

现在下载,可享30天免费试用

立即下载