云计算服务器是不是虚拟服务器_云服务器的核心技术——虚拟化

97c4cd4d6c75d1ff5e852965df343581.png

阅读本文大概需要5分钟。

概念解释:

物理机:客观存在的真实服务器,能看的到、摸得着的。通常也被叫做宿主机,因为虚拟机“寄宿”在上面。

虚拟机:运行在物理机上的,看不见、摸不到、但可以通过网络访问的服务器。通常也叫云服务器。

物理硬件:组成物理机的硬件。

虚拟硬件:组成虚拟机的硬件,通过虚拟化技术获得。

OS:Operating System,操作系统。


在上一篇文章《开宗明义:解剖云服务器》中提过:虚拟化技术,顾名思义,是能够在一个物理硬件平台上虚拟出多个虚拟硬件平台的技术。虚拟化技术是云计算不可或缺的基础。

目前常用的虚拟化技术是KVM,全称为Kernel Virtual Machine。KVM是基于支持Intel-VT或者AMD-V特性的X86硬件。2006年10月,KVM模块的源代码被正式接纳进入Linux Kernel,成为内核源代码的一部分。因此,KVM是Linux完全原生的硬件虚拟化解决方案。

使用KVM构建虚拟机的架构如下:

2df9eb0a5012d22e07255f373e602130.png
KVM架构

在上图中,Linux内核运行在物理硬件之上,KVM模块将Linux内核本身变成一个Hypervisor。Hypervisor是位于物理硬件和虚拟硬件之间的一个中间层,可以理解为一个代理,它将虚拟硬件要执行的指令按一定的算法调度给物理硬件去执行。有了虚拟硬件,虚拟机就可以按照正常的流程安装操作系统以及运行APP了。

Hypervisor核心工作就是对多个虚拟硬件要求的资源进行统筹协调,最主要的就是协调CPU资源和内存资源。对于CPU资源,Hypervisor通过选择合适的调度算法,把物理CPU合理的分配给虚拟CPU使用。对于内存资源,Hypervisor需要先将物理硬件的内存地址转化为虚拟硬件的物理地址,虚拟机OS会把虚拟硬件的物理地址映射为虚拟内存地址(参考OS的内存管理),进而提供给APP使用。

KVM除了对CPU和内存资源进行管理之外,还能够使用Linux支持的任何存储形式来存储虚拟机系统盘(关于虚拟系统盘,可以参考前一篇文章)。比如网络连接存储、分布式对象存储,本地磁盘存储等等。

参考文献:

[1] 顾炯炯.云计算架构技术与实践[M].北京:清华大学出版社,2016.

[2]任永杰,单海涛.KVM虚拟化技术:实战与原理解析[M].北京:机械工业出版社,2014.

入门云计算:你该了解的那些事儿​www.zhihu.com
481091d036e1bbc02b5ed654b0cd3480.png
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值