"OpenStack 架构详解"
OpenStack 是一个社区,也是一个项目和一个开源软件,它提供了一个部署云的操作平台或工具集。其宗旨在于,帮助组织运行为虚拟计算或存储服务的云,为公有云、私有云,也为大云、小云提供可扩展的、灵活的云计算。OpenStack 旗下包含了一组由社区维护的开源项目,他们分别是 OpenStack Compute(Nova),OpenStack Object Storage(Swift),以及 OpenStack Image Service(Glance)。
OpenStack Compute(Nova)是云组织的控制器,它提供一个工具来部署云,包括运行实例、管理网络以及控制用户和其他项目对云的访问。它底层的开源项目名称是 Nova,其提供的软件能控制 IaaS 云计算平台,类似于 Amazon EC2 和 Rackspace Cloud Servers。实际上它定义的是,与运行在主机操作系统上潜在的虚拟化机制交互的驱动,暴露基于 Web API 的功能。
OpenStack Object Storage(Swift)是一个可扩展的对象存储系统。对象存储支持多种应用,比如复制和存档数据,图像或视频服务,存储次级静态数据,开发数据存储整合的新应用,存储容量难以估计的数据,为 Web 应用创建基于云的弹性存储。
OpenStack Image Service(Glance)是一个虚拟机镜像的存储、查询和检索系统,服务包括的 RESTful API 允许用户通过 HTTP 请求查询 VM 镜像元数据,以及检索实际的镜像。VM 镜像有四种配置方式:简单的文件系统,类似 OpenStack Object Storage 的对象存储系统,直接用 Amazon's Simple Storage Solution (S3) 存储,用带有 Object Store 的 S3 间接访问 S3。
OpenStack 的架构中还包括云服务提供商的概念架构, OpenStack 能帮我们建立自己的 IaaS,提供类似 Amazon Web Service 的服务给客户。为实现这一点,我们需要提供几个高级特性:允许应用拥有者注册云服务,查看运用和计费情况;允许 Developers/DevOps folks 创建和存储他们应用的自定义镜像;允许他们启动、监控和终止实例;允许 Cloud Operator 配置和操作基础架构。
OpenStack 的架构也包括展示层、逻辑层和资源层。展示层组件与用户交互,接受和呈现信息。逻辑层为云提供逻辑(intelligence )和控制功能。资源层提供实际的compute、network 和 storage 资源,以供应给我们的客户。
OpenStack Compute 的架构中,组件中的绝大多数可分为两种自定义编写的 Python 守护进程(custom written py),它们分别是 nova-api 和 nova-compute。nova-api 是 OpenStack Compute 的 API entry point,负责处理用户的请求,并将其分发给 nova-compute。nova-compute 是 OpenStack Compute 的核心组件,负责管理虚拟机的生命周期。
OpenStack 是一个开源的云计算平台,提供了一个部署云的操作平台或工具集。其架构中包括 OpenStack Compute、OpenStack Object Storage 和 OpenStack Image Service 等多个组件,每个组件都提供了不同类型的服务,以满足不同的需求。