一、什么是openstack
OpenStack是一个开源的云计算管理平台项目,是一系列软件开源项目的组合。由NASA(美国国家航空航天局)和Rackspace合作研发并发起,以Apache许可证(Apache软件基金会发布的一个自由软件许可证)授权的开源代码项目。
OpenStack为私有云和公有云提供可扩展的弹性的云计算服务。项目目标是提供实施简单、可大规模扩展、丰富、标准统一的云计算管理平台。
OpenStack是一个云操作系统,可控制整个数据中心内的大型计算,存储和网络资源池,所有资源均通过具有通用身份验证机制的API进行管理和配置。
还提供了一个仪表板,可让管理员进行控制,同时授权其用户通过Web界面配置资源。
除了标准的基础架构即服务功能之外,其他组件还提供编排,故障管理和服务管理以及其他服务,以确保用户应用程序的高可用性。
二、openstack各组件的关系与作用
官网提供的openstack最新组件架构图:
2.1 openstack各组件的作用
各组件作用:
服务 | 项目名称 | 方法描述 |
---|---|---|
Dashboard UI服务 |
Horizon | 提供了一个基于web的自服务门户,与OpenStack底层服务交互,诸如启动一个实例,分配IP地址以及配置访问控制 |
Compute 计算服务 |
Nova | 在OpenStack环境中计算实例的生命周期管理。按需响应包括生成、调度、回收虚拟机等操作。 |
Networking 网络服务 |
Neutron | 确保为其它OpenStack服务提供网络连接即服务 “Quantum”–>Neutron |
Identity Management 认证服务 |
Keystone | 为其他OpenStack服务提供认证和授权服务,为所有的OpenStack服务提供一个端点目录。 |
Object Storage 对象存储服务 |
Swift | 通过一个 RESTful,基于HTTP的应用程序接口存储和任意检索的非结构化数据对象。它拥有高容错机制,基于数据复制和可扩展架构。它的实现并像是一个文件服务器需要挂载目录。在此种方式下,它写入对象和文件到多个硬盘中,以确保数据是在集群内跨服务器的多份复制 |
Block Storage 块存储服务 |
Cinder | 为运行实例而提供的持久性块存储。它的可插拔驱动架构的功能有助于创建和管理块存储设备 |
Image Service 镜像服务 |
Glance | 存储和检索虚拟机磁盘镜像,OpenStack计算会在实例部署时使用此服务。 |
Telemetry 监控服务 |
Ceilometer | 为OpenStack云的计费、基准、扩展性以及统计等目的提供监测和计量。 |
Database Service 数据库服务 |
Trove | 提供管理数据库即服务配置关系和非关系数据库引擎节点的Trove相关,同时提供Trove在Horizon中的管理面板 |