大纲

    • OpenStack是什么
    • OpenStack的核心组件
    • OpenStack的优势
    • OpenStack的架构
    • 关于组件

OpenStack是什么

  • 是一个开源的云计算管理项目,而且它并不是代指一个特定的软件,而是一系列软件开源项目的组合,它的主要任务是给用户提供IaaS服务(基础架构即服务),其中提供了IT底层的基础设施服务,包含了处理能力,储存空间和网络资源。由NASA和Rackspace共同发起,是一个以apache许可证授权的开源代码项目,由Python编写,目前世界范围内拥有130多家企业和上千名开发者共同开发和完善,也是目前云平台管理的首选方案,

  • 简单来说OpenStack是一个简化管理云平台的开源软件组,由多个组件组成并协调完成一系列工作,是一个为了能更好的创建和管理建立在服务器之上的逻辑实例(即“虚拟机”)的软件集合。

OpenStack的核心组件

OpenStack主要由以下9个组件组成

  • 项目名称:Nova

负责提供compute(计算服务)
功能:Nova是最核心的组件之一,是一套虚拟化管理控制程序,可供用户管理网络,存储和实例的生命周期,创建和释放实例,屏蔽虚拟机监视器,且多个组件都为nova提供服务,组件本身支持多种虚拟化技术,

  • 项目名称:Neutron

负责提供Network(网络服务)
功能:负责管理虚拟化后的网络架构,为实例提供根据需求自定义化的网络拓扑结构,可以由云平台的最终用户自行定义,且从逻辑上隔离了每个用户之间的的实例网络。

  • 项目名称:Keystone

负责提供Identity(身份认证)
功能:对最终用户进行识别,鉴权和授权,当其他组件继续对请求继续预处理时,会事先询问keystone,该用户是否拥有使用该资源的权限,且支持多认证机制

  • 项目名称:“Horizon”

负责提供Dashboard(控制面板服务)
功能:提供能通过web访问的图形化管理界面,可以直接使用网页访问OpenStack底层访问进行交互,大大降低了管理难度,

  • 项目名称“Glance”

负责提供Image Service(镜像服务)
功能:可以为最终用户提供镜像的下载和创建服务,在创建虚拟机时可以直接调用镜像创建,同时也为弹性伸缩提供了镜像,支持多个格式的镜像

  • 项目名称“Cinder”

负责提供Block Storage(块存储服务)
功能:为实例提供储存空间,且支持扩展,按需计费,支持多种后端储存

  • 项目名称“Swift”

负责提供Ojbect Storage (对象存储服务)
功能:为实例提供具有弹性存储,通过弹性存储来帮助群集实例消除单点故障

  • 项目名称“Ceilometer”

负责提供Telemetry(计量服务)
功能:负责对最终用户使用的资源继续监控,ceilometer几乎可以收集OpenStack中的所有,按量计费和管理,为平台运营商提供便于记录收费依据的便捷途径。

OpenStack的优势

  • 完全开源的平台,所有组件都使用API接口提供服务,方便在源架构上扩展第三方程序,
  • 兼容性很强,便于客户迁移部署
  • 模块化,支持横向扩展
  • 众多大型企业都是其开发者,后续开发的功能回更加完善

OpenStack的架构

大致结构如下图所示

上图中的组件大致可以分为:
全局组件:向所有组件提供服务
核心组件:是创建管理服务实例和客户的核心组件
外部组件:一般多为扩展功能组件

关于组件

  • 组件中还包含了众多的小组件,小组件之间使用mq承载和传递数据
  • 组件之间使用暴露API接口的方式实现相互协同工作,也是依托这种方式所以在OpenStack中加入新的组件会非常方便
  • api接口的主要作用是负责发送和监听消息,其本身并不具有处理请求的能力,如果请求数过多,会将请求按优先级形成队列,逐个处理

本文地址:https://blog.csdn.net/TheRichCat/article/details/110925933