“云计算” 算是近年来最热的词了。现在 IT 行业见面不说这三个字您都不好意思跟人家打招呼。 对于云计算,学术界有各种定义,大家有兴趣可以百度一下。

CloudMan 这里主要想从技术的角度谈谈对云计算的理解。

基本概念

所有的新事物都不是突然冒出来的,都有前世和今生。 云计算也是IT技术不断发展的产物。 要理解云计算,需要对IT系统架构的发展过程有所认识。 请看下图

IT系统架构的发展到目前为止大致可以分为3个阶段:

  1. 物理机架构
    这一阶段,应用部署和运行在物理机上。 比如企业要上一个ERP系统,如果规模不大,可以找3台物理机,分别部署Web服务器、应用服务器和数据库服务器。 如果规模大一点,各种服务器可以采用集群架构,但每个集群成员也还是直接部署在物理机上。 我见过的客户早期都是这种架构,一套应用一套服务器,通常系统的资源使用率都很低,达到20%的都是好的。

  2. 虚拟化架构
    摩尔定律决定了物理服务器的计算能力越来越强,虚拟化技术的发展大大提高了物理服务器的资源使用率。 这个阶段,物理机上运行若干虚拟机,应用系统直接部署到虚拟机上。 虚拟化的好处还体现在减少了需要管理的物理机数量,同时节省了维护成本。

  3. 云计算架构 虚拟化提高了单台物理机的资源使用率,随着虚拟化技术的应用,IT环境中有越来越多的虚拟机,这时新的需求产生了: 如何对IT环境中的虚拟机进行统一和高效的管理。 有需求就有供给,云计算登上了历史舞台。

计算(CPU/内存)、存储和网络是 IT 系统的三类资源。 通过云计算平台,这三类资源变成了三个池子。 当需要虚机的时候,只需要向平台提供虚机的规格。 平台会快速从三个资源池分配相应的资源,部署出这样一个满足规格的虚机。 虚机的使用者不再需要关心虚机运行在哪里,存储空间从哪里来,IP是如何分配,这些云平台都搞定了。

云平台是一个面向服务的架构,按照提供服务的不同分为 IaaS、PaaS 和 SaaS。 请看下图

IaaS(Infrastructure as a Service)提供的服务是虚拟机。 IaaS 负责管理虚机的生命周期,包括创建、修改、备份、启停、销毁等。 使用者从云平台得到的是一个已经安装好镜像(操作系统+其他预装软件)的虚拟机。 使用者需要关心虚机的类型(OS)和配置(CPU、内存、磁盘),并且自己负责部署上层的中间件和应用。 IaaS 的使用者通常是数据中心的系统管理员。 典型的 IaaS 例子有 AWS、Rackspace、阿里云等

PaaS(Platform as a Service)提供的服务是应用的运行环境和一系列中间件服务(比如数据库、消息队列等)。 使用者只需专注应用的开发,并将自己的应用和数据部署到PaaS环境中。 PaaS负责保证这些服务的可用性和性能。 PaaS的使用者通常是应用的开发人员。 典型的 PaaS 有 Google App Engine、IBM BlueMix 等

SaaS(Software as a Service)提供的是应用服务。 使用者只需要登录并使用应用,无需关心应用使用什么技术实现,也不需要关系应用部署在哪里。 SaaS的使用者通常是应用的最终用户。 典型的 SaaS 有 Google Gmail、Salesforce 等

云计算和 OpenStack

OpenStack is a cloud operating system that controls large pools of compute, storage, and networking resources throughout a datacenter, all managed through a dashboard that gives administrators control while empowering their users to provision resources through a web interface.

以上是官网对 OpenStack 的定义,OpenStack 对数据中心的计算、存储和网络资源进行统一管理。 由此可见,OpenStack 针对的是 IT 基础设施,是 IaaS 这个层次的云操作系统。

下一节我们将正式开始 OpenStack 之旅。

云计算与 OpenStack - 每天5分钟玩转 OpenStack(14)相关推荐

  1. Troubleshooting OpenStack Bug- 每天5分钟玩转 OpenStack(162)

    这是 OpenStack 实施经验分享系列的第 12 篇. 问题描述 客户报告了一个问题:对 instance 执行 migrate 操作,几个小时了一直无法完成,不太正常. 问题分析 遇到这种情况, ...

  2. 写在最前面 - 每天5分钟玩转 OpenStack(1)

    写在最前面 <每天5分钟玩转 OpenStack>是一个 OpenStack 教程,这是第 1 篇. 这个教程有下面两个特点: 系统讲解 OpenStack 从架构到各个组件:从整体到细节 ...

  3. LVM 类型的 Storage Pool - 每天5分钟玩转 OpenStack(8)

    http://www.cnblogs.com/CloudMan6/p/5277927.html LVM 类型的 Storage Pool - 每天5分钟玩转 OpenStack(8) LVM 类型的 ...

  4. 如何使用 OpenStack CLI - 每天5分钟玩转 OpenStack(22)

    http://www.cnblogs.com/CloudMan6/p/5402490.html 如何使用 OpenStack CLI - 每天5分钟玩转 OpenStack(22) 本节首先讨论 p_ ...

  5. Pause/Resume Instance 操作详解 - 每天5分钟玩转 OpenStack(34)

    Pause/Resume Instance 操作详解 - 每天5分钟玩转 OpenStack(34) 本节通过日志详细分析 Nova Pause/Resume 操作. 有时需要短时间暂停 instan ...

  6. 部署 DevStack - 每天5分钟玩转 OpenStack(17)

    http://www.cnblogs.com/CloudMan6/p/5357273.html 部署 DevStack - 每天5分钟玩转 OpenStack(17) 本节按照以下步骤部署 DevSt ...

  7. Cinder 组件详解 - 每天5分钟玩转 OpenStack(47)

    Cinder 组件详解 - 每天5分钟玩转 OpenStack(47) 本节我们将详细讲解 Cinder 的各个子服务. cinder-api cinder-api 是整个 Cinder 组件的门户, ...

  8. 每天5分钟玩转openstack跟学(一)预备知识

    前言:对于openstack我是一名小白,打算跟着CloudMan的<每天5分钟玩转openstack>进行学习,有兴趣的小伙伴可以跟着我一起,相互探讨,互相进步,该系列博文基本不涉及原理 ...

  9. 虚拟化 - 每天5分钟玩转 OpenStack(2)

    2019独角兽企业重金招聘Python工程师标准>>> OpenStack是云操作系统,要学习OpenStack,首先需要掌握一些虚拟化和云计算的相关知识. 虚拟化 虚拟化是云计算的 ...

最新文章

  1. jquery对象PHP转换,jquery对象和DOM对象如何相互转换?
  2. 如何做好网络推广浅析新手对网站SEO内链该如何优化?
  3. Java基础:正则表达式
  4. java 找不到mysql驱动_java lib目录添加了mysql驱动包,仍然找不到class??
  5. python翻译成计算机是啥_基于Python的业英语翻译器实现
  6. LoadRunner
  7. 使用注意力机制建模 - 标准化日期格式
  8. 武书连2019中国大学排行榜公布:浙大排名超越北大
  9. Servlet 表单数据笔记
  10. 通过Field (反射)给私有字段赋值
  11. 《软件设计师》考点分布
  12. MSDN下载出现链接格式有误,如何解决
  13. VISIO科学图形包-亲测VISIO2013可用,应该适用其他高级版本
  14. 总结命令行05:Kafka
  15. PHP实现简单的网站访客统计
  16. 手机如何将PDF文件拆分?分享两种手机拆分文件方法
  17. 201871010134-周英杰《面向对象程序设计(java)》第一周学习总结
  18. UML软件建模之UML的构成
  19. NLP顶会近三年小众研究领域
  20. 开发需要的软件-Java

热门文章

  1. Ajax Toolkit 控件学习系列(5) ——CalendarExtender使用
  2. Hibernate配置数据源,数据库连接池
  3. 计算机软件硬件的会计处理,重庆会计从业考试《会计电算化》第二章第四节计算机软件...
  4. html5能实现网络游戏吗,kbengine + cocos2d_js实现html5网络游戏mmorpg(全套代码+资源)...
  5. js 运算符_JS的相等和严格相等运算符(== amp; ===)
  6. 2020年第十八届西电程序设计竞赛网络预选赛之Problem A 失败的在线考试
  7. android 自定义菜单开发,Android开发学习笔记:浅谈3大类菜单
  8. extjs tree下拉列表_使用ztree来代替Extjs的下拉树
  9. ajax绑定事件页面重复提交,ajax防止用户重复提交点击事件
  10. dataframe 删除首尾空格_你敲空格的速度很快,但女人的手不是用来敲空格的!...