云计算与 OpenStack

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

  • 物理机架构
    这一阶段,应用部署和运行在物理机上。 一套应用搭配一套服务器,通常系统的资源使用率都很低,达到20%的都是好的。

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

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

二.IT 系统的三类资源:计算(CPU/内存)、存储和网络是。

通过云计算平台,这三类资源变成了三个池子,当需要虚机的时候,只需要向平台提供虚机的规格。 平台会快速从三个资源池分配相应的资源,部署出这样一个满足规格的虚机。 虚机的使用者不再需要关心虚机运行在哪里,存储空间从哪里来,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 有 Heroku、Google App Engine、IBM BlueMix 等。

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

通俗理解:
1.如果你不想自己买服务器,而是在云服务提供商处购买虚拟主机,但是还需要自己装服务器软件,以及编写网站程序——这就是IaaS

2.如果你既不想要买服务器,也不想要装服务器软件,只需要自己开发网站程序——这就是PaaS

3.如果你再进一步,购买某些在线论坛或者在线网店的服务,不用自己开发网站程序,只需要使用它们开发好的程序,而且他们会负责程序的升级、维护、增加服务器等,而你只需要专心运营即可——这就是SaaS

三.openstack

作为 IaaS 层的云操作系统,OpenStack 为虚机提供并管理三大类资源:计算、网络和存储。

核心组件

  • Nova:管理 VM 的生命周期,是 OpenStack 中最核心的服务。

  • Neutron:为 OpenStack 提供网络连接服务,负责创建和管理L2、L3 网络,为 VM 提供虚拟网络和物理网络连接。

  • Glance:管理 VM 启动镜像,Nova 创建 VM 时将使用 Glance 提供的镜像。

  • Cinder:为 VM 提供块存储服务。Cinder 提供的每一个 Volume 在 VM 看来就是一块虚拟硬盘,一般用作数据盘。

  • Swift:提供对象存储服务。VM 可以通过 RESTful API 存放对象数据。作为可选的方案,Glance 可以将镜像存放在 Swift 中;Cinder 也可以将 Volume 备份到 Swift 中。

  • Keystone:为 OpenStack 的各种服务提供认证和权限管理服务。简单的说,OpenStack 上的每一个操作都必须通过 Keystone 的审核。

  • Ceilometer:提供 OpenStac k监控和计量服务,为报警、统计或计费提供数据。

  • Horizon:为 OpenStack 用户提供一个 Web 的自服务 Portal。

cinder和swift的区别
cinder是块存储,用来给虚拟机挂扩展硬盘,就是将cinder创建出来的卷,挂到虚拟机里。cinder是OpenStack到F版,将之前在Nova中的部分持久性块存储功能(Nova-Volume)分离了出来,独立为新的组件Cinder

swift是一个系统,可以上传和下载,里面一般存储的是不经常修改的内容,比如用于存储 VM 镜像、备份和归档以及较小的文件,例如照片和电子邮件消息。更倾向于系统的管理

cinder可以理解为个人电脑的移动硬盘,它可以随意格式化,随时存取。

swift可以理解为网盘,如果把一些经常用的内容,放到网盘中是非常不方便的。

Swift 架构是分布式的,可防止所有单点故障和进行水平扩展。
cinder存在单点故障还未解决

参考:《每天5分钟玩转OpenStack》
https://www.cnblogs.com/mithrandirw/p/8468985.html
https://blog.csdn.net/liukuan73/article/details/48547565

发布了106 篇原创文章 · 获赞 8 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/weixin_43667990/article/details/103501149