《OpenStack实战指南》—— 1.2 OpenStack的结构

1.2 OpenStack的结构

OpenStack包含了许多组件。有些组件会首先出现在孵化项目中,待成熟以后进入下一个OpenStack发行版的核心服务中。同时也有部分项目是为了更好地支持OpenStack社区和项目开发管理,不包含在发行版代码中。
OpenStack的核心服务包括:
Nova计算服务(Compute as a Service)
Neutron网络服务(Networking as a Service)
Swift对象存储服务(Object Storage as a Service)
Cinder块存储服务(Block Storage as a Service)
OpenStack的公共服务包括:
Glance镜像服务(Image as a Service)
Keystone认证服务(Identity as a Service)
Horizon仪表盘服务(Dashboard as a Service)
OpenStack的依赖库项目包括:Oslo基础设施代码共享依赖库(Common Lab as a Service)。
OpenStack的孵化项目包括:
Ceilometer计费&监控服务
Heat编排服务
Ironic物理设备服务(Bare Metal as a Service)
Marconi消息队列服务(Message Queue as a Service)
Savanna大数据处理(MapReduce as a Service)
Trove数据库服务(DataBase as a Service)
OpenStack的其他项目涉及:
Infrastructure OpenStack社区建设项目
Documentation OpenStack文档管理项目
TripleO OpenStack部署项目
DevStack OpenStack开发者项目
QA OpenStack质量管理项目
Release Cycle Management版本控制项目
这些OpenStack项目有一些共同点,比如:
OpenStack项目组件由多个子组件组成,子组件有各自的模块。
每个项目都会选举PTL(Project Technical Leader)。
每个项目都有单独的开发人员和设计团队。
每个项目都有具有优良设计的公共API,API基于RESTful,同时支持JSON和XML。
每个项目都有单独的数据库和隔离的持久层。
每个项目都可以单独部署,对外提供服务,也可以在一起协同完成某项工作。
每个项目都有各自的后端驱动,所有的驱动都可以以plugin方式加载。
每个项目都有各自的client项目,如Nova有nova-client作为其命令行调用RESTful的实现。
除了以上项目,OpenStack的其他项目或多或少也会需要Database(数据库)、Message Queue(消息队列)进行数据持久化、通信。

时间: 2024-11-20 17:09:58

《OpenStack实战指南》—— 1.2 OpenStack的结构的相关文章

《OpenStack实战指南》—— 1.9 OpenStack非核心项目介绍

1.9 OpenStack非核心项目介绍 1.9.1 Ironic项目介绍 Ironic为OpenStack的孵化项目之一,如果说OpenStack Nova管理的是虚拟机的生命周期,那么Ironic就是为了管理物理机的生命周期.它提供了一系列管理物理机的API接口,可以对"裸"操作系统的物理机进行管理,从物理机上架安装操作系统到物理机下架维修.我们可以像管理虚拟机一样地管理物理机,创建一个nova-compute物理节点不再需要人工部署,只需告诉Ironic,然后自动化地从镜像模板中

《OpenStack实战指南》—— 2.1 在Ubuntu上使用二进制包安装

2.1 在Ubuntu上使用二进制包安装 笔者写本书的时候,OpenStack已经发展到Havana版本,几大主流的Linux发行版本都会将OpenStack的源代码做成各自平台的二进制安装包,以供用户使用.随着OpenStack使用的人越来越多,发行版本对Linux的支持力度也越来越大,就目前来看,Ubuntu(Debian).RedHat.OpenSUSE都有相应的包和开发定制的安装程序.当然,各个Linux平台上的包制作发布的时间各有快慢,同时支持的版本更新也有快有慢.Ubuntu是更新最

《OpenStack实战指南》—— 第2章 Chapter 2

第2章 Chapter 2 OpenStack的安装 2.1 在Ubuntu上使用二进制包安装 笔者写本书的时候,OpenStack已经发展到Havana版本,几大主流的Linux发行版本都会将OpenStack的源代码做成各自平台的二进制安装包,以供用户使用.随着OpenStack使用的人越来越多,发行版本对Linux的支持力度也越来越大,就目前来看,Ubuntu(Debian).RedHat.OpenSUSE都有相应的包和开发定制的安装程序.当然,各个Linux平台上的包制作发布的时间各有快

《OpenStack实战指南》—— 导读

前 言 在2007年前后,许多网站站长发现当时一部分主流机托管商开始逐步使用虚拟化技术提供云主机的托管服务,而当时的虚拟化程度还停留在半虚拟化或类似OpenVZ这样的伪虚拟化的水平.即便如此,一台服务器已经可以承载数十台甚至上百台虚拟主机的负荷,而且安全性更好,价格也更低.通过更加有效的隔离和封装,虚拟主机的创建和恢复也变得更加迅速和可靠.与此同时,像Eucalyptus和OpenNebula这样的云计算管理工具也开始逐步进入人们的视野. 次年,笔者机缘巧合地加入了EMC(也就是VMware的母

《OpenStack实战指南》—— 第1章 OpenStack简介

第1章 OpenStack简介 1.1 OpenStack概述 OpenStack是当今最流行的开源云平台管理项目,可以控制整个数据中心计算.存储和网络资源的大型资源池.从OpenStack的名字可以看出它大致的含义,Open顾名思义为开源软件,开放式的设计理念.开放式的开发模式.开放式的社区,Stack意为堆,可以理解为云计算是靠每一块小瓦砾堆砌而成.OpenStack并不是单独的一个软件,它由多个组件一起协作完成某些具体工作.OpenStack本身就是一个巨大的开源软件集合,集各种开源软件之

《OpenStack实战指南》—— 1.8 OpenStack的开发资源

1.8 OpenStack的开发资源 1.8.1 OpenStack社区 OpenStack是由开发商.企业.服务供应商.研究人员及用户共同组成的全球性的社区.关注OpenStack最好的方式就是访问OpenStack社区:www.openstack.org,通过社区可以第一时间了解OpenStack的动态.希望下面给出的这些链接可以帮助读者进一步了解OpenStack.OpenStack峰会:https://wiki.openstack.org/wiki/SummitOpenStack用户成员

《OpenStack实战指南》—— 2.2.3 网络节点的安装

2.2.3 网络节点的安装 网络节点需要安装Neutron和openvswitch-plugins.和计算节点一样,也需要手动安装Open vSwtich的包.在网络节点中,安装Neutron和openvswitch-plugins的方式和控制节点.计算节点的安装类似,唯一的区别是需要把源代码中关于dhcp-agent.l3-agent和metadata-agent的配置文件复制到/etc/neutron目录中,其余的这里不再重复写出.这里给出启动三个服务的命令: $ tmux -c "pyth

《OpenStack实战指南》—— 1.7 OpenStack体系结构

1.7 OpenStack体系结构 1.7.1 OpenStack设计原则 在介绍OpenStack体系结构之前,需要先了解一下OpenStack的设计原则,如下:可扩展性和伸缩性是设计OpenStack的主要目标.任何影响可扩展性和伸缩性的特性必须是可选的.一切应该是异步的(如果做不到异步,可参考第二条).所有必需的组件必须可水平扩展.始终使用无共享架构或者分片架构(如果不能实现,可参考第二条).一切都是分布式的(尤其应该将业务逻辑与业务状态放在一起).接收最终一致性,并在适当条件下使用.测试

《OpenStack实战指南》—— 2.2 在Ubuntu上使用源代码编译安装

2.2 在Ubuntu上使用源代码编译安装 对于各个版本的Linux来说,都会制作OpenStack相应的软件包.虽然在2.1节中介绍了二进制包安装,但是在这里笔者还是会讲一下源代码安装OpenStack基本组件的过程,因为从学习的角度来说,通过源代码安装OpenStack各个组件的过程,可以使读者对OpenStack的框架和各个组件的作用有一个比使用二进制安装更全面的了解.另一个好处是,二进制包的发布会滞后于源代码,如果想在第一时间尝试一些最新的功能或修复Bug后的版本,源代码安装是个不错的选