笔者在研究生阶段研究云计算方面的课题,期间磕磕碰碰,补知识,虽然云计算已经不是一个新名词,网上也有许多资料和博文介绍,写得也非常到位,但笔者希望以自己的理解对云计算方面的知识做一些整理和总结,同时以图文并茂的方式来分享一些个人见解。因此笔者准备开始撰写云计算方面的博文,如若哪里写得不到位,还请各位读者指出,谢谢。


摘要: 本文主要介绍云计算中的虚拟机,以及虚拟机在数据中心中的使用场景。为了使读者能够对虚拟机有个清晰直观的认识,笔者将先以一个示例介绍物理计算机(电脑)的核心组成部件以及其运作方式。其后,能够让读者平滑地过度理解虚拟机,以及虚拟机的本质。最后再介绍数据中心中虚拟机的使用场景及其部署方式。

1. 物理计算机组成结构

平时我们在购买电脑(即物理计算机)的时候,导购员总会询问你对于电脑需要什么样的配置,内存多大,CPU要什么型号等。其实导购员询问的这些信息基本就是一台电脑的硬件组成部分,那么一台电脑的组成有哪些呢?根据冯诺依曼体系结构(如下图1(a)所示,下图1(b)源于网络),电脑的核心组成部分如下:

  • 中央处理器(即通常说的CPU
  • 存储设备(通俗来讲就是“内存”“硬盘”两部分)
  • 输入设备(如键盘鼠标等)
  • 输出设备(如显示器

图1. 以射箭为例解释冯诺依曼体系结构。(a) 冯诺依曼体系结构及示例;(b) 射箭示例

对于一台电脑是如何运作的,笔者将尝试用两种方式来阐述,一种为相对官方的方式,另一种将以人射箭为例介绍。

  • 较为官方的阐述:如上图1(a)所示,操作电脑的人员通过输入设备,将指令输入计算机,CPU从存储中读取应用程序在存储中的相关数据,在利用算数逻辑单元对输入数据进行运算处理,得到运算结果,最后再通过输出设备将结果输出。对于计算机或者CPU来说,所有的功能无非都是对“0”或“1”这样的数据进行处理,但是这些数据对于用户来说已经经过各种图形界面的处理让用户看到形象直观的结果。

  • 通俗示例的阐述:我们以上图1(b)的美女射箭为例对照着理解图1(a)的冯诺依曼体系结构。首先,我们明确射箭的过程是需要“眼睛”、“手+弓+箭”、“大脑”、“大脑知识库”的辅助。这是因为:

    1. 眼睛(对应输入设备):其职能为将看到的靶子作为输入传送给大脑;
    2. 大脑(对应CPU):将看到的靶子用于处理“射箭”这项功能;
    3. 大脑知识库(对应存储):射箭这项技能并非人生而就会的,需要经过训练和学习将其掌握,掌握到此项技能后大脑就会将这项技能存储于大脑知识库中,以便在需要的时候取出来运用;
    4. 大脑(对应CPU):大脑从知识库中取出射箭这项技能后,会将眼睛输入的靶子信息(位置,大小等)结合于射箭这项技能进行处理,得出一个计算(处理)结果为“需要用手以多大的力道,什么角度将弓箭射出去”传输给手;
    5. 手+弓+箭(对应输出设备):当手收到来自大脑的指令,则它会根据大脑给出的处理结果,以确定的力道、确定的角度将手中的弓箭释放出去。

因此,我们做个总结:计算机(电脑)提供的各种软件服务,其实都可以抽象为“输入数据 ”–>“存储数据”–>“调用处理这些数据的逻辑功能”–>“计算并处理数据”–>“将处理结果输出”,这个过程中无非就是需要用到CPU、存储这样的硬件设施。

2. 虚拟机

在上一章节,我们对物理计算机(电脑)的组成结构以及运作过程做了形象直观的介绍,基于此,我们可以对虚拟机进行介绍了。虚拟(Virtual),笔者理解为虚假的,非物理客观存在的意思,相对的为物理客观存在。对比于我们肉眼可见、客观存在的计算机(电脑),虚拟机则是并非物理客观存在、肉眼不可见的计算机,但它具备有和物理计算机相同功能(即你无需看到客观存在的一个物理主机,无需知道有客观存在的CPU和存储等硬件设备,也可通过软件的形式运行一台电脑)。常见的虚拟化平台软件有“VMware Workstation”、“VirtualBox”等,读者若是感兴趣,可以自行搜索进行安装使用,通过它们,读者能够在Windows 10/8/7/XP等系统中,创建一个虚拟机,并在虚拟机中安装Windows 10/8/7/XP或者Linux等系统(即,如在win10下再运行一个win8的系统)。

PS:有了这样的概念,我们也大致可以理解“云计算”这个词,首先这个词中间的“计算”即是指计算机(电脑)的计算功能,其次“云”这个词可以指规模大、组成复杂、组成成分大小不同,且云后面是什么用户不可知或无需关心。

讲了那么多概念,还是直接上一个图来解释吧,请读者看图 2。虚拟机虽然为一个不客观存在的计算机(电脑),然而它在逻辑上也存在于物理计算机一样的组成元素。如果读者尝试用“VMware Workstation”创建了一个虚拟机,则读者可以在创建虚拟机所选的路径中看到一个以该虚拟机为名命名的一个文件夹(即图 2的黄色文件夹所示),在此文件夹中,包含有各种文件,如:虚拟机的配置文件(VMName.vmx中记录着虚拟机配备了多少内存,多强的CPU,多大的硬盘空间,什么样的网卡等信息)、BIOS配置文件(VName.nvram)、日志文件(vmware.log文件记录着虚拟机操作等日志信息)、磁盘文件(VMName.vmdk文件即写入了该虚拟机中存储了的所有文件的内容,因为所有的文件本质上就是0101这样的二进制数据)等。


图 2. 虚拟机逻辑结构图

如果上面这个图依然十分抽象,读者可以看一下实际的虚拟机(如图 3所示),该图左侧为读者使用“VMware Workstation”创建的三个虚拟机,分别是用CentOS,Windows 7和Windows XP的系统镜像创建的,该图右侧为进入Windows 7虚拟机对应的“Win7”文件夹后所看到的各种虚拟机文件,该图下方部分为上述虚拟机在VMware Workstation中所呈现出来的形式(其中Windows 7的虚拟机对应读取的是上述“Win7”文件夹)。

图 3. 使用VMware Workstation创建的虚拟机的截图

3. 虚拟机和数据中心

介绍完物理计算机和虚拟机后,我们就可以来了解一下在数据中心中,虚拟机的组成结构是什么样的了,直接上图,请读者看图 4,该图展示了数据中心的逻辑架构。以从下往上,从左往右的角度观察此图:


图 4. 数据中心结构图

  • 图 4第一层:SAN存储
    SAN(Storage Area Network)存储即存储区域网络,读者可以将其理解为网络磁盘(类似百度云存储,Google云存储),也可以理解为原本在物理计算机上的硬盘存储被拿出来组成了一块大的存储区域,然后物理计算机通过网络的方式来访问这些存储设备。此外,根据上述介绍过的虚拟机,我们可知虚拟机本质为各种虚拟机文件构成的集合,每个虚拟机对应为一个文件夹,因此在此部分中,黄色文件夹表示各个虚拟机所对应的文件夹,存储在这块区域中。

  • 图 4第二层:物理服务器
    该层面则为我们之前所提到的物理计算机(即物理服务器)群体,可通过路由器和交换机等网络设备将这些物理服务器连接起来。

  • 图 4第三层:虚拟化平台
    它并非以物理形式存在的,读者可以将它当成一个操作系统或者软件来理解,一般这类虚拟化平台系统/软件有VMware ESXi、KVM、XEN等。虚拟化平台的主要作用就是将物理机所拥有的资源隔离出来创建虚拟机用。比如说内存这样的硬件资源,虚拟化平台则可以将内存的地址空间从逻辑上划分成多个区域进行分配。这么说可能有点抽象,我们可以假象一个包租公/包租婆手里拥有一栋商品房(对应内存地址空间),当有人过来需要使用房子的时候,包租公/包租婆就会把某一层(假设第一层,对应为内存的地址空间)分配给他,让他使用并记录下这一层已经被人使用,那么当再有别人来租房的时候,包租公/包租婆就不会把第一层分配给其他人。这里的包租公/包租婆则可以对应为虚拟化平台这个角色。

  • 图 4的最顶层:虚拟机
    虚拟机是依赖于第三层的虚拟化平台才得以建立的,其组成与本质我们已在前面的章节介绍过。

  • 图 4的最右侧:中心资源管理节点
    每个物理服务器上安装了ESXi平台对该物理服务器进行资源管理和调度,但是为了能够使整个数据中心的资源能够被高效地利用起来,则需要一个中心控制节点来对各个ESXi节点的资源进行调度和管理,通过它能够做负载均衡(Load Balance)或者故障迁移等操作。

在有了这样的基础架构上,数据中心则能够为用户提供虚拟机租赁服务,用户能够在诸如阿里云服务、腾讯云服务、亚马逊云服务或者美橙互联这样的第三方平台,根据自己的需求创建出自己的虚拟机。如今数据中心已经有较为成熟的资源调度方案,能够做到为用户的虚拟机提供按使用量计费,用多少支付多少的服务,一方面节约了用户的开销,另一方面同时能够提高数据中心的资源利用率。

4. 结束语

本偏博文以通俗易懂地方式介绍了虚拟机、物理计算机和数据中心的架构,虽然能够让读者形象地去理解它们,但其底层基础技术和原理仍有非常多需要学习的地方,如果读者希望能够很好地掌握和理解它们,建议多实践实践,简单一点的可以通过VMware Workstation创建一两个虚拟机玩玩。再深层一次点的可以装一下VMware的ESXi,模拟着创建一个数据中心,但是这个操作需要读者拥有较高配置的计算机来做尝试。同时也需要读者翻阅一些书籍以理解一些基础概念,Thomas Erl所著的《Cloud Computing Concepts, Technology & Architecture》则是一本较为粗浅易懂的书籍,有中文版《云计算概念、技术与架构》。至于在做数据中心的研究者们,可以在谷歌学术上检索一些文献来了解资源分配,Green Computing,生存性等问题,IEEE Transaction有如下几个可以关注一下:

  • IEEE Transactions on Services Computing
  • IEEE Transactions on Parallel and Distributed Systems
  • IEEE Transactions on Cloud Computing
  • IEEE Transactions on Computers

最后,欢迎各位读者指出博文中的错误,留言给出一些学习或者研究方面的宝贵建议。

云计算:数据中心之虚拟机相关推荐

  1. 无信任链可信计算模型与可信虚拟化云计算数据中心解决方案

    目前信息技术的使用正在开始转向云服务,不可避免的对云安全的需求随之而来.云安全有许多含义.在公有云方面,用户会担心受网络稳定性.带宽速度所影响的服务体验,解决这些问题可以理解为提供一种初级的安全保障. ...

  2. 潮州市云计算数据中心挂牌 粤东地区规模最大

    近日,潮州市云计算数据中心挂牌仪式在在中国电信潮州分公司举行,标志着潮州云计算和大数据服务迈入了信息技术的最前沿.副市长洪岳伟为该数据中心揭牌. 据了解,潮州电信联合深圳市盘古数据有限公司,于2016 ...

  3. 西藏打造云计算数据中心 2020年中国数据中心规模约2000亿元

    据悉,西藏云计算数据中心目前已完成一期一阶段项目建设,并开始投入试运营.该中心是目前全球海拔最高的云计算数据中心,整个项目占地面积64.5万平方米,总投资118亿元,预计在五至六年后全部完成. 数据中 ...

  4. 西藏最大云计算数据中心明年投入试运营

    记者从宁算科技集团获悉:由该公司投建的全球海拔最高.西藏地区最大的云计算数据中心,已完工项目一期一阶段内计划建设的两栋主体建筑.数据运维楼和机房楼,预计2020年建成21个机房模块.2520台机柜后投 ...

  5. 腾讯清新云计算数据中心主体工程明年初竣工

    "目前,项目的综合楼和一号厂房已经封顶,其中综合楼已经开始装修.整个项目的主体工程将在明年初完成."10月8日,腾讯清远清新云计算数据中心项目(以下简称腾讯清新项目)的承建方负责人 ...

  6. 深圳观澜机房(云计算数据中心)

    深圳观澜机房(云计算数据中心) 深圳观澜机房(云计算数据中心) 时间:2017-08-03 15:34:38   作者:tanym   来源:服务器托管   阅读:108569   评论:0 内容摘要 ...

  7. 2021-2025年中国云计算数据中心IT资产处置(ITAD)行业市场供需与战略研究报告

    云计算数据中心IT资产处置(ITAD)市场的企业竞争态势 该报告涉及的主要国际市场参与者有AMI.Iron Mountain.CloudBlue.Apto Solutions.Arrow.Tes-Am ...

  8. 长春新区北湖科技开发区华为长春云计算数据中心项目进展顺利

    说起华为技术有限公司,人们首先想到的是它的智能手机.路由器.手环.手表等电子产品.作为全球领先的信息与通信解决方案供应商,华为在云计算领域也拥有领先的技术水平.全球化的运营能力和世界级的品牌影响力.今 ...

  9. CIO:云计算数据中心运维管理要点

    云计算运维管理的要点云计算在运维管理中其所涵盖的范围非常广泛,其中主要包括了对环境管理.网络管理.软件管理.设备管理.日常操作管理.用户密码管理以及员工管理等多个方面.要良好实现以上的管理目标,则应着 ...

  10. 云计算数据中心系列 【服务器篇】 视频课程(硬件精讲 + 项目实战)-夏杰-专题视频课程...

    云计算数据中心系列 [服务器篇] 视频课程(硬件精讲 + 项目实战)-283人已学习 课程介绍         平台上去搜索服务器,基本只有两类课程,要么讲系统(Windows/Linux),要么讲虚 ...

最新文章

  1. [原]three.js 地形纹理混合
  2. SAP PM创建/计划MO
  3. keil4 动态调式断不能先打断点嘛_为什么说抖音“鸽武缘”的通背拳是不能实战的“花架子”...
  4. zookeeper 命令
  5. Liferay Portal额外研究-银狐999
  6. PHP json_decode 对 JSON 格式的字符串进行编码并获取对应的值
  7. hive -e和hive -f的区别(转)
  8. access2003的使用
  9. Shiro框架原理及应用分析
  10. 未来计算机的景象,科幻场景即将实现,未来云电脑!
  11. 加密技术,给邮件安全加上一把锁
  12. java 类的继承 例题_Java_接口与类之间继承例题
  13. 阶段1 语言基础+高级_1-3-Java语言高级_08-JDK8新特性_第3节 两种获取Stream流的方式_11_练习:集合元素处理(Stream方式)...
  14. linux lsb版本错误,CentOS中-bash: lsb_release: command not found错误的解决方法
  15. NLP自然语言处理系列-业界前沿动态 对话式数据分析的关键技术——语义解析Text-to-SQL
  16. 四川多多开店:拼多多如何检查聊天记录
  17. 使用Entrez下载文献
  18. swift - enumerated()
  19. 域名泛解析,二级域名转向问题- -完美解决
  20. HTML重构:工具篇

热门文章

  1. GDAL使用DEM数据计算坡度坡向
  2. 一天一天学做外挂@第四天-给自己找个贴心小护士[武林外传]
  3. 9780 RIM gtalk不能使用的解決方案 service not enabled for this handheld
  4. 由DIY想到的面向对象思想
  5. ios 自动缩小字体_技巧:如何改变iPhone上的字体大小
  6. ubuntu10.04下设置桌面特效
  7. 集电极开路,漏极开路
  8. 集电极开路(OC)/漏极开路(OD)输出的结构
  9. 【Python 趣味习题】
  10. UNP学习第一步:unp.h的安装及第一个程序的运行